python statsmodels.tsa.tsa中的值错误

python statsmodels.tsa.tsa中的值错误,python,pandas,statistics,time-series,decomposition,Python,Pandas,Statistics,Time Series,Decomposition,我有一个带有日期时间索引的数据帧: ts_log: 我有这段代码用于分解 from statsmodels.tsa.seasonal import seasonal_decompose decomposition = seasonal_decompose(ts_log) trend = decomposition.trend seasonal = decomposition.seasonal residual = decomposition.resid 但是在这行中,decompositi

我有一个带有日期时间索引的数据帧:

ts_log:
我有这段代码用于
分解

from statsmodels.tsa.seasonal import seasonal_decompose
decomposition = seasonal_decompose(ts_log)

trend = decomposition.trend
seasonal = decomposition.seasonal
residual = decomposition.resid
但是在这行中,
decomposition=季节分解(ts\u log)
我得到了这个错误:

ValueError: You must specify a freq or x must be a pandas object with a timeseries index

问题出在哪里?

经过一番搜索,我发现[here][1]我必须将
值添加到
ts_log.price

decomposition=季节性分解(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)

我也有一个类似的错误,但根据错误消息,我猜添加freq参数可以解决问题。您不是通过添加
值来修复它,而是通过添加
freq=30
“freq”到底在这里做什么?
decomposition = seasonal_decompose(log_county_data , period = 30)