Я новичок во фреймах данных и пытаюсь понять, как сделать следующее:
У меня уже есть датафрейм в виде временного ряда, например:
timestamp uuid source
2017-06-18 10:43:54 abc two
2017-06-18 03:38:23 fgh three
2017-06-18 07:37:02 abc two
2017-06-18 16:49:51 fgh one
2017-06-19 21:34:10 abc two
2017-06-19 16:49:51 knn three
2017-06-19 22:36:10 mug one
Я пытаюсь 1) выполнить повторную выборку ежедневно и 2) выяснить, какие уникальные пользователи имеют более одного источника в данный день, и подсчитать количество этих пользователей
На 18-м фгх есть два уникальных источника (1), а у abc только один источник (0), так что это будет счет 1 на этот день.
19-го числа ни у одного пользователя нет более одного источника, поэтому счет за этот день равен 0.
Результат
timestamp multi_source_users
2017-06-18 1
2017-06-19 0
Я пробовал несколько комбинаций ресэмплирования и группового режима, но я продолжаю зацикливаться на общем количестве.
Я начинаю с чего-то наивного, как ...
df.resample('D').count()
или
df.groupby('uuid').count()
Но я не знаю, как строить оттуда. Я все время застреваю, когда мне приходится начинать составлять методы.
Я также знаю, что вы можете «применить» пользовательскую функцию, но также не смог сделать эту работу.
Может кто-нибудь помочь направить меня в правильном направлении? Плюс совет для размышлений о подобных проблемах в будущем? С благодарностью.