
SOFTWARE FOR TIME SERIES DATA HANDLING
Throughout my time as a Data Scientist, the question of my clients or students always arose about which program is the best to model time series.
So many programs appeared on the market before the data science boom. Companies grew by creating solutions that were easy to use. But science advanced much faster than employees were training, so programs like R were a response to the scientific need that is now more available to society not only because of having a large community of developers of packages and libraries that simplify programming and use the power of theory for the benefit of analysis. Also, the cost of the specialized programs was and still is high compared to the free R.
So R, from my experience and analysis, is the program that kicked the board and now has no real competition.
But someone may stand up for their favourite program or mention the volume of users for example of Python, Stata or EViews, but this is irrelevant. Here what is important is everything you can do and the restrictions you can face without much problem.
If anyone is interested, I can help you with your learning journey or implementation of analysis in your company.
Now, I introduce you to a review of some software that I found good for time series analysis, ending with the review of R. All the software mentioned here I used, which is why I loved writing this article.
Programs that are not reviewed such as Gretl, SPSS, SAS, Excel -- better avoid them.
Honourable mention: software that may be helpful but not worthy of being in this review like JDemetra, GMDH Shell, NCSS 2021, TSW, and WEKA.
EViews

- Integrated support for handling dates and time-series data (both regular and irregular).
- Support for common regular frequency data (Annual, Semi-annual, Quarterly, Monthly, Bimonthly, Fortnight, Ten-day, Weekly, Daily - 5 day week, Daily - 7 day week).
- Support for high-frequency (intraday) data, allowing for hours, minutes, and seconds frequencies. In addition, there are a number of less commonly encountered regular frequencies, including Multi-year, Bimonthly, Fortnight, Ten-Day, and Daily with an arbitrary range of days of the week.
- Specialized time series functions and operators: lags, differences, log-differences, moving averages, etc.
- Frequency conversion: various high-to-low and low-to-high methods.
- Exponential smoothing: single, double, Holt-Winters, and ETS smoothing.
- Built-in tools for whitening regression.
- Hodrick-Prescott filtering.
- Band-pass (frequency) filtering: Baxter-King, Christiano-Fitzgerald fixed length and full sample asymmetric filters.
- Seasonal adjustment: Census X-13, STL Decomposition, MoveReg, X-12-ARIMA, Tramo/Seats, moving average.
- Interpolation to fill in missing values within a series: Linear, Log-Linear, Catmull-Rom Spline, Cardinal Spline.
STAMP (Structural Time Series Analyser)

- Based on structural time series models. These models use advanced techniques, such as Kalman filtering.
- Appreciation of the concepts of trend, seasonal and irregular. The hard work is done by the program, leaving the user free to concentrate on formulating models, then using them to make forecasts.
- Modeller and Predictor (STAMP) is a package designed for modelling, forecasting and seasonally adjusting time series.
- Especially in seasonal adjustment of data, STAMP represents a well-formalised alternative to other widespread, but ad hoc methods.
- It has been developed in the same Windows environment as PcGive and PcFinl (Doornik and Hendry, 1994a, 1994b).
- The program is driven by menus and dialogue boxes and a mouse can be utilised.
- Improvements have been introduced in the statistical methods used (e.g. multivariate models are included), the number of descriptive and diagnostic statistics, graphics, data handling and environment.
- Structural time series modelling.
- Data entry and handling: several formats of data are directly readable (PcGive, Excel, Lotus and ASCII) and a data editor is available, so that data can be introduced directly from the keyboard.
- ASCII files can contain different time series ordered by series or by observation, and offending characters are automatically converted into missing observations. Data from different files and formats can be mixed in a common database.
- Basic functions are available for filtering, moment smoothing and simulation smoothing.
- Likelihood evaluation, forecasting and signal extraction.
- SsfPack can be easily used for implementing, fitting, and analysing Gaussian models.
Stata

- Data management tools and time-series operators. These commands help you prepare your data for further analysis.
- Univariate time series. Estimators or filters designed for univariate time series, plus pre-estimation and post-estimation commands conceptually related to one or more univariate time-series estimators.
- Multivariate time series. Estimators designed for use with multivariate time series, plus pre-estimation and post-estimation commands conceptually related to one or more multivariate time-series estimators.
- Forecasting models. These commands work as a group to provide the tools you need to create models by combining estimation results, identities, and other objects and to solve those models to obtain forecasts.
- ARIMA, ARMAX, and other dynamic regression models (ARFIMA).
- Autoregressive conditional heteroskedasticity (ARCH) family of estimators.
- Markov-switching regression models.
- Regression with Newey-West standard errors.
- Prais-Winsten and Cochrane-Orcutt regression.
- Unobserved-components model.
- Threshold regression.
- Time-series smoothers and filters: Baxter-King, Butterworth, Christiano-Fitzgerald, Hodrick-Prescott, Moving-average filter.
- Double-exponential smoothing, Single-exponential smoothing.
- Holt-Winters nonseasonal and seasonal smoothing.
- Nonlinear filter.
Multivariate time series estimators:
- Dynamic-factor models
- Constant conditional correlation multivariate GARCH models
- Dynamic conditional correlation multivariate GARCH models
- Diagonal vech multivariate GARCH models
- Varying conditional correlation multivariate GARCH models
- State-space models
- Vector autoregressive (VAR) models
- Structural vector autoregressive (SVAR) models
- Fit a simple VAR and graph IRFs or FEVDs
- Vector error-correction models (VECM)
JMulTi

- Initial Analysis: Various tools for creating, transforming, editing time series.
- Unit Root tests: ADF, HEGY (quarterly, monthly), Schmidt-Phillips, KPSS, Unit Root test with a structural break.
- Cointegration tests: Johansen Cointegration test with response surfaces, Saikkonen & Lutkepohl test, kernel density estimation, spectral density plots, cross plots, autocorrelation analysis.
VAR modelling (can be used for univariate modelling as well):
- VAR modelling (with arbitrary deterministic/exogenous variables), subset model estimation, output in matrix form, automatic model selection (various strategies based on information criteria).
- Residual analysis with tests for nonnormality, autocorrelation, ARCH, spectrum, kernel density, autocorrelation plots, crosscorrelation.
- GARCH analysis for residuals.
- Impulse Responses with bootstrapped confidence intervals, also for accumulated responses, orthogonal and forecast error versions.
- Forecast Error Variance Decomposition, forecasting (also levels from 1st differences), asymptotic confidence intervals for levels.
- Causality tests, stability analysis: bootstrapped Chow tests, recursive parameters, recursive residuals, CUSUM test.
SVAR modelling:
- AB model, Blanchard-Quah Model with bootstrapped standard errors.
- SVAR Forecast Error Variance Decomposition.
- SVAR Impulse Responses with bootstrapped confidence intervals.
VECM modelling (with arbitrary deterministic/exogenous variables):
- Restrictions on cointegration space, Wald test for beta restrictions.
- Johansen, Two-Stage, S2S estimation procedures. EC term can be fully or partly predetermined.
- Subset model estimation, output in matrix form, automatic model selection.
- Residual analysis with tests for nonnormality, autocorrelation, ARCH.
- Impulse Responses with bootstrapped confidence intervals.
- Forecast Error Variance Decomposition. Forecasting with asymptotic confidence intervals.
- Causality tests, stability analysis: bootstrapped Chow tests, recursive parameters, recursive eigenvalues.
SVEC modelling:
- SVEC modelling with bootstrapped standard errors.
- SVEC Forecast Error Variance Decomposition.
- SVEC Impulse Responses with bootstrapped confidence intervals.
GARCH Analysis:
- Univariate ARCH, GARCH, T-GARCH estimation with different error distributions.
- Residual analysis for ARCH residuals with the robustified test for no remaining ARCH (Lundbergh, Terasvirta).
- Plotting of variance process, kernel density for residuals.
- Multivariate GARCH(1,1) estimation.
Smooth Transition Regression (STR):
- STR model specification with exogenous/deterministic variables, linearity tests.
- STR estimation, various specification tests for no remaining nonlinearity, nonnormality, no remaining serial dependency, parameter constancy.
Nonparametric Analysis:
- Lag selection for univariate models based on linear and nonlinear selection criteria.
- Nonlinear estimation with configurable 3D plots, residual analysis.
- Model selection for volatility process estimation.
ARIMA Analysis (with fixed regressors, univariate):
- Lag selection for AR and MA parameters with Hannan-Rissanen procedure.
- Estimation with fixed regressors, residual analysis.
- ARCH modelling of residuals, forecasting with fixed regressors.
Python

The Python program and its Pandas library are insufficient for a complete analysis of time series. Perhaps the fact of handling the visualization and the Box & Jenkins methodology very well has made this program very popular among Java users.
However, there are many more processes that follow the time series, which is perhaps a limitation for the deep analysis of the problems in data science dedicated to the analysis of time series.
It turns out that at the moment I write this article, Python's community and functionalities for time series are easy to use, but it does not cover the necessary knowledge of time series completely. It is my humble opinion that the treatment of the time series will need more work from the community.
If anyone knows more, I would like you to put in the comments a review of the algorithms that can help:
- Break Up Dates And Times Into Multiple Features
- Calculate Difference Between Dates And Times
- Convert Pandas Columns Time Zone
- Convert Strings To Dates
- Encode Days Of The Week
- Handling Missing Values In Time Series
- Handling Time Zones
- Lag A Time Feature
- Rolling Time Window
- Select Date And Time Ranges
R -- The Winner

There are many R packages for working with Time Series data. For instance, here is how timetk compares to the "tidy" time series R packages for data visualization, wrangling, and feature engineering (those that leverage data frames or tibbles).

And of course, the resources of R packages for Time Series are so extensive that I encourage you to find more about Time Series modelling with R in the report of CRAN Task View: Time Series Analysis, maintained by Rob J. Hyndman: https://cran.r-project.org/web/views/TimeSeries.html
So, for this reason, I always prefer to work in R.
RESUMEN: TIPOS DE MUESTREO
Un resumen de los tipos de muestreo probabilistico y no probabilistico, sus caracteristicas, ventajas e inconvenientes.
Ajuste estacional: Analisis de Series de Temporales con X-13ARIMA-SEATS
Uno de los dilemas en el siglo pasado fue el uso de una adecuada metodologia que cumpla tres objetivos; precision en el desempeno de la prediccion fuera de la muestra, facilidad en el uso de la tecnica algoritmica, y replicabilidad.

¿Te gustó este contenido?
Obtén certificados verificables en Python, Data Science y Machine Learning.
Ver Certificaciones Disponibles →
