Я ищу способ применить функцию count() только к определенному диапазону дат. Я приложил код, который я использую прямо сейчас. Как видите, я уже сгенерировал определенный диапазон дат, который мне нужен, но я не уверен, как применить функцию подсчета к этому диапазону, а затем создать график.
Пример данных ниже — это лишь несколько столбцов — их 16, но мне нужно использовать только date_report.
Данные из образца Excel:
'''
sex---------country-------date_report
M Canada 03-01-2020
F Canada 03-01-2020
M Canada 03-02-2020
F Canada 03-02-2020
M Canada 03-02-2020
M Canada 03-03-2020
F Canada 03-03-2020
M Canada 03-04-2020
F Canada 03-04-2020
M Canada 03-04-2020
'''
Мне нужно рассчитать количество случаев с 1 марта по 10 июля 2020 года из столбца date_report. В строках есть повторяющиеся даты, их необходимо суммировать, чтобы получить одно общее значение для каждой даты (2 для 01.03.2020, 4 для 02.03.2020 и т. д.)
После прочтения файла excel и импорта pandas и datetime:
'''
day_first=datetime.date(2020, 3, 1)
day_last=datetime.date(2020, 7, 10)
delta = (day_last - day_first)
print(delta.days)
for i in range(delta.days + 1):
all_dates = day_first + datetime.timedelta(+i)
print(all_dates) # This gives me the range of dates I am looking for.
date_count=df.groupby('date_report').date_report.count()
print(date_count)
date_count.plot(kind='line') # This plot goes from the first date in January until the end of the list, I just want March 1-July 10.
'''
Как я уже сказал, цель состоит в том, чтобы построить линейный график с датами с 1 марта по 10 июля по оси x, показывающий общее количество случаев в день по оси y. Любая помощь будет принята с благодарностью!