在滚动函数上迭代窗口大小,附加到新的数据帧?

2024-06-28 19:20:15 发布

您现在位置:Python中文网/ 问答频道 /正文

我尝试从一个数据帧迭代一个滚动计算,每次迭代/更改窗口大小,然后将其附加到一个新的数据帧,每次都有一个新的列。你知道吗

代码如下:

window_list = [39, 52, 65, 78, 91, 104]

for i in window_list: 
    window = i
    df_SP_final = pd.DataFrame(index=df_SP.index)
    df_SP_final.insert(loc=0,column=i,value=0.5*(((df_SP.pcent - df_SP.pcent.rolling(window=window,min_periods=min_periods).mean())

输出只是104列的一部分。看起来for循环工作不正常?你知道吗


Tags: 数据代码indataframedfforindexmin
1条回答
网友
1楼 · 发布于 2024-06-28 19:20:15

每次尝试新窗口时,都会重新初始化df_SP_final。 我想你的意思是:

window_list = [39, 52, 65, 78, 91, 104]
df_SP_final = pd.DataFrame(index=df_SP.index)

for window in window_list: 
    df_SP_final.insert(loc=0,column=i,value=0.5*(((df_SP.pcent - df_SP.pcent.rolling(window=window,min_periods=min_periods).mean())

相关问题 更多 >