Статистические функции (scipy.stats)#

Этот модуль содержит большое количество распределений вероятностей, сводную и частотную статистику, корреляционные функции и статистические тесты, маскированную статистику, оценку плотности ядра, функциональность квази-Монте-Карло и многое другое.

Статистика — очень обширная область, и существуют темы, выходящие за рамки SciPy и охватываемые другими пакетами. Некоторые из наиболее важных:

  • statsmodels: регрессия, линейные модели, анализ временных рядов, расширения тем, также охватываемых scipy.stats.

  • Pandas: табличные данные, временные ряды функциональность, интерфейсы к другим статистическим языкам.

  • PyMC: Байесовское статистическое моделирование, вероятностное машинное обучение.

  • scikit-learn: классификация, регрессия, выбор модели.

  • Seaborn: статистическая визуализация данных.

  • rpy2: Мост Python к R.

Вероятностные распределения#

Каждое одномерное распределение является экземпляром подкласса rv_continuous (rv_discrete для дискретных распределений):

rv_continuous([momtype, a, b, xtol, ...])

Универсальный класс непрерывной случайной величины, предназначенный для наследования.

rv_discrete([a, b, name, badvalue, ...])

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

rv_histogram(histogram, *args[, density])

Генерирует распределение, заданное гистограммой.

Непрерывные распределения#

alpha

Альфа непрерывная случайная величина.

anglit

Непрерывная случайная величина anglit.

arcsine

Непрерывная случайная величина с арксинусным распределением.

argus

Распределение Argus

beta

Бета-непрерывная случайная величина.

betaprime

Бета-прайм непрерывная случайная величина.

bradford

Непрерывная случайная величина Брэдфорда.

burr

Непрерывная случайная величина Бёрра (тип III).

burr12

Непрерывная случайная величина Бёрра (тип XII).

cauchy

Непрерывная случайная величина Коши.

chi

Непрерывная случайная величина хи-квадрат.

chi2

Непрерывная случайная величина хи-квадрат.

cosine

Косинусная непрерывная случайная величина.

crystalball

Распределение Crystalball

dgamma

Двойная гамма непрерывная случайная величина.

dpareto_lognorm

Двойная Парето-логнормальная непрерывная случайная величина.

dweibull

Двойная непрерывная случайная величина Вейбулла.

erlang

Непрерывная случайная величина Эрланга.

expon

Экспоненциальная непрерывная случайная величина.

exponnorm

Экспоненциально модифицированная нормальная непрерывная случайная величина.

exponweib

Экспоненциальная Вейбулла непрерывная случайная величина.

exponpow

Экспоненциальная степенная непрерывная случайная величина.

f

Непрерывная случайная величина F.

fatiguelife

Непрерывная случайная величина усталостной долговечности (Бирнбаума-Сондерса).

fisk

Непрерывная случайная величина Фиска.

foldcauchy

Свёрнутая непрерывная случайная величина Коши.

foldnorm

Свернутая нормальная непрерывная случайная величина.

genlogistic

Обобщенная логистическая непрерывная случайная величина.

gennorm

Обобщенная нормальная непрерывная случайная величина.

genpareto

Обобщенная непрерывная случайная величина Парето.

genexpon

Обобщённая экспоненциальная непрерывная случайная величина.

genextreme

Обобщенная экстремальная непрерывная случайная величина.

gausshyper

Гауссова гипергеометрическая непрерывная случайная величина.

gamma

Гамма-непрерывная случайная величина.

gengamma

Обобщенная гамма непрерывная случайная величина.

genhalflogistic

Обобщенная непрерывная случайная величина с полулогистическим распределением.

genhyperbolic

Обобщённая гиперболическая непрерывная случайная величина.

geninvgauss

Обобщённая обратная гауссовская непрерывная случайная величина.

gibrat

Непрерывная случайная величина Гибрэта.

gompertz

Непрерывная случайная величина Гомпертца (или усечённая Гумбеля).

gumbel_r

Правоскошенная непрерывная случайная величина Гумбеля.

gumbel_l

Левоскошенная непрерывная случайная величина Гумбеля.

halfcauchy

Полу-Коши непрерывная случайная величина.

halflogistic

Полулогистическая непрерывная случайная величина.

halfnorm

Полунормальная непрерывная случайная величина.

halfgennorm

