Hướng dẫn python fit gumbel distribution

scipy.stats.gumbel_r=[source]#

A right-skewed Gumbel continuous random variable.

As an instance of the rv_continuous class, gumbel_r object inherits from it a collection of generic methods [see below for the full list], and completes them with details specific for this particular distribution.

Notes

The probability density function for gumbel_r is:

\[f[x] = \exp[-[x + e^{-x}]]\]

The Gumbel distribution is sometimes referred to as a type I Fisher-Tippett distribution. It is also related to the extreme value distribution, log-Weibull and Gompertz distributions.

The probability density above is defined in the “standardized” form. To shift and/or scale the distribution use the loc and scale parameters. Specifically, gumbel_r.pdf[x, loc, scale] is identically equivalent to gumbel_r.pdf[y] / scale with y = [x - loc] / scale. Note that shifting the location of a distribution does not make it a “noncentral” distribution; noncentral generalizations of some distributions are available in separate classes.

Examples

>>> from scipy.stats import gumbel_r
>>> import matplotlib.pyplot as plt
>>> fig, ax = plt.subplots[1, 1]

Calculate the first four moments:

>>> mean, var, skew, kurt = gumbel_r.stats[moments='mvsk']

Display the probability density function [pdf]:

>>> x = np.linspace[gumbel_r.ppf[0.01],
...                 gumbel_r.ppf[0.99], 100]
>>> ax.plot[x, gumbel_r.pdf[x],
...        'r-', lw=5, alpha=0.6, label='gumbel_r pdf']

Alternatively, the distribution object can be called [as a function] to fix the shape, location and scale parameters. This returns a “frozen” RV object holding the given parameters fixed.

Freeze the distribution and display the frozen pdf:

>>> rv = gumbel_r[]
>>> ax.plot[x, rv.pdf[x], 'k-', lw=2, label='frozen pdf']

Check accuracy of cdf and ppf:

>>> vals = gumbel_r.ppf[[0.001, 0.5, 0.999]]
>>> np.allclose[[0.001, 0.5, 0.999], gumbel_r.cdf[vals]]
True

Generate random numbers:

>>> r = gumbel_r.rvs[size=1000]

And compare the histogram:

>>> ax.hist[r, density=True, histtype='stepfilled', alpha=0.2]
>>> ax.legend[loc='best', frameon=False]
>>> plt.show[]

Methods

rvs[loc=0, scale=1, size=1, random_state=None]

Random variates.

pdf[x, loc=0, scale=1]

Probability density function.

logpdf[x, loc=0, scale=1]

Log of the probability density function.

cdf[x, loc=0, scale=1]

Cumulative distribution function.

logcdf[x, loc=0, scale=1]

Log of the cumulative distribution function.

sf[x, loc=0, scale=1]

Survival function [also defined as 1 - cdf, but sf is sometimes more accurate].

logsf[x, loc=0, scale=1]

Log of the survival function.

ppf[q, loc=0, scale=1]

Percent point function [inverse of cdf — percentiles].

isf[q, loc=0, scale=1]

Inverse survival function [inverse of sf].

moment[order, loc=0, scale=1]

Non-central moment of the specified order.

stats[loc=0, scale=1, moments=’mv’]

Mean[‘m’], variance[‘v’], skew[‘s’], and/or kurtosis[‘k’].

entropy[loc=0, scale=1]

[Differential] entropy of the RV.

fit[data]

Parameter estimates for generic data. See scipy.stats.rv_continuous.fit for detailed documentation of the keyword arguments.

expect[func, args=[], loc=0, scale=1, lb=None, ub=None, conditional=False, **kwds]

Expected value of a function [of one argument] with respect to the distribution.

median[loc=0, scale=1]

Median of the distribution.

mean[loc=0, scale=1]

Mean of the distribution.

var[loc=0, scale=1]

Variance of the distribution.

std[loc=0, scale=1]

Standard deviation of the distribution.

interval[confidence, loc=0, scale=1]

Confidence interval with equal areas around the median.

Chủ Đề