一、原理
分解函数成三部分:趋势、周期、和剩余部分(一般指噪声,均值为0) 分解就是将时序数据分离成不同的成分,分解有:长期趋势Trend、季节性seasonality和随机残差residuals 返回包含三个部分 trend(趋势部分) , seasonal(季节性部分) 和residual (残留部分) 传入:一个序列,可以是时间序列 输出:趋势、周期、和剩余部分 三部分
函数详解链接:详解
二、代码示例
import statsmodels.api as sm
import matplotlib.pyplot as plt
import pandas as pd
import numpy as np
x=np.arange(0,100,1)
data=1+10*np.sin(2*x)+10*x+5*np.sin(x)
rd = sm.tsa.seasonal_decompose(data,freq=2)
rd.plot()
plt.show()
print(rd.trend+rd.seasonal)
plt.plot(data)
plt.plot(rd.trend+rd.seasonal)
plt.show()
freq=2 ,则表示趋势+季节性 里面有2个空值,首末各一个
作者:电气-余登武
|