Верхняя половина обобщённой нормальной непрерывной случайной величины.

hypsecant

Гиперболический секанс непрерывной случайной величины.

invgamma

Инвертированная гамма непрерывная случайная величина.

invgauss

Непрерывная случайная величина с обратным гауссовским распределением.

invweibull

Инвертированная случайная величина Вейбулла.

irwinhall

Непрерывная случайная величина Ирвина-Холла (сумма равномерных).

jf_skew_t

Распределение скошенного t Джонса и Фадди.

johnsonsb

Непрерывная случайная величина Джонсона SB.

johnsonsu

Непрерывная случайная величина Johnson SU.

kappa4

Распределение с параметром каппа 4.

kappa3

Распределение с параметром каппа 3.

ksone

Распределение статистики одностороннего критерия Колмогорова-Смирнова.

kstwo

Распределение двусторонней статистики критерия Колмогорова-Смирнова.

kstwobign

Предельное распределение масштабированной двусторонней статистики критерия Колмогорова-Смирнова.

landau

Непрерывная случайная величина Ландау.

laplace

Непрерывная случайная величина Лапласа.

laplace_asymmetric

Асимметричная непрерывная случайная величина Лапласа.

levy

Непрерывная случайная величина Леви.

levy_l

Левоскошенная непрерывная случайная величина Леви.

levy_stable

Непрерывная случайная величина с устойчивым распределением Леви.

logistic

Логистическая (или Sech-квадратичная) непрерывная случайная величина.

loggamma

Логарифмическая гамма непрерывная случайная величина.

loglaplace

Лог-лапласовская непрерывная случайная величина.

lognorm

Логнормальная непрерывная случайная величина.

loguniform

Логравномерная или обратная непрерывная случайная величина.

lomax

Непрерывная случайная величина Ломакса (Парето второго рода).

maxwell

Непрерывная случайная величина Максвелла.

mielke

Непрерывная случайная величина Mielke Beta-Kappa / Dagum.

moyal

Непрерывная случайная величина Мойала.

nakagami

Непрерывная случайная величина Накагами.

ncx2

Нецентральная хи-квадрат непрерывная случайная величина.

ncf

Нецентральное F-распределение непрерывной случайной величины.

nct

Нецентральное непрерывное распределение Стьюдента.

norm

Нормальная непрерывная случайная величина.

norminvgauss

Непрерывная случайная величина с нормальным обратным гауссовским распределением.

pareto

Непрерывная случайная величина Парето.

pearson3

Непрерывная случайная величина типа Пирсона III.

powerlaw

Непрерывная случайная величина степенной функции.

powerlognorm

Степенная лог-нормальная непрерывная случайная величина.

powernorm

Случайная величина с непрерывным степенным нормальным распределением.

rdist

Непрерывная случайная величина с R-распределением (симметричное бета-распределение).

rayleigh

Непрерывная случайная величина Рэлея.

rel_breitwigner

Релятивистская случайная величина Брейта-Вигнера.

rice

Непрерывная случайная величина Райса.

recipinvgauss

Непрерывная случайная величина с обратным обратным гауссовским распределением.

semicircular

Полукруглая непрерывная случайная величина.

skewcauchy

Случайная величина с асимметричным распределением Коши.

skewnorm

Случайная величина с асимметричным нормальным распределением.

studentized_range

Стьюдентизированная непрерывная случайная величина диапазона.

t

Непрерывная случайная величина Стьюдента t.

trapezoid

Трапециевидная непрерывная случайная величина.

triang

Треугольная непрерывная случайная величина.

truncexpon

Усечённая экспоненциальная непрерывная случайная величина.

truncnorm

Усеченная нормальная непрерывная случайная величина.

truncpareto

Усеченная сверху непрерывная случайная величина Парето.

truncweibull_min

Дважды усечённая случайная величина Вейбулла минимума непрерывного типа.

tukeylambda

Непрерывная случайная величина Тьюки-Лямбда.

uniform

Равномерная непрерывная случайная величина.

vonmises

Непрерывная случайная величина фон Мизеса.

vonmises_line

Непрерывная случайная величина фон Мизеса.

wald

Непрерывная случайная величина Вальда.

weibull_min

Непрерывная случайная величина Вейбулла минимум.

weibull_max

Непрерывная случайная величина Вейбулла максимума.

