#python-3.x #pandas
#python-3.x #pandas
Вопрос:
Я создал фрейм данных со следующими данными
Time Source Destination User ID
1/1/20 12:00 1.2.3.4 5.6.7.8 a1
1/1/20 12:01 1.3.4.5 6.7.8.9 a2
1/1/20 12:02 1.3.4.5 7.2.3.4 a2
1/1/20 12:03 1.2.3.4 5.6.7.8 a1
1/1/20 12:04 1.6.3.4 5.6.7.8 a3
1/1/20 12:05 1.3.4.5 6.7.8.9 a2
1/1/20 12:06 1.6.5.4 7.2.3.4 a4
1/1/20 12:07 1.3.4.5 5.6.7.8 a2
1/1/20 12:08 1.3.4.5 6.7.8.9 a2
1/1/20 12:09 1.2.3.4 7.2.3.4 a1
1/1/20 12:10 1.6.3.4 5.6.7.8 a3
1/1/20 12:11 1.3.4.5 6.7.8.9 a2
1/1/20 12:12 1.6.5.4 7.2.3.4 a4
1/1/20 12:13 1.2.3.4 5.6.7.8 a1
1/1/20 12:14 1.3.4.5 6.7.8.9 a2
1/1/20 12:15 1.3.4.5 7.2.3.4 a2
Я попытался использовать groupby с повторной выборкой, как показано ниже
df3 = df2.groupby( [ "Source", "Destination","User ID"]).resample('5T').size().to_frame(name = 'count').reset_index()
df3 = df3.set_index('Time')
df3 = df3.sort_index()
И я получаю следующий результат (вставленный только для первых двух групп …)
Time Source Destination User ID count
1/1/2020 12:00 1.2.3.4 5.6.7.8 a1 2
1/1/2020 12:00 1.3.4.5 6.7.8.9 a2 1
1/1/2020 12:00 1.3.4.5 7.2.3.4 a2 1
1/1/2020 12:00 1.6.3.4 5.6.7.8 a3 1
1/1/2020 12:05 1.2.3.4 7.2.3.4 a1 1
1/1/2020 12:05 1.3.4.5 6.7.8.9 a2 2
1/1/2020 12:05 1.3.4.5 7.2.3.4 a2 0
1/1/2020 12:05 1.6.3.4 5.6.7.8 a3 0
1/1/2020 12:05 1.6.5.4 7.2.3.4 a4 1
1/1/2020 12:05 1.3.4.5 5.6.7.8 a2 1
1/1/2020 12:05 1.2.3.4 5.6.7.8 a1 0
Мой вопрос в том, почему я получаю строки с количеством ‘0’?
Пример 1/1/2020 12:05 1.3.4.5 7.2.3.4 a2 0
Чего мне здесь не хватает?
Ответ №1:
Счетчики Python начинаются с 0
. Таким образом, вместо получения 1,2,3
Python выдает 0,1,2
. Если это проблема, вы всегда можете просто добавить 1 к каждому счетчику.
1/1/2020 12:05 1.3.4.5 7.2.3.4 a2 0
на самом деле равно 1.