Как рассчитать совокупное среднее значение в python
Совокупное среднее сообщает нам среднее значение ряда значений до определенного момента.
Вы можете использовать следующий синтаксис для вычисления совокупного среднего значений в столбце DataFrame pandas:
df[' column_name ']. expanding (). mean ()
В следующем примере показано, как использовать этот синтаксис на практике.
Пример. Вычисление совокупного среднего значения в Python
Допустим, у нас есть следующий DataFrame pandas, который показывает общий объем продаж магазина за 16 дней подряд:
import pandas as pd import numpy as np #createDataFrame df = pd. DataFrame ({' day ': [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16], ' sales ': [3, 6, 0, 2, 4, 1, 0, 1, 4, 7, 3, 3, 8, 3, 5, 5]}) #view first five rows of DataFrame df. head () day sales 0 1 3 1 2 6 2 3 0 3 4 2 4 5 4
Мы можем использовать следующий синтаксис для расчета скользящего среднего столбца продаж:
#calculate average of 'sales' column df[' sales ']. expanding (). mean () 0 3.000000 1 4.500000 2 3.000000 3 2.750000 4 3.000000 5 2.666667 6 2.285714 7 2.125000 8 2.333333 9 2.800000 10 2.818182 11 2.833333 12 3.230769 13 3.214286 14 3.333333 15 3.437500 Name: sales, dtype: float64
Мы бы интерпретировали совокупные средние значения как:
- Совокупное среднее значение первых продаж равно 3 .
- Совокупное среднее первых двух значений продаж составляет 4,5 .
- Совокупное среднее первых трёх значений продаж равно 3 .
- Совокупное среднее значение первых четырех продаж составляет 2,75 .
И так далее.
Обратите внимание, что вы также можете использовать следующий код, чтобы добавить совокупные средние значения продаж в качестве нового столбца в DataFrame:
#add cumulative average sales as new column df[' cum_avg_sales '] = df[' sales ']. expanding (). mean () #view updated DataFrame df day sales cum_avg_sales 0 1 3 3.000000 1 2 6 4.500000 2 3 0 3.000000 3 4 2 2.750000 4 5 4 3.000000 5 6 1 2.666667 6 7 0 2.285714 7 8 1 2.125000 8 9 4 2.333333 9 10 7 2.800000 10 11 3 2.818182 11 12 3 2.833333 12 13 8 3.230769 13 14 3 3.214286 14 15 5 3.333333 15 16 5 3.437500
Столбец cum_avg_sales отображает совокупное среднее значений в столбце «продажи».
Дополнительные ресурсы
В следующих руководствах объясняется, как рассчитать другие распространенные метрики в Python:
Как вычислить усеченное среднее значение в Python
Как вычислить среднее геометрическое в Python
Как рассчитать скользящие средние в Python