python statsmodels.tsa.seasonal 中的值错误
value error in python statsmodels.tsa.seasonal
我有这个带有日期时间索引的数据框:
ts_log:
date price_per_unit
2013-04-04 12.762369
2013-04-05 12.777120
2013-04-06 12.773146
2013-04-07 12.780774
2013-04-08 12.786835
我有这段代码 decomposition
from statsmodels.tsa.seasonal import seasonal_decompose
decomposition = seasonal_decompose(ts_log)
trend = decomposition.trend
seasonal = decomposition.seasonal
residual = decomposition.resid
但在 decomposition = seasonal_decompose(ts_log)
行中
我收到这个错误:
ValueError: You must specify a freq or x must be a pandas object with a timeseries index
问题出在哪里?
经过一番搜索后,我发现 [here][1] 我必须将 values
添加到 ts_log.price
decomposition = seasonal_decompose(ts_log.price.values, freq=30)
编辑评论。只需添加 freq=30
就足够了!
您可以通过以下方式避免此错误:
ts_log = ts_log.asfreq('d')
这可能会产生一些缺失值:
ts_log = ts_log.fillna(method='bfill').fillna(method='ffill')
以下已解决错误:
decomposition = seasonal_decompose(log_county_data , period = 30)
我有这个带有日期时间索引的数据框:
ts_log:
date price_per_unit
2013-04-04 12.762369
2013-04-05 12.777120
2013-04-06 12.773146
2013-04-07 12.780774
2013-04-08 12.786835
我有这段代码 decomposition
from statsmodels.tsa.seasonal import seasonal_decompose
decomposition = seasonal_decompose(ts_log)
trend = decomposition.trend
seasonal = decomposition.seasonal
residual = decomposition.resid
但在 decomposition = seasonal_decompose(ts_log)
行中
我收到这个错误:
ValueError: You must specify a freq or x must be a pandas object with a timeseries index
问题出在哪里?
经过一番搜索后,我发现 [here][1] 我必须将 values
添加到 ts_log.price
decomposition = seasonal_decompose(ts_log.price.values, freq=30)
编辑评论。只需添加 freq=30
就足够了!
您可以通过以下方式避免此错误:
ts_log = ts_log.asfreq('d')
这可能会产生一些缺失值:
ts_log = ts_log.fillna(method='bfill').fillna(method='ffill')
以下已解决错误:
decomposition = seasonal_decompose(log_county_data , period = 30)