как выполнить накопительную сумму по дате для определенного состояния с использованием pandas

#python #pandas #cumsum

#python #pandas #cumsum

Вопрос:

У меня есть набор данных COVID India, в котором есть ежедневные случаи. Я хочу агрегировать ежедневные случаи, чтобы получить кумулятивный результат по дате для определенного состояния.

Набор данных по Covid в Индии, содержащий ежедневные подтвержденные, ежедневные смертельные случаи и ежедневные восстановленные случаи для всех штатов:

Позже я выполнил ‘groupby’ для фрейма данных

 statewise_daily.groupby(['State','Date'])['dailyconfirmed','dailydeaths','dailyrecovered'].sum().sort_values(['State','Date']).reset_index()
  

После этого, что следует сделать, чтобы получить кумулятивные подтвержденные, смертельные случаи и восстановленные случаи?

Может кто-нибудь, пожалуйста, дайте мне знать.

Комментарии:

1. Можете ли вы поделиться (т. Е. Вставить) выводом терминала фрейма данных вместо изображения?

Ответ №1:

Вот потенциальное решение :

Во-первых, преобразуйте Date в datetime формат и сделайте его index из фрейма данных. Это может быть достигнуто напрямую с помощью read_csv метода :

 statewise_daily=pd.read_csv('india-covid.csv', parse_dates=['Date'], index_col=['Date'])
  

Далее вы можете использовать свой pandas код с незначительными изменениями вместе с resample методом :

 statewise_daily.groupby(['State'])['dailyconfirmed','dailydeaths','dailyrecovered'].resample('1D').sum().sort_values(['State']).reset_index()