wrapcauchy

Обернутая непрерывная случайная величина Коши.

The fit метод одномерных непрерывных распределений использует оценку максимального правдоподобия для подгонки распределения к набору данных. fit метод может принимать обычные данные или цензурированные данные. Цензурированные данные представлены экземплярами класса CensoredData класс.

CensoredData([нецензурированные, левые, правые, интервальные])

Экземпляры этого класса представляют цензурированные данные.

Многомерные распределения#

multivariate_normal

Многомерная нормальная случайная величина.

matrix_normal

Матричная нормальная случайная величина.

dirichlet

Случайная величина Дирихле.

dirichlet_multinomial

Случайная величина Дирихле-мультиномиального распределения.

wishart

Случайная величина Уишарта.

invwishart

Случайная величина обратного распределения Уишарта.

multinomial

Мультиномиальная случайная величина.

special_ortho_group

Случайная величина специальной ортогональной матрицы (SO(N)).

ortho_group

Ортогональная матрица (O(N)) случайная величина.

unitary_group

Матричная случайная величина U(N).

random_correlation

Случайная корреляционная матрица.

multivariate_t

Многомерная случайная величина, распределённая по Стьюденту.

multivariate_hypergeom

Многомерная гипергеометрическая случайная величина.

normal_inverse_gamma

Нормально-обратное гамма распределение.

random_table

Таблицы сопряженности из независимых выборок с фиксированными маргинальными суммами.

uniform_direction

Векторно-значное равномерное направление.

vonmises_fisher

Переменная фон Мизеса-Фишера.

scipy.stats.multivariate_normal методы принимают экземпляры следующего класса для представления ковариации.

Covariance()

Представление ковариационной матрицы

Дискретные распределения#

bernoulli

Дискретная случайная величина Бернулли.

betabinom

Бета-биномиальная дискретная случайная величина.

betanbinom

Бета-отрицательная биномиальная дискретная случайная величина.

binom

Биномиальная дискретная случайная величина.

boltzmann

Случайная величина Больцмана (усечённое дискретное экспоненциальное распределение).

dlaplace

Дискретная случайная величина Лапласа.

geom

Геометрическая дискретная случайная величина.

hypergeom

Гипергеометрическая дискретная случайная величина.

logser

Логарифмическая (логарифмически-рядовая, рядовая) дискретная случайная величина.

nbinom

Отрицательная биномиальная дискретная случайная величина.

nchypergeom_fisher

Нецентральная гипергеометрическая дискретная случайная величина Фишера.

nchypergeom_wallenius

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

nhypergeom

Отрицательная гипергеометрическая дискретная случайная величина.

planck

Дискретная экспоненциальная случайная величина Планка.

poisson

Дискретная случайная величина Пуассона.

poisson_binom

Дискретная случайная величина Пуассона-Биномиала.

randint

Равномерная дискретная случайная величина.

skellam

Дискретная случайная величина Скеллама.

yulesimon

Дискретная случайная величина Юла-Саймона.

zipf

Дискретная случайная величина Ципфа (Дзета).

zipfian

Дискретная случайная величина Ципфа.

Обзор статистических функций приведён ниже. Многие из этих функций имеют аналогичную версию в scipy.stats.mstats которые работают с маскированными массивами.

Сводная статистика#

describe(a[, axis, ddof, bias, nan_policy])

Вычислите несколько описательных статистик переданного массива.

gmean(a[, axis, dtype, weights, nan_policy, ...])

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

hmean(a[, axis, dtype, weights, nan_policy, ...])

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

pmean(a, p, *[, axis, dtype, weights, ...])

Вычислить взвешенное степенное среднее вдоль указанной оси.

kurtosis(a[, axis, fisher, bias, ...])

Вычислить эксцесс (Фишера или Пирсона) набора данных.

mode(a[, axis, nan_policy, keepdims])

Возвращает массив модального (наиболее частого) значения в переданном массиве.

moment(a[, order, axis, nan_policy, center, ...])

Вычислить n-й момент относительно среднего для выборки.

lmoment(sample[, order, axis, sorted, ...])

Вычисление L-моментов выборки из непрерывного распределения

expectile(a[, alpha, weights])

Вычислить экспектиль на указанном уровне.

skew(a[, axis, bias, nan_policy, keepdims])

