2017-12-02 13 views
1

私は、ほぼ5年間の平均気温を含むCSVファイルを持っています。 seasonal_decomposeの機能を使用して分解した後、statsmodels.tsa.seasonalから次の結果が得られました。実際、結果には季節的な変化は見られません!しかし、私はトレンドで明確なsinを参照してください!私はなぜそれが不思議に思っています、どうすれば修正できますか?ありがとうございました。Pythonで季節的に分解する

nresult = seasonal_decompose(nseries, model='additive', freq=1) 
nresult.plot() 
plt.show() 

enter image description here

答えて

2

あなたfreqがオフになっているように見えます。

import numpy as np 
import pandas as pd 
from statsmodels.tsa.seasonal import seasonal_decompose 

# Generate some data 
np.random.seed(0) 
n = 1500 
dates = np.array('2005-01-01', dtype=np.datetime64) + np.arange(n) 
data = 12*np.sin(2*np.pi*np.arange(n)/365) + np.random.normal(12, 2, 1500) 
df = pd.DataFrame({'data': data}, index=dates) 

# Reproduce the example in OP 
seasonal_decompose(df, model='additive', freq=1).plot() 

enter image description here

# Redo the same thing, but with the known frequency 
seasonal_decompose(df, model='additive', freq=365).plot() 

enter image description here

関連する問題