Я новичок в питоне. Вот мои данные:
x y location id label zone xx yy
date
2019-10-08 00:00:01.913 456 293 12 2820 0 2 -1.0 0.0
2019-10-08 00:00:01.913 450 234 14 2819 0 3 0.0 -1.0
2019-10-08 00:00:01.913 169 274 0 2700 0 1 1.0 -2.0
2019-10-08 00:00:04.394 449 235 14 2819 0 3 -1.0 1.0
2019-10-08 00:00:04.394 162 282 0 2700 0 1 -7.0 7.0
Мне интересно подсчитывать уникальные идентификаторы в каждой зоне (есть 3 зоны, 0, 1,2) на почасовой основе. Вот моя попытка подсчитать количество уникальных идентификаторов в полной CSV:
for zone in df.zone.unique():
print(len(df[df.zone==zone].id.value_counts())))
Я пытаюсь сделать это интерактивно на почасовой основе. Поскольку date
является моим индексом, я попробовал следующее
for i in range(0,22):
df1=df['2019-10-08 %d:00:00':'2019-10-08 %d:00:00' %(i,i+1)]
for zone in df1.zone.unique():
print(len(df1[df1.zone==zone].id.value_counts()))
Возможно, это не самый лучший способ, это не работает.
Ошибка: TypeError: not all arguments converted during string formatting
В моем случае пересчет не возможен, так как я заинтересован в подсчете. Если у вас есть лучший метод, я хотел бы знать.