python statsmodel seasonal_decompose “len() of unsized object” 错误
python statsmodel seasonal_decompose Error with “len() of unsized object”
我有一个包含 2 列的数据框:日期和计数。我正在尝试在 statsmodel 中使用 seasonal_decompose 来可视化时间序列分析
df_counts_outlier_trim=df_counts_outlier[['date', 'count']]
df_counts_outlier_trim.set_index('date', inplace=True) # set yyyy-mm-dd as index
print (df_counts_outlier_trim.info())
returns
<class 'pandas.core.frame.DataFrame'>
Index: 179 entries, 2018-01-21 to 2018-07-18
Data columns (total 1 columns):
count 179 non-null int64
dtypes: int64(1)
memory usage: 2.8+ KB
print (df_counts_outlier_trim)
returns
count
date
2018-01-21 48
2018-01-22 304
2018-01-23 368
2018-01-24 528
2018-01-25 448
2018-01-26 304
2018-01-27 256
2018-01-28 272
2018-01-29 448
2018-01-30 480
2018-01-31 464
2018-02-01 448
2018-02-02 208
2018-02-03 288
2018-02-04 352
现在我试试 statsmodels seasonal_decompose:
from statsmodels.tsa.seasonal import seasonal_decompose
result = seasonal_decompose(df_counts_outlier_trim.count, model='additive', freq=1)
错误信息如下:
Traceback (most recent call last):
File "outliers.py", line 217, in <module>
result = seasonal_decompose(df_counts_outlier_trim.count, model='additive', freq=1)
File "/home/vagrant/miniconda3/envs/waypoint_benchmark/lib/python3.6/site-packages/statsmodels/tsa/seasonal.py", line 70, in seasonal_decompose
nobs = len(x)
TypeError: len() of unsized object
这让我抓狂,找不到解决办法。有没有大师有什么想法?
利用您提供的有限数据集,我能够运行代码进行以下修改。
from statsmodels.tsa.seasonal import seasonal_decompose
result = seasonal_decompose(df_counts_outlier_trim.count.values, model='additive', freq=1)
注意行中的 values
。我已经在 python 2.7.
中对此进行了测试
我有一个包含 2 列的数据框:日期和计数。我正在尝试在 statsmodel 中使用 seasonal_decompose 来可视化时间序列分析
df_counts_outlier_trim=df_counts_outlier[['date', 'count']]
df_counts_outlier_trim.set_index('date', inplace=True) # set yyyy-mm-dd as index
print (df_counts_outlier_trim.info())
returns
<class 'pandas.core.frame.DataFrame'>
Index: 179 entries, 2018-01-21 to 2018-07-18
Data columns (total 1 columns):
count 179 non-null int64
dtypes: int64(1)
memory usage: 2.8+ KB
print (df_counts_outlier_trim)
returns
count
date
2018-01-21 48
2018-01-22 304
2018-01-23 368
2018-01-24 528
2018-01-25 448
2018-01-26 304
2018-01-27 256
2018-01-28 272
2018-01-29 448
2018-01-30 480
2018-01-31 464
2018-02-01 448
2018-02-02 208
2018-02-03 288
2018-02-04 352
现在我试试 statsmodels seasonal_decompose:
from statsmodels.tsa.seasonal import seasonal_decompose
result = seasonal_decompose(df_counts_outlier_trim.count, model='additive', freq=1)
错误信息如下:
Traceback (most recent call last):
File "outliers.py", line 217, in <module>
result = seasonal_decompose(df_counts_outlier_trim.count, model='additive', freq=1)
File "/home/vagrant/miniconda3/envs/waypoint_benchmark/lib/python3.6/site-packages/statsmodels/tsa/seasonal.py", line 70, in seasonal_decompose
nobs = len(x)
TypeError: len() of unsized object
这让我抓狂,找不到解决办法。有没有大师有什么想法?
利用您提供的有限数据集,我能够运行代码进行以下修改。
from statsmodels.tsa.seasonal import seasonal_decompose
result = seasonal_decompose(df_counts_outlier_trim.count.values, model='additive', freq=1)
注意行中的 values
。我已经在 python 2.7.