Python - Попытка вычислить среднее время событий до времени t

1

Вот пример набора данных:

ID  Date
1   2/3/18
1   2/7/18
1   2/14/18
1   2/16/18

Вот как выглядит финальная функция:

ID  Date     Running_Mean
1   2/3/18   0
1   2/7/18   4
1   2/14/18  5.5
1   2/16/18  4.33

Это скользящее окно, которое начинается в начале последовательности и продолжает расширяться с помощью набора данных.

Любая помощь приветствуется.

Теги:
pandas

1 ответ

5
Лучший ответ

Используя expanding же самое с rolling когда windows = len(df)

df.Date=pd.to_datetime(df.Date)

df.Date.diff().dt.days.expanding(1).mean()
Out[654]:
0         NaN
1    4.000000
2    5.500000
3    4.333333
Name: Date, dtype: float64
  • 2
    Обратите внимание, что я рекомендую оставить первое значение как NaN, так как это означает, что недоступно 0 означает, что разные - это 0 дней, которые отличаются
  • 0
    Конечно use, используйте NaN, если нужно, fillna
Показать ещё 5 комментариев

Ещё вопросы

Сообщество Overcoder
Наверх
Меню