Вычислить выборочную асимметрию набора данных.

kstat(data[, n, axis, nan_policy, keepdims])

Возвращает n k-статистика ( 1<=n<=4 до сих пор).

kstatvar(data[, n, axis, nan_policy, keepdims])

Возвращает несмещённую оценку дисперсии k-статистики.

tmean(a[, limits, inclusive, axis, ...])

Вычислить усечённое среднее.

tvar(a[, limits, inclusive, axis, ddof, ...])

Вычисление усеченной дисперсии.

tmin(a[, lowerlimit, axis, inclusive, ...])

Вычислить усеченный минимум.

tmax(a[, upperlimit, axis, inclusive, ...])

Вычислить усечённый максимум.

tstd(a[, limits, inclusive, axis, ddof, ...])

Вычисление усеченного стандартного отклонения выборки.

tsem(a[, limits, inclusive, axis, ddof, ...])

Вычислить усеченную стандартную ошибку среднего.

variation(a[, axis, nan_policy, ddof, keepdims])

Вычислить коэффициент вариации.

find_repeats(arr)

Найти повторы и количество повторений.

rankdata(a[, method, axis, nan_policy])

Назначьте ранги данным, корректно обрабатывая связи.

tiecorrect(rankvals)

Поправочный коэффициент для связей в тестах Манна-Уитни U и Краскела-Уоллиса H.

trim_mean(a, proportiontocut[, axis])

Возвращает среднее значение массива после обрезки заданной доли экстремальных значений

gstd(a[, axis, ddof, keepdims, nan_policy])

Вычислить геометрическое стандартное отклонение массива.

iqr(x[, axis, rng, scale, nan_policy, ...])

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

sem(a[, axis, ddof, nan_policy, keepdims])

Вычислить стандартную ошибку среднего.

bayes_mvs(data[, alpha])

Байесовские доверительные интервалы для среднего, дисперсии и стандартного отклонения.

mvsdist(данные)

'Замороженные' распределения для среднего, дисперсии и стандартного отклонения данных.

entropy(pk[, qk, base, axis, nan_policy, ...])

Вычислить энтропию Шеннона/относительную энтропию заданного распределения(й).

differential_entropy(values, *[, ...])

По выборке из распределения оценить дифференциальную энтропию.

median_abs_deviation(x[, axis, center, ...])

Вычислить медианное абсолютное отклонение данных вдоль заданной оси.

Частотная статистика#

cumfreq(a[, numbins, defaultreallimits, weights])

Вернуть кумулятивную гистограмму частот, используя функцию гистограммы.

quantile(x, p, *[, method, axis, ...])

Вычислить p-й квантиль данных вдоль указанной оси.

percentileofscore(a, score[, kind, nan_policy])

Вычисление процентильного ранга оценки относительно списка оценок.

scoreatpercentile(a, per[, limit, ...])

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

relfreq(a[, numbins, defaultreallimits, weights])

Вернуть гистограмму относительных частот, используя функцию гистограммы.

binned_statistic(x, values[, statistic, ...])

Вычислить бинированную статистику для одного или нескольких наборов данных.

binned_statistic_2d(x, y, values[, ...])

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

binned_statistic_dd(sample, values[, ...])

Вычисление многомерной бинированной статистики для набора данных.

Случайные величины#

make_distribution(dist)

Сгенерировать UnivariateDistribution класс из совместимого объекта

Normal([mu, sigma])

Нормальное распределение с заданным средним и стандартным отклонением.

Uniform(*[, a, b])

Равномерное распределение.

Binomial(*, n, p, **kwargs)

Биномиальное распределение с заданной вероятностью успеха и количеством испытаний

Mixture(components, *[, weights])

Представление смешанного распределения.

order_statistic(X, /, *, r, n)

Распределение вероятностей порядковой статистики

truncate(X[, lb, ub])

Усечь носитель случайной величины.

abs(X, /)

Абсолютное значение случайной величины

exp(X, /)

Натуральная экспонента случайной величины

log(X, /)

Натуральный логарифм неотрицательной случайной величины

Квази-Монте-Карло#

Таблицы сопряженности#

Маскированные статистические функции#

Другая статистическая функциональность#

Преобразования#

boxcox(x[, lmbda, alpha, optimizer])

Возвращает набор данных, преобразованный с помощью преобразования Бокса-Кокса.

