Получение среднего значения суммы за период времени

#python #pandas #dataframe

#python #панды #фрейм данных

Вопрос:

У меня есть следующий код, который в качестве текущего принимает среднее количество людей на посещение в неделю.

 df = information.groupby(pd.Grouper(freq='W')).mean('people')
  

Как бы мне изменить это, чтобы вместо того, чтобы брать среднее число за посещение, я беру среднее количество посетителей в день за каждую неделю.

Пример df

    date                 people
2012-01-02 20:00:00       x
2012-01-02 20:00:00       x
2012-01-03 16:00:00       x
2012-01-03 10:00:00       x
2012-01-03 20:00:00       x
2012-01-04 20:00:00       x
...
  

И я хочу, чтобы вывод df напоминал

    week       avergeperday
2012-01-02         x
2012-01-09         x
2012-01-16         x
2012-01-23         x
2012-01-30         x
...
  

Ответ №1:

Может быть, две группы:

 (information.groupby(pd.Grouper(freq='D')).size()
            .groupby(pd.Grouper(freq='W')).mean()
)
  

Или, если people это количество людей, приходящих в то время:

 (information.groupby(pd.Grouper(freq='D'))['people'].sum()
            .groupby(pd.Grouper(freq='W')).mean()
)