Я использую большой файл Excel с четырьмя столбцами, но мне нужны только два: Дата и HPCP. Цель этой программы - преобразовать даты в объекты даты, удалить дубликаты дат, а затем суммировать HPCP дубликатов. Я чувствую, что этот код должен работать, однако вывод очень неправильный. Код успешно преобразует даты в объекты даты, удаляет дубликаты, но не суммирует правильно. Любая помощь будет принята с благодарностью.
Ссылка на файл Excel:
https://drive.google.com/open?id=1P5-k9Zyz8iFwx6Y-9yhnRozGGSvqpXLz
Пример некоторых строк из файла Excel:
STATION STATION_NAME DATE HPCP
COOP:305801 NY CITY CENTRAL PARK NY US 20000101 01:00 0
COOP:305801 NY CITY CENTRAL PARK NY US 20000104 15:00 0
COOP:305801 NY CITY CENTRAL PARK NY US 20000104 16:00 0.01
COOP:305801 NY CITY CENTRAL PARK NY US 20000104 17:00 0.03
COOP:305801 NY CITY CENTRAL PARK NY US 20000104 18:00 0.04
COOP:305801 NY CITY CENTRAL PARK NY US 20000104 19:00 0.12
COOP:305801 NY CITY CENTRAL PARK NY US 20000104 20:00 0.17
COOP:305801 NY CITY CENTRAL PARK NY US 20000104 21:00 0.13
COOP:305801 NY CITY CENTRAL PARK NY US 20000104 22:00 0.04
COOP:305801 NY CITY CENTRAL PARK NY US 20000104 23:00 0.09
COOP:305801 NY CITY CENTRAL PARK NY US 20000105 00:00 0.07
COOP:305801 NY CITY CENTRAL PARK NY US 20000105 01:00 0
COOP:305801 NY CITY CENTRAL PARK NY US 20000109 21:00 0.01
COOP:305801 NY CITY CENTRAL PARK NY US 20000109 22:00 0
COOP:305801 NY CITY CENTRAL PARK NY US 20000110 00:00 0.01
COOP:305801 NY CITY CENTRAL PARK NY US 20000110 13:00 0.15
COOP:305801 NY CITY CENTRAL PARK NY US 20000110 14:00 0.29
COOP:305801 NY CITY CENTRAL PARK NY US 20000110 15:00 0.24
COOP:305801 NY CITY CENTRAL PARK NY US 20000110 16:00 0.15
COOP:305801 NY CITY CENTRAL PARK NY US 20000110 17:00 0.01
COOP:305801 NY CITY CENTRAL PARK NY US 20000113 08:00 0
COOP:305801 NY CITY CENTRAL PARK NY US 20000113 09:00 0.01
COOP:305801 NY CITY CENTRAL PARK NY US 20000113 10:00 0.02
COOP:305801 NY CITY CENTRAL PARK NY US 20000113 15:00 0.01
COOP:305801 NY CITY CENTRAL PARK NY US 20000113 16:00 0.01
COOP:305801 NY CITY CENTRAL PARK NY US 20000113 17:00 0
COOP:305801 NY CITY CENTRAL PARK NY US 20000120 07:00 0
COOP:305801 NY CITY CENTRAL PARK NY US 20000120 08:00 0
COOP:305801 NY CITY CENTRAL PARK NY US 20000120 09:00 0
Код:
import sys
import pandas as pd
import datetime
data = pd.read_csv(sys.argv[1])
data = data[['DATE','HPCP']]
data['DATE'] = pd.to_datetime(data['DATE'])
for index, row in data.iterrows():
print index
data.loc[index,'DATE'] = data.loc[index,'DATE'].date()
data = data.groupby(['DATE'],as_index=False).sum()
print data
Выход:
DATE HPCP
0 2000-01-01 11999.88
1 2000-01-03 0.00
2 2000-01-04 1002.97
3 2000-01-05 1.25
4 2000-01-09 1000.01
5 2000-01-10 4.72
6 2000-01-11 0.00
7 2000-01-13 0.17
8 2000-01-16 0.00
9 2000-01-20 1000.11
10 2000-01-21 0.12
... ...
2871 2013-12-17 0.66
2872 2013-12-21 0.01
2873 2013-12-22 0.04
2874 2013-12-23 2.06
2875 2013-12-24 0.00
2876 2013-12-26 0.00
2877 2013-12-29 4.90
2878 2013-12-30 0.00
2879 2013-12-31 0.00
2880 2014-01-01 3999.96