發表文章

目前顯示的是 12月, 2017的文章

Time Series Features

圖片
Features :  Time domain: 均值,方差,標準差,最大值,最小值,過零點個數,最大值與最小值之差,眾數 frequency domain: 直流分量,圖形的均值、方差、標準差、斜度、峭度,幅度的均值、方差、標準差、斜度、峭度 R 1. Spectral entropy of a time series Computes feature of a time series based on tiled (non-overlapping) windows. 2. lumpiness is the variance of the variances 3. stability is the variance of the means Computes feature of a time series based on sliding (overlapping) windows 4. max_level_shift finds the largest mean shift between two consecutive windows. 5. max_var_shift finds the largest var shift between two consecutive windows 6. max_kl_shift finds the largest shift in Kulback-Leibler divergence between two consecutive windows 7. Number of crossing points: the number of times a time series crosses the median 8. Number of flat spots: Number of flat spots in a time series(rel) 9. Hurst coefficent: Computes the Hurst coefficient indicating the level of fractional differencing of a time series 10. Autocorrelation-based features: Compu...

R 的 Vectorization

程式人員一般剛使用 R 時有點不習慣吧! 因為寫程式就是在處理一些需要反覆的事情或經過許多反覆動作後才能解決的問題。所以,程式中幾乎都會需要用到迴圈。 R 這種統計語言,而統計一定需要一些數據。所以概念上一定以一次處理一堆數據來設計。這一堆數據數學上的 基礎 概念就是向量( vector)。 序列也許你也可以如此,但這種概念順序感 就有點強了。 R 將一堆數據看作是一個點或個體來操作,這很有趣。在 20 幾 年 前我在使用 S 語言時,就有覺得這種處理對數據研究而言是很有益的,我的論文就是利用 S-PLUS 來完成的。 R 的是一種 vectorization 是對其他語言說的,例如: 當你要將 1 到 100000 中,每個數的平方進行加總時,一般語言就是用: x <- 1:100000 s <- 0 for( i in x) {     s = s+ i^2 } R 就是將 x 視作"點"來進行處理,例如: x <- 1:100000 s <- sum(x^2) 我覺得這種看法很酷。另外,如果想將一堆數據分割後再當成點來處理,R 也提供你一組 apply 函式來處理這樣的事情。 在 R 語言中,請盡量"自然"的用 vector 來思考。

時間序列的特徵空間分析

1. 加入 noise 與 random walk 序列作為 branchmark 2. 時間序列的特徵: 例如,    ACF    Strength of trend and seasonality based on STL     Trend linearity and curvature     Size of seasonal peak and trough     Spectral entropy    Lumpiness     Spikiness     Level shift    Variance change    Flat spots    Kullback-Leibler score    Change index 3. 對特徵進行 PCA 分析: 觀察不規則之處。      

Merry Christmas!

圖片