Как вычислить условное среднее в pandas (с примерами)


Вы можете использовать следующий синтаксис для расчета условного среднего значения в пандах:

 df. loc [df[' team '] == ' A ', ' points ']. mean ()

При этом вычисляется среднее значение столбца «баллы» для каждой строки в DataFrame, где столбец «команда» равен «А».

В следующих примерах показано, как использовать этот синтаксис на практике со следующим DataFrame pandas:

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' team ': ['A', 'A', 'A', 'B', 'B', 'B'],
                   ' points ': [99, 90, 93, 86, 88, 82],
                   ' assists ': [33, 28, 31, 39, 34, 30]})

#view DataFrame
print (df)

  team points assists
0 to 99 33
1 A 90 28
2 A 93 31
3 B 86 39
4 B 88 34
5 B 82 30

Пример 1. Вычисление условного среднего значения для категориальной переменной

В следующем коде показано, как вычислить среднее значение столбца «очки» только для строк в DataFrame, где столбец «команда» имеет значение «A».

 #calculate mean of 'points' column for rows where team equals 'A'
df. loc [df[' team '] == ' A ', ' points ']. mean ()

94.0

Среднее значение в столбце «очки» для строк, где «команда» равно «А», составляет 94 .

Мы можем проверить это вручную, усреднив значения точек только для линий, где «команда» равна «А»:

  • Среднее количество баллов: (99 + 90 + 93) / 3 = 94

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

В следующем коде показано, как вычислить среднее значение столбца «помощь» только для строк в DataFrame, где значение столбца «точки» больше или равно 90.

 #calculate mean of 'assists' column for rows where 'points' >= 90
df. loc [df[' points '] >= 90 , ' assists ']. mean ()

30.666666666666668

Среднее значение в столбце «ассисты» для строк, где «баллы» больше или равны 90, составляет 30,66667 .

Мы можем проверить это вручную, усреднив значения точек только для линий, где «команда» равна «А»:

  • Среднее количество передач: (33 + 28 + 31) / 3 = 30,66667.

Дополнительные ресурсы

В следующих руководствах объясняется, как выполнять другие распространенные задачи в pandas:

Как рассчитать среднее значение столбцов в Pandas
Как рассчитать скользящее среднее в Pandas
Как заполнить значения NaN средним значением в пандах

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *