Skip to content

seasight: Reproducible Diagnostics and Model Selection for Seasonal Adjustment #786

Description

@p-wegmueller

Submitting Author Name: Philipp Wegmüller
Submitting Author Github Handle: @p-wegmueller
Repository: https://github.com/p-wegmueller/seasight
Version submitted: 0.1.0
Submission type: Stats
Badge grade: silver
Editor: TBD
Reviewers: TBD

Archive: TBD
Version accepted: TBD
Language: en


  • Paste the full DESCRIPTION file inside a code block below:
Package: seasight
Type: Package
Title: Tools for Seasonal Adjustment Diagnostics and Reporting
Version: 0.1.0
Depends:
    R (>= 4.1.0)
Authors@R: 
    person("Philipp", "Wegmüller", 
           email = "philipp.wegmueller@seco.admin.ch", 
           role = c("aut", "cre"))
Description: Provides tools for automated diagnostics, model selection and
    reporting for seasonal adjustment based on X-13ARIMA-SEATS. Wraps the
    'seasonal' package to run and compare alternative specifications, extract
    quality indicators and residual diagnostics, and generate reproducible
    R Markdown reports for official statistics and other production workflows.
License: MIT + file LICENSE
Encoding: UTF-8
Roxygen: list(markdown = TRUE, roclets = c("namespace", "rd", "srr::srr_stats_roclet"))
RoxygenNote: 7.3.3
Imports:
    seasonal,
    tsbox,
    tibble,
    dplyr,
    purrr,
    stringr,
    htmltools,
    glue
Suggests:
    callr,
    testthat (>= 3.0.0),
    knitr,
    rmarkdown,
    units
VignetteBuilder: knitr
Config/testthat/edition: 3
URL: https://github.com/p-wegmueller/seasight,
    https://p-wegmueller.github.io/seasight/
BugReports: https://github.com/p-wegmueller/seasight/issues

Scope

  • Please indicate which of our statistical package categories this package falls under. (Please check one or more appropriate boxes below):

    Statistical Packages

    • Bayesian and Monte Carlo Routines
    • Dimensionality Reduction, Clustering, and Unsupervised Learning
    • Machine Learning
    • Regression and Supervised Learning
    • Exploratory Data Analysis (EDA) and Summary Statistics
    • Spatial Analyses
    • Time Series Analyses
    • Probability Distributions

Pre-submission Inquiry

  • A pre-submission inquiry has been approved in issue776

General Information

  • Who is the target audience and what are scientific applications of this package?

The target audience consists of applied time-series analysts, official statisticians, central-bank and government economists, and researchers who use seasonal adjustment in regular statistical production or empirical analysis. The package is especially relevant for users of X-13ARIMA-SEATS through R who need to compare alternative seasonal-adjustment specifications transparently and reproducibly.

Scientific applications include seasonal adjustment of economic and social time series; comparison of candidate X-13ARIMA-SEATS specifications; evaluation of trading-day, Easter, outlier, ARIMA, SEATS, and X-11 choices; assessment of residual seasonality and model stability; comparison with an incumbent production model; and generation of reproducible diagnostic reports. The package is intended to support transparent methodological decisions in statistical production and applied time-series research rather than to replace expert judgment.

  • Paste your responses to our General Standard G1.1 here, describing whether your software is:

    • The first implementation of a novel algorithm; or
    • The first implementation within R of an algorithm which has previously been implemented in other languages or contexts; or
    • An improvement on other implementations of similar algorithms in R.

    Please include hyperlinked references to all other relevant software.

seasight is not the first implementation of a novel seasonal-adjustment algorithm. Instead, it is an improvement and workflow extension around existing seasonal-adjustment methods, especially X-13ARIMA-SEATS, accessed in R through the seasonal package. The package also relates to the broader ecosystem around [x13binary](https://cran.r-project.org/package=x13binary), [RJDemetra](https://cran.r-project.org/package=RJDemetra), and JDemetra+.

The contribution of seasight is to make seasonal-adjustment model choice more transparent, reproducible, and reviewer-friendly. It combines candidate model generation, diagnostic checks, ranking, comparison against an incumbent model, and HTML reporting in one workflow. This is intended to help users document why a particular seasonal-adjustment specification was selected, how robust that choice is relative to alternatives, and how much it differs from an existing baseline. The package therefore adds decision support and reproducible reporting around established seasonal-adjustment engines rather than introducing a competing adjustment method.

Yes. The package operates on user-supplied time-series data and does not collect, transmit, or store personal data. It does not interact with external services, does not require user credentials, and does not include telemetry. The package is methodologically oriented toward seasonal adjustment and time-series diagnostics. Any ethical or privacy considerations related to the input data remain the responsibility of the user and their institution; the package itself does not include human-subject data or personally identifiable information.

Badging

Silver.

The package aims for silver because it is intended to be generally useful beyond a single applied case. Although motivated by practical seasonal-adjustment work in official statistics, the functions are designed for generic monthly or quarterly time-series inputs and can be applied to a wide range of economic, social, or administrative time series.

The package supports a reproducible workflow for candidate seasonal-adjustment specification search, diagnostic comparison, ranking, baseline comparison, and reporting. It also provides a structured interface around established X-13ARIMA-SEATS workflows, helping users document and review model-selection decisions in a way that is transparent and reproducible.

The package further aims to provide strong documentation and testing for a production-relevant statistical workflow. It includes user-facing documentation, examples, vignettes/reports, automated tests, continuous integration workflows, code coverage reporting, and rOpenSci statistical standards documentation via srr. The design separates model search, diagnostics, ranking, comparison, and reporting into coherent components so that reviewers and users can inspect and extend the workflow.

Technical checks

Confirm each of the following by checking the box.

autotest::autotest_package(".", test = TRUE) was run locally. It returned warnings/diagnostics, but all reported rows had test = TRUE; no failing autotests were reported.

srr::srr_stats_pre_submit(path = ".", quiet = FALSE) confirmed that all applicable standards were documented: 153 complied with and 49 marked as not applicable.

  • The pkgcheck() function confirms this package may be submitted - alternatively, please explain reasons for any checks which your package is unable to pass.

pkgcheck::pkgcheck(path = ".") was run locally during pre-submission preparation. The local check reported that continuous integration was not detected, although the repository includes GitHub Actions workflow files under .github/workflows/. This may be a local detection issue and can be checked by the rOpenSci bot. Local R CMD check was also run and passed without errors or warnings. Remaining local notes concerned a missing tidy executable for HTML manual validation on the local machine and a license-related note inherited through the package’s use of the X-13ARIMA-SEATS ecosystem via seasonal/x13binary.

This package:

Use of Generative AI

  • Generative AI tools were used to produce some of the material in this submission.

If so, please describe usage, and include links to any relevant aspects of your repository. See [our blog post](https://ropensci.org/blog/2026/02/26/ropensci-ai-policy/) for background. (Explicit advice is not yet included in our Dev Guide; we are hoping to update very soon, and ask your cooperation and transparency in the meantime.)

Generative AI tools were used as development assistants during the final pre-submission phase. In particular, ChatGPT and Codex were used to help inspect package readiness, identify possible documentation and packaging issues, draft parts of the submission text, and suggest small repository-quality improvements. All changes were reviewed by the submitting author and validated through the package’s tests and R CMD check workflow. Local Codex/agent configuration files were removed from Git tracking and are not part of the submitted repository.

Publication options

  • Do you intend for this package to go on CRAN?
  • Do you intend for this package to go on Bioconductor?

Code of conduct

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions