Модуль statistics в Python

В анализе данных и научных вычислениях статистика — очень важный инструмент.

Python предоставляет встроенныйstatisticsмодуль, специально предназначенный для выполнения базовых статистических расчётов. В этой статье будут подробно рассмотреныstatisticsфункции и использование модуля, помогая новичкам быстро освоить, как использовать этот модуль для базового статистического анализа.

statisticsМодуль предоставляет множество распространённых статистических функций, таких как среднее значение, медиана, дисперсия, стандартное отклонение и т. д.

Чтобы использовать функции модуля statistics, необходимо сначала импортировать:

import statistics

Просмотреть содержимое модуля statistics:

>>> import statistics
>>> dir(statistics)
['Counter', 'Decimal', 'Fraction', 'NormalDist', 'StatisticsError', '__all__', '__builtins__', '__cached__', '__doc__', '__file__', '__loader__', '__name__', '__package__', '__spec__', '_coerce', '_convert', '_exact_ratio', '_fail_neg', '_find_lteq', '_find_rteq', '_isfinite', '_normal_dist_inv_cdf', '_ss', '_sum', 'bisect_left', 'bisect_right', 'erf', 'exp', 'fabs', 'fmean', 'fsum', 'geometric_mean', 'groupby', 'harmonic_mean', 'hypot', 'itemgetter', 'log', 'math', 'mean', 'median', 'median_grouped', 'median_high', 'median_low', 'mode', 'multimode', 'numbers', 'pstdev', 'pvariance', 'quantiles', 'random', 'sqrt', 'stdev', 'tau', 'variance']

Общие статистические функции

Среднее

Среднее — это среднее арифметическое всех значений в наборе данных.statisticsМодуль предоставляетmean()функцию для вычисления среднего.

Пример

data = [1, 2, 3, 4, 5]
mean_value = statistics.mean(data)
print("Mean:", mean_value)

Вывод:

均值: 3

Медиана

Медиана — это значение, находящееся в середине набора данных, когда он упорядочен по величине.statisticsМодуль предоставляетmedian()функцию для вычисления медианы.

Пример

data = [1, 2, 3, 4, 5]
median_value = statistics.median(data)
print("Медиана:", median_value)

Вывод:

中位数: 3

Если длина набора данных чётная,median()функция автоматически вычисляет среднее значение двух средних чисел.

Пример

data = [1, 2, 3, 4]
median_value = statistics.median(data)
print("Медиана:", median_value)

Вывод:

中位数: 2.5

Mode

Мода — это значение, которое встречается в наборе данных чаще всего.statisticsМодуль предоставляетmode()функция для вычисления моды.

Пример

data = [1, 2, 2, 3, 4]
mode_value = statistics.mode(data)
print("Мода:", mode_value)

Вывод:

众数: 2

Если в наборе данных нет повторяющихся значений,mode()функция выброситStatisticsErrorисключение.

Вариантность

Дисперсия — это мера степени разброса значений в наборе данных.statisticsМодуль предоставляетvariance()функция для вычисления дисперсии.

Пример

data = [1, 2, 3, 4, 5]
variance_value = statistics.variance(data)
print("Дисперсия:", variance_value)

Вывод:

方差: 2.5

Стандартное отклонение

Стандартное отклонение — это квадратный корень из дисперсии, используемый для измерения разброса набора данных.statisticsМодуль предоставляетstdev()функция для вычисления стандартного отклонения.

Пример

data = [1, 2, 3, 4, 5]
stdev_value = statistics.stdev(data)
print("Стандартное отклонение:", stdev_value)

Вывод:

标准差: 1.5811388300841898

Среднее гармоническое

Среднее гармоническое — это особый вид среднего, подходящий для таких случаев, как вычисление скоростей.statisticsМодуль предоставляетharmonic_mean()функция для вычисления среднего гармонического.

Пример

data = [1, 2, 4]
harmonic_mean_value = statistics.harmonic_mean(data)
print("Среднее гармоническое:", harmonic_mean_value)

Вывод:

调和平均数: 1.7142857142857142

Среднее геометрическое

Среднее геометрическое — это среднее, используемое для вычисления темпов роста или соотношений.statisticsМодуль предоставляетgeometric_mean()функция для вычисления среднего геометрического.

Пример

data = [1, 2, 4]
geometric_mean_value = statistics.geometric_mean(data)
print("Среднее геометрическое:", geometric_mean_value)

Вывод:

几何平均数: 2.0

Другие распространённые функции

Нижняя медиана и верхняя медиана

statisticsМодуль также предоставляетmedian_low()иmedian_high()функции, используемые для вычисления соответственно нижней и верхней медианы набора данных.

Пример

data = [1, 2, 3, 4]
median_low_value = statistics.median_low(data)
median_high_value = statistics.median_high(data)
print("Нижняя медиана:", median_low_value)
print("Верхняя медиана:", median_high_value)

Вывод:

中位数低: 2
中位数高: 3

Квантили

Квантили — это значения, которые делят набор данных на несколько равных частей.statisticsМодуль предоставляетquantiles()функция для вычисления квантилей.

Пример

data = [1, 2, 3, 4, 5]
quantiles_value = statistics.quantiles(data, n=4)
print("Quartiles:", quantiles_value)

Вывод:

四分位数: [1.5, 3.0, 4.5]

Методы модуля math

Метод Описание
statistics.harmonic_mean() Вычислить среднее гармоническое для заданного набора данных.
statistics.mean() Вычислить среднее значение набора данных
statistics.median() Вычислить медиану набора данных
statistics.median_grouped() Вычислить медиану сгруппированных данных для заданного сгруппированного набора данных
statistics.median_high() Вычислить верхнюю медиану заданного набора данных
statistics.median_low() Вычислить нижнюю медиану заданного набора данных.
statistics.mode() Вычислить моду набора данных (наиболее часто встречающееся значение)
statistics.pstdev() Вычислить выборочное стандартное отклонение заданного набора данных
statistics.stdev() Вычислить стандартное отклонение набора данных
statistics.pvariance() Вычислить выборочную дисперсию заданного набора данных
statistics.variance() Вычислить дисперсию набора данных
statistics.quantiles() Вычислить квантили набора данных с возможностью указать количество квантилей (по умолчанию — квартили)
Другие расширения