Как катить элементы Серии на неперекрывающихся интервалах

Я хотел бы рассчитать скользящую сумму элементов, как это делает R roll:

s = pd.Series([1,2,3,4,5,6])

В результате я бы хотел получить новую серию с суммой элементов для неперекрывающихся интервалов (размер окна 2):

3
7
11

Процедура прокрутки Pandas Series работает иначе, создавая перекат на перекрывающихся интервалах. Подскажите, пожалуйста, как делать то, что я хочу ...


person Roman Kazmin    schedule 01.07.2020    source источник
comment
Нет, возвращает неверный результат ...   -  person Mikola    schedule 01.07.2020
comment
Что ты получил? Я получаю 3 7 11.   -  person Ch3steR    schedule 01.07.2020
comment
Какие-нибудь ответы помогли? Не забывайте, что вы можете голосовать и принимать ответы. См. Что мне делать, когда кто-то отвечает на мой вопрос?   -  person yatu    schedule 01.07.2020


Ответы (2)


Ты можешь попробовать

s.groupby(s.index//2).sum()
0     3
1     7
2    11
dtype: int64
person BENY    schedule 01.07.2020

Вот верное решение:

s = pd.Series([1,2,3,4,5,6])
pd.Series([np.sum(s[x:x + 2]) for x in range(0, len(s), 2)])
person Mikola    schedule 01.07.2020