Группировка, изменение, объединение и интерполяция с использованием NaN - PullRequest
0 голосов
/ 02 апреля 2020

Я использую данные некоторых действий и хочу получить соответствующий фрейм данных с индексами временных рядов. Для этого мне нужно рассчитать количество действий в день для данного пользователя

num_streams_timed =time_df[['user','Date','action']]\
        .groupby('user')\
        .resample('D', on = 'Date').count()

. Это, конечно, дает мне ежедневные данные с передискретизацией, и я использую счет для вычисления ежедневного количества действий. Однако не у всех пользователей есть действие каждый день, и этот метод возвращает 0 для NaN в кадре данных с измененной выборкой. Тем не менее, мне нужно вернуть NaN, так что было бы возможно использовать .interpolate() or .ffill() для моего случая.

.count() имеет параметр numeric_only, однако он не работает для объекта GroupBy.

num_streams_timed =time_df[['user','Date','action']]\
        .groupby('user')\
        .resample('D', on = 'Date').count(numeric_only = False)
TypeError: count() got an unexpected keyword argument 'numeric_only'

Какой обходной путь для этого? Я видел, что люди сообщали об этом для .rank () и что он не принимает параметры, однако я не нашел решения проблемы.

...