我正在尝试使用statsmodels库中的“seasonal_decompose”方法:
decomposition = seasonal_decompose(ts_load_log)
尝试执行该行时会发生以下错误:
'RangeIndex'对象没有属性'inferred_freq'
那是因为我的ts_load_log如下所示:
现在我正在尝试转换我的索引!因此,我创建了以下数据框,其中包含ts_load_log中值的日期:
df_datetimes = pd.to_datetime(df_load_per_hour['Market Day']) + pd.to_timedelta(df_load_per_hour['HourEnding'] - 1, unit='h')
看起来像:
有没有办法在数据框df_datetimes的帮助下重置ts_load_log系列的索引,以便分解有效?或者是否有更简单的方法而不是创建新的数据框?或者我完全错了?
我已经尝试过:
test = ts_load_log.to_frame()
test2 = df_datetimes.to_frame()
test = test.reindex(test2[0])
但我认为这是不必要的。另外它不起作用!
答案 0 :(得分:1)
如果使用pandas的datetimeIndex方法,它应该可以工作:
Object.assign(
previousState,
{quantity: state.quantity + 1},
{quantity: state.quantity + 1},
...
)
之后只需将数据框对象转换为Series对象,如:
test = ts_load_log.to_frame()
test2 = df_datetimes.to_frame()
test.index = pd.DatetimeIndex(test2[0])