tsmoothie
一個(gè)用于以向量化方式進(jìn)行時(shí)間序列平滑和離群值檢測的python庫。
總覽
tsmoothie以快速有效的方式計(jì)算單個(gè)或多個(gè)時(shí)間序列的平滑度。
可用的平滑技術(shù)是:
1)指數(shù)平滑
2)具有各種窗口類型(常量,漢寧,漢明,巴特利特,布萊克曼)的卷積平滑
3)多項(xiàng)式平滑
4)各種樣條平滑(線性,三次,自然三次)
5)高斯平滑
6)Binner平滑
7)低價(jià)
8)各種季節(jié)性分解平滑(卷積,最低,自然三次樣條)
9)帶有可自定義組件(水平,趨勢,季節(jié)性,長期季節(jié)性)的卡爾曼平滑
tsmoothie提供了平滑處理結(jié)果的間隔計(jì)算。這對于識別時(shí)間序列中的異常值和異??赡芎苡杏?。
可用的間隔類型為:
1)sigma間隔
2)置信區(qū)間
3)預(yù)測間隔
4)卡爾曼區(qū)間
采用這種類型的間隔取決于所使用的平滑方法。
tsmoothie還可以執(zhí)行滑動(dòng)平滑方法??梢詫r(shí)間序列分成相等大小的片段,并分別進(jìn)行平滑處理。與往常一樣,此功能通過WindowWrapper類以矢量化方式實(shí)現(xiàn)。
點(diǎn)安裝tsmoothie
該模塊僅取決于NumPy,SciPy和simdkalman。支持Python 3.6或更高版本。
用法
下面是tsmoothie如何工作的幾個(gè)示例。筆記本文件夾中提供了完整的示例。
#導(dǎo)入庫
將 numpy 導(dǎo)入為 np
import matplotlib。pyplot 如 PLT
從 tsmoothie。utils_func 進(jìn)口 sim_randomwalk
從 tsmoothie。進(jìn)口順暢 LowessSmoother
#產(chǎn)生3次長度為200
np的隨機(jī)游走。隨機(jī)的。種子(123)
數(shù)據(jù) = sim_randomwalk(n_series = 3,時(shí)間步長= 200,
process_noise = 10,measure_noise = 30)
#操作平滑
平滑 = LowessSmoother(smooth_fraction = 0.1,迭代= 1)
更光滑。順利(數(shù)據(jù))
#生成
低間隔,向上 = 更平滑。get_intervals('prediction_interval')
#繪制間隔為
plt的平滑時(shí)間序列。圖(figsize =(18,5))
對于 我 在 范圍(3):
PLT。副區(qū)(1,3,我+ 1)
PLT。積(平滑。smooth_data [我],線寬= 3,顏色= '藍(lán)色')
PLT。繪制(更平滑的數(shù)據(jù)[ i ],' . k ')
plt。標(biāo)題(f“時(shí)間序列{ i + 1 } ”); PLT。xlabel('時(shí)間')
PLT。fill_between(范圍(len個(gè)(更平滑。數(shù)據(jù)[我])),低[我],向上[我],阿爾法= 0.3)
#導(dǎo)入庫
將 numpy 導(dǎo)入為 np
import matplotlib。pyplot 如 PLT
從 tsmoothie。utils_func 進(jìn)口 sim_seasonal_data
從 tsmoothie。導(dǎo)入更順暢 DecomposeSmoother
#生成3個(gè)長度為300
np的周期性時(shí)間序列。隨機(jī)的。種子(123)
數(shù)據(jù) = sim_seasonal_data(n_series = 3,時(shí)間步長= 300,
頻率= 24,measure_noise = 30)
#
更平滑地 進(jìn)行平滑操作= DecomposeSmoother(smooth_type = 'lowess',周期= 24,
smooth_fraction = 0.3)
更平滑。順利(數(shù)據(jù))
#生成
低間隔,向上 = 更平滑。get_intervals('sigma_interval')
#繪制間隔為
plt的平滑時(shí)間序列。圖(figsize =(18,5))
對于 我 在 范圍(3):
PLT。副區(qū)(1,3,我+ 1)
PLT。積(平滑。smooth_data [我],線寬= 3,顏色= '藍(lán)色')
PLT。繪制(更平滑的數(shù)據(jù)[ i ],' . k ')
plt。標(biāo)題(f“時(shí)間序列{ i + 1 } ”); PLT。xlabel('時(shí)間')
PLT。fill_between(范圍(len個(gè)(更平滑。數(shù)據(jù)[我])),低[我],向上[我],阿爾法= 0.3)
填寫下面表單即可預(yù)約申請免費(fèi)試聽!怕錢不夠?可先就業(yè)掙錢后再付學(xué)費(fèi)! 怕學(xué)不會(huì)?助教全程陪讀,隨時(shí)解惑!擔(dān)心就業(yè)?一地學(xué)習(xí),可推薦就業(yè)!
?2007-2022/ m.5wd995.cn 北京漫動(dòng)者數(shù)字科技有限公司 備案號: 京ICP備12034770號 監(jiān)督電話:010-53672995 郵箱:bjaaa@aaaedu.cc