boxcox_normmax(x[, brack, method, ...])

Вычислить оптимальный параметр преобразования Бокса-Кокса для входных данных.

boxcox_llf(lmb, data, *[, axis, keepdims, ...])

Функция правдоподобия для преобразования Бокса-Кокса.

yeojohnson(x[, lmbda])

Возвращает набор данных, преобразованный с помощью преобразования Йео-Джонсона.

yeojohnson_normmax(x[, brack])

Вычислить оптимальный параметр преобразования Йео-Джонсона.

yeojohnson_llf(lmb, data)

Функция правдоподобия логарифма yeojohnson.

obrientransform(*samples)

Вычислить преобразование О'Брайена на входных данных (любое количество массивов).

sigmaclip(a[, low, high])

Выполнить итеративное сигма-отсечение элементов массива.

trimboth(a, proportiontocut[, axis])

Отсечь пропорцию элементов с обоих концов массива.

trim1(a, proportiontocut[, tail, axis])

Отсечь долю с ОДНОГО конца переданного распределения массива.

zmap(scores, compare[, axis, ddof, nan_policy])

Вычислить относительные z-оценки.

zscore(a[, axis, ddof, nan_policy])

Вычислить z-оценку.

gzscore(a, *[, axis, ddof, nan_policy])

Вычислить геометрический стандартный балл.

Статистические расстояния#

wasserstein_distance(u_values, v_values[, ...])

Вычисляет расстояние Вассерштейна-1 между двумя одномерными дискретными распределениями.

wasserstein_distance_nd(u_values, v_values)

Вычислить расстояние Вассерштейна-1 между двумя N-мерными дискретными распределениями.

energy_distance(u_values, v_values[, ...])

Вычислите энергетическое расстояние между двумя одномерными распределениями.

Выборка#

Подгонка / Анализ выживаемости#

fit(dist, data[, bounds, guess, method, ...])

Подгонка дискретного или непрерывного распределения к данным

ecdf(выборка)

Эмпирическая функция распределения выборки.

logrank(x, y[, alternative])

Сравнить распределения выживаемости двух выборок с помощью логранк-теста.

Направленные статистические функции#

directional_stats(samples, *[, axis, normalize])

Вычисляет выборочную статистику для направленных данных.

circmean(samples[, high, low, axis, ...])

Вычисление кругового среднего выборки угловых наблюдений.

circvar(samples[, high, low, axis, ...])

Вычислить круговую дисперсию выборки угловых наблюдений.

circstd(samples[, high, low, axis, ...])

Вычислить круговое стандартное отклонение выборки угловых наблюдений.

Анализ чувствительности#

sobol_indices(*, func, n[, dists, method, ...])

Глобальные индексы чувствительности Соболя.

Plot-tests#

ppcc_max(x[, brack, dist])

Вычислить параметр формы, который максимизирует PPCC.

ppcc_plot(x, a, b[, dist, plot, N])

Вычислить и, возможно, построить график коэффициента корреляции вероятностного графика.

probplot(x[, sparams, dist, fit, plot, rvalue])

Вычислить квантили для вероятностного графика и, опционально, показать график.

boxcox_normplot(x, la, lb[, plot, N])

Вычислить параметры для графика нормальности Бокса-Кокса, при необходимости отобразить его.

yeojohnson_normplot(x, la, lb[, plot, N])

Вычислить параметры для графика нормальности Йео-Джонсона, при необходимости отобразить его.

Одномерная и многомерная оценка плотности ядра#

gaussian_kde(dataset[, bw_method, weights])

Представление оценки плотности ядра с использованием гауссовских ядер.

Предупреждения / Ошибки, используемые в scipy.stats#

DegenerateDataWarning([msg])

Предупреждает, когда данные вырождены и результаты могут быть ненадежными.

ConstantInputWarning([msg])

Предупреждает, когда все значения в данных точно равны.

NearConstantInputWarning([msg])

Предупреждает, когда все значения в данных почти равны.

FitError([msg])

Представляет условие ошибки при подгонке распределения к данным.

Классы результатов, используемые в scipy.stats#

Предупреждение

Эти классы являются приватными, но они включены сюда, потому что экземпляры их возвращаются другими статистическими функциями. Импорт пользователем и создание экземпляров не поддерживается.