Powered by OpenAIRE graph
Found an issue? Give us feedback
ZENODOarrow_drop_down
ZENODO
Software . 2026
License: CC BY
Data sources: Datacite
ZENODO
Software . 2026
License: CC BY
Data sources: Datacite
versions View all 2 versions
addClaim

IsadoreNabi/SignalY: SignalY package

Authors: José Mauricio Gómez Julián;

IsadoreNabi/SignalY: SignalY package

Abstract

SignalY Signal Extraction from Panel Data via Bayesian Sparse Regression and Spectral Decomposition SignalY is a comprehensive R toolkit for extracting latent signals from panel data through multivariate time series analysis. It addresses three fundamental problems in applied econometrics and signal processing: which variables matter (column selection), what is the underlying structure (series decomposition), and what is the persistence regime (unit root characterization). Performance Benchmarks (Recovery Tests) | Task | Method | Recovery Metric | |------|--------|----------------| | Factor structure (3 latent factors) | PCA / DFM | r > 0.95, exact factor count | | Sparse variable selection (5 of 50) | Horseshoe | F1 > 0.85, Precision > 0.90 | | Logarithmic trend recovery | EMD | r > 0.95 with true trend | | Multi-scale cycle extraction | Wavelet (D3+D4) | r > 0.70 with true cycle | | Stochastic trend + AR(2) cycle | HP-GC Bayesian | trend r > 0.90, cycle r > 0.50 | | Stationarity classification | Unit Root Battery | 4/4 correct on synthetic data | Key Features | Feature | Description | |---------|-------------| | Horseshoe Regression | Bayesian sparse selection via regularized Horseshoe priors (Piironen & Vehtari, 2017) with shrinkage profile diagnostics | | PCA with Bootstrap Significance | Principal components with block bootstrap confidence intervals and entropy-based topology analysis | | Dynamic Factor Models | Bai & Ng (2002) information criteria for automatic factor selection with VAR dynamics | | Wavelet Decomposition | MODWT via Daubechies wavelets with multi-resolution variance analysis (Percival & Walden, 2000) | | Empirical Mode Decomposition | Data-adaptive IMF extraction for non-stationary and non-linear signals (Huang et al., 1998) | | HP-GC Bayesian Filter | Grant & Chan (2017) unobserved-components Hodrick-Prescott with MCMC-estimated smoothing | | Unit Root Battery | ADF, Phillips-Perron, KPSS, and ERS tests with automated synthesis and persistence classification | | Integrated Orchestrator | signal_analysis() runs all methods in a single call with automated interpretation | Architecture SignalY is organized around three analytical layers that can be used independently or chained together: ┌─────────────────────────────────────────────────────────────────┐ │ signal_analysis() │ │ Master orchestrator with print/summary/plot │ ├──────────────┬──────────────────────┬───────────────────────────┤ │ COLUMN │ SERIES │ PERSISTENCE │ │ SELECTION │ DECOMPOSITION │ ANALYSIS │ │ │ │ │ │ fit_horseshoe│ filter_wavelet │ test_unit_root │ │ pca_bootstrap│ filter_emd │ ADF, PP, KPSS, ERS │ │ estimate_dfm │ filter_hpgc │ Automated synthesis │ │ │ filter_all │ │ ├──────────────┴──────────────────────┴───────────────────────────┤ │ UTILITIES │ │ apply_to_columns · compute_entropy · iplot · interpolate_na │ └─────────────────────────────────────────────────────────────────┘ Typical Workflow Scenarios Scenario A — Column Selection Only: You have a high-dimensional predictor matrix and need to identify which variables are structurally relevant. Use fit_horseshoe() for sparse Bayesian selection, pca_bootstrap() for factor structure, or estimate_dfm() for dynamic factors. Scenario B — Series Decomposition Only: You have a univariate time series and need to extract its trend, cycle, and residual components. Use filter_wavelet(), filter_emd(), or filter_hpgc(). Scenario C — Unit Root Analysis Only: You need to characterize the persistence properties of a series. Use test_unit_root() for a comprehensive battery of tests with automated synthesis. Scenario D — Mixed Workflow: Select relevant variables → construct a composite signal → decompose it → test stationarity of extracted components. Use signal_analysis() to orchestrate the full pipeline, or chain the individual functions. Quick Example library(SignalY) # Prepare data data <- data.frame(Y = as.vector(Y), X) # Run full analysis pipeline result <- signal_analysis( data = data, y_formula = "Y", methods = c("wavelet", "emd", "pca", "dfm", "unitroot"), verbose = TRUE ) # Inspect results print(result) summary(result) plot(result) Citation @software{SignalY, title = {SignalY: Signal Extraction from Panel Data via Bayesian Sparse Regression and Spectral Decomposition}, author = {Gómez Julián, José Mauricio}, year = {2026}, url = {https://github.com/IsadoreNabi/SignalY}, version = {1.1.1} } License MIT License. See LICENSE for details. See more in the Wiki page.

  • BIP!
    Impact byBIP!
    selected citations
    These citations are derived from selected sources.
    This is an alternative to the "Influence" indicator, which also reflects the overall/total impact of an article in the research community at large, based on the underlying citation network (diachronically).
    0
    popularity
    This indicator reflects the "current" impact/attention (the "hype") of an article in the research community at large, based on the underlying citation network.
    Average
    influence
    This indicator reflects the overall/total impact of an article in the research community at large, based on the underlying citation network (diachronically).
    Average
    impulse
    This indicator reflects the initial momentum of an article directly after its publication, based on the underlying citation network.
    Average
Powered by OpenAIRE graph
Found an issue? Give us feedback
selected citations
These citations are derived from selected sources.
This is an alternative to the "Influence" indicator, which also reflects the overall/total impact of an article in the research community at large, based on the underlying citation network (diachronically).
BIP!Citations provided by BIP!
popularity
This indicator reflects the "current" impact/attention (the "hype") of an article in the research community at large, based on the underlying citation network.
BIP!Popularity provided by BIP!
influence
This indicator reflects the overall/total impact of an article in the research community at large, based on the underlying citation network (diachronically).
BIP!Influence provided by BIP!
impulse
This indicator reflects the initial momentum of an article directly after its publication, based on the underlying citation network.
BIP!Impulse provided by BIP!
0
Average
Average
Average