scipy.stats.

ppcc_max#

scipy.stats.ppcc_max(x, brack=Lim (1) 1.0), dist='tukeylambda')[источник]#

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

График коэффициента корреляции вероятностного графика (PPCC) может использоваться для определения оптимального параметра формы для однопараметрического семейства распределений. ppcc_max возвращает параметр формы, который максимизирует коэффициент корреляции вероятностного графика для данных к однопараметрическому семейству распределений.

Параметры:
xarray_like

Входной массив.

brackкортеж, необязательный

Тройка (a,b,c), где (ascipy.optimize.brent).

diststr или экземпляр stats.distributions, опционально

Имя распределения или функции распределения. Объекты, достаточно похожие на экземпляр stats.distributions (т.е. имеющие ppf method) также принимаются. По умолчанию 'tukeylambda'.

Возвращает:
shape_valuefloat

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

Смотрите также

ppcc_plot, probplot, boxcox

Примечания

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

Ссылки

[1]

J.J. Filliben, "The Probability Plot Correlation Coefficient Test for Normality", Technometrics, Vol. 17, pp. 111-117, 1975.

[2]

Инженерный справочник по статистике, NIST/SEMATEC, https://www.itl.nist.gov/div898/handbook/eda/section3/ppccplot.htm

Примеры

Сначала мы генерируем случайные данные из распределения Вейбулла с параметром формы 2.5:

>>> import numpy as np
>>> from scipy import stats
>>> import matplotlib.pyplot as plt
>>> rng = np.random.default_rng()
>>> c = 2.5
>>> x = stats.weibull_min.rvs(c, scale=4, size=2000, random_state=rng)

Сгенерировать график PPCC для этих данных с распределением Вейбулла.

>>> fig, ax = plt.subplots(figsize=(8, 6))
>>> res = stats.ppcc_plot(x, c/2, 2*c, dist='weibull_min', plot=ax)

Мы вычисляем значение, в котором форма должна достичь максимума, и там рисуется красная линия. Линия должна совпадать с самой высокой точкой на графике PPCC.

>>> cmax = stats.ppcc_max(x, brack=(c/2, 2*c), dist='weibull_min')
>>> ax.axvline(cmax, color='r')
>>> plt.show()
../../_images/scipy-stats-ppcc_max-1.png