Усеченное среднее — это среднее значение набора данных, рассчитанное после удаления определенного процента наименьших и наибольших значений из набора данных.
Самый простой способ вычислить усеченное среднее значение в Python — использовать функцию trim_mean() из библиотеки SciPy.
Эта функция использует следующий базовый синтаксис:
from scipy import stats
#calculate 10% trimmed mean
stats. trim_mean (data, 0.1 )
В следующих примерах показано, как использовать эту функцию для вычисления усеченного среднего на практике.
Пример 1. Вычисление усеченного среднего значения массива
В следующем коде показано, как вычислить 10% усеченное среднее для массива данных:
from scipy import stats
#define data
data = [22, 25, 29, 11, 14, 18, 13, 13, 17, 11, 8, 8, 7, 12, 15, 6, 8, 7, 9, 12]
#calculate 10% trimmed mean
stats. trim_mean (data, 0.1 )
12.375
Среднее значение, усеченное на 10%, составляет 12,375 .
Это среднее значение набора данных после удаления наименьших 10 % и наибольших 10 % значений из набора данных.
Пример 2: вычислить усеченное среднее значение столбца в Pandas
В следующем коде показано, как вычислить среднее значение, усеченное на 5%, для определенного столбца в кадре данных pandas:
from scipy import stats
import pandas as pd
#define DataFrame
df = pd.DataFrame({'points': [25, 12, 15, 14, 19, 23, 25, 29],
'assists': [5, 7, 7, 9, 12, 9, 9, 4],
'rebounds': [11, 8, 10, 6, 6, 5, 9, 12]})
#calculate 5% trimmed mean of points
stats. trim_mean (df.points , 0.05 )
20.25
Усеченное на 5% среднее значений в столбце «баллы» равно 20,25 .
Это среднее значение столбца «баллы» после удаления наименьших 5 % и наибольших 5 % значений.
Пример 3. Вычисление усеченного среднего значения нескольких столбцов
В следующем коде показано, как вычислить среднее значение, усеченное на 5%, для нескольких столбцов в кадре данных pandas:
from scipy import stats
import pandas as pd
#define DataFrame
df = pd.DataFrame({'points': [25, 12, 15, 14, 19, 23, 25, 29],
'assists': [5, 7, 7, 9, 12, 9, 9, 4],
'rebounds': [11, 8, 10, 6, 6, 5, 9, 12]})
#calculate 5% trimmed mean of 'points' and 'assists' columns
stats. trim_mean(df[['points', 'assists']], 0.05 )
array([20.25, 7.75])
Из вывода мы видим:
- Усеченное на 5% среднее значение столбца «баллы» равно 20,25 .
- Усеченное на 5% среднее значение столбца «ассисты» составляет 7,75 .
Примечание.Полную документацию по функции trim_mean() можно найти здесь .
Дополнительные ресурсы
Как рассчитать усеченное среднее вручную
Калькулятор усеченного среднего