Вычисление скользящего среднего для строк фрейма данных, 12 столбцов за раз, начиная с самой левой точки - PullRequest
0 голосов
/ 04 августа 2020

У меня есть df как таковой

    A   B   C   D  

X   1   2   3   4

Y   5   6   7   8

Z   9   10  11  12

Мне нужно выполнить скользящую среднюю по строкам. Вот пример результирующего df со скользящим средним 2 столбца за раз:

     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 и т. Д.

Есть мысли?

1 Ответ

1 голос
/ 04 августа 2020

Нам нужно изменить порядок столбцов, затем выполнить 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
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...