Stationarity test
stationaryTests
Matlab functions to test the stationarity of a random process
Summary
The N-th order stationarity [1] of a random process is assessed using two tests. In the present submission, only the first and second-order stationarities are described. A random process is stationary at the first order if its mean does not change (significantly) with the time. Similarly, a random process is stationary at the second-order if its variance or standard deviation does not change (significantly) with the time.
The LiveScript example considers the case of turbulent velocity time histories. Their stationarity is assessed using two different approaches:
- A non-parametric test [2,3], which detects trends and classify the time as non-stationary if the trend is not negligible.
- A parametric test based on moving-window functions that compare the instantaneous mean or standard deviation to the one obtained without any detrending.
To run the examples, you will need some additional functions:
- randomProcess.m, available on https://se.mathworks.com/matlabcentral/fileexchange/76854-one-point-random-process-generation
- getSamplingPara.m, available on https://se.mathworks.com/matlabcentral/fileexchange/76854-one-point-random-process-generation
- binAveraging.m, available on https://se.mathworks.com/matlabcentral/fileexchange/73584-averaging-noisy-data-into-bins
Content
The present submission contains:
- The function RA_test.m, which implements the reverse-arrangement test by Bendat and piersol[2] but also Siegel et al [3]
- The function MW_test.m, which implement a parametric stationarity test relying on moving windows functions.
- A LiveScript example Documentation.mlx
References
[1] Priestley, M. B. (1981). Spectral Analysis and Time Series. Academic Press. ISBN 0-12-564922-3.
[2] Bendat and piersol, Random data, 2010, page 99
[3] Siegel, Sidney, and N. J. Castellan. "Non-para-metric statistics for the behavioral sciences." (1988).
Cite As
E. Cheynet. ECheynet/StationaryTests: Sationarity Tests for Random Process. Zenodo, 2020, doi:10.5281/ZENODO.3891111.
Cheynet, Etienne, et al. “Flow Distortion Recorded by Sonic Anemometers on a Long-Span Bridge: Towards a Better Modelling of the Dynamic Wind Load in Full-Scale.” Journal of Sound and Vibration, vol. 450, Elsevier BV, June 2019, pp. 214–30, doi:10.1016/j.jsv.2019.03.013.
MATLAB Release Compatibility
Platform Compatibility
Windows macOS LinuxCategories
- AI and Statistics > Statistics and Machine Learning Toolbox > Hypothesis Tests >
- Sciences > Neuroscience > Frequently-used Algorithms >
Tags
Acknowledgements
Inspired by: One-point random process generation, Averaging noisy data into bins
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!Discover Live Editor
Create scripts with code, output, and formatted text in a single executable document.
Version | Published | Release Notes | |
---|---|---|---|
1.3 | See release notes for this release on GitHub: https://github.com/ECheynet/stationaryTests/releases/tag/v1.3 |
||
1.2.1 | See release notes for this release on GitHub: https://github.com/ECheynet/stationaryTests/releases/tag/v1.2.1 |
||
1.2 | See release notes for this release on GitHub: https://github.com/ECheynet/stationaryTests/releases/tag/v1.2 |
||
1.1.0.0 | function description + some debugging
|
||
1.0.0.0 |
-doi updated
|