Python Pandas: вперед заполнить арифметикой - PullRequest
0 голосов
/ 21 января 2019

У меня есть следующий DataFrame:

            AAPL shares  GOOG shares  MSFT shares
date                                             
2019-01-01          NaN         10.0          NaN
2019-01-05          NaN          NaN         15.0
2019-01-12          NaN          NaN          7.0
2019-01-13          3.0          NaN          NaN
2019-01-14          NaN         -5.0          NaN

После применения форвардной заливки:

print(df.set_index('date').sort_index().fillna(method='ffill').fillna(value=0))

Я получаю:

            AAPL shares  GOOG shares  MSFT shares
date                                             
2019-01-01          0.0         10.0          0.0
2019-01-05          0.0         10.0         15.0
2019-01-12          0.0         10.0          7.0
2019-01-13          3.0         10.0          7.0
2019-01-14          3.0         -5.0          7.0

Мой вопрос, есть ли способ заполнить простым добавлением? Результат, который я ищу:

            AAPL shares  GOOG shares  MSFT shares
date                                             
2019-01-01          0.0         10.0          0.0
2019-01-05          0.0         10.0         15.0
2019-01-12          0.0         10.0         22.0
2019-01-13          3.0         10.0         22.0
2019-01-14          3.0          5.0         22.0

1 Ответ

0 голосов
/ 21 января 2019

Вы можете проверить с помощью cumsum

df.fillna(0).cumsum()
            AAPLshares  GOOGshares  MSFTshares
date                                          
2019-01-01         0.0        10.0         0.0
2019-01-05         0.0        10.0        15.0
2019-01-12         0.0        10.0        22.0
2019-01-13         3.0        10.0        22.0
2019-01-14         3.0         5.0        22.0
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...