Python 计算数据帧行的移动平均值,每次12列,从最左边的点开始
我有一个这样的dfPython 计算数据帧行的移动平均值,每次12列,从最左边的点开始,python,pandas,dataframe,Python,Pandas,Dataframe,我有一个这样的df A B C D X 1 2 3 4 Y 5 6 7 8 Z 9 10 11 12 我需要在行的基础上进行移动平均。下面是一个移动平均每次2列的结果df示例: A B C D X 1.5 2.5 3.5 4 Y 5.5 6.5 7.5 8 Z 9.5 10.5 11.5 12 请注意,最后一列没有任何后续值,因此它只保留原始值
A B C D
X 1 2 3 4
Y 5 6 7 8
Z 9 10 11 12
我需要在行的基础上进行移动平均。下面是一个移动平均每次2列的结果df示例:
A B C D
X 1.5 2.5 3.5 4
Y 5.5 6.5 7.5 8
Z 9.5 10.5 11.5 12
请注意,最后一列没有任何后续值,因此它只保留原始值。在我的例子中,我想要一个12列移动平均线,直到12不再可能,然后递减到11,10,9,等等
有什么想法吗?我们需要颠倒列的顺序,然后执行
rolling
df=df.T.iloc[::-1].rolling(2,min_periods=1).mean().iloc[::-1].T
Out[348]:
A B C D
X 1.5 2.5 3.5 4.0
Y 5.5 6.5 7.5 8.0
Z 9.5 10.5 11.5 12.0