gpfit
              Estimate parameters and confidence intervals for the generalized Pareto distribution.
 paramhat = gpfit (x) returns the maximum likelihood
 estimates of the parameters of the generalized Pareto distribution given the
 data in x.  paramhat(1) is the shape parameter, k,
 and paramhat(2) is the scale parameter, sigma.  Other
 functions for the generalized Pareto, such as gpcdf, allow a location
 parameter, mu.  However, gpfit does not estimate a location
 parameter, and it must be assumed known, and subtracted from x before
 calling gpfit.
 [paramhat, paramci] = gpfit (x) returns the 95%
 confidence intervals for the parameter estimates.
 […] = gpfit (x, alpha) also returns the
 100 * (1 - alpha) percent confidence intervals for the
 parameter estimates.  By default, the optional argument alpha is
 0.05 corresponding to 95% confidence intervals.  Pass in [] for
 alpha to use the default values.
 […] = gpfit (x, alpha, options) specifies
 control parameters for the iterative algorithm used to compute ML estimates
 with the fminsearch function.  options is a structure with the
 following fields and their default values:
 
options.Display = "off"
 options.MaxFunEvals = 400
 options.MaxIter = 200
 options.TolBnd = 1e-6
 options.TolFun = 1e-6
 options.TolX = 1e-6
  When k = 0 and mu = 0, the Generalized Pareto CDF
 is equivalent to the exponential distribution.  When k > 0 and
 mu = k / k the Generalized Pareto is equivalent to
 the Pareto distribution.  The mean of the Generalized Pareto is not finite
 when k >= 1 and the variance is not finite when
 k >= 1/2.  When k >= 0, the Generalized Pareto
 has positive density for x > mu, or, when
 mu < 0, for
 0 <= (x - mu) / sigma <= -1 / k.
Further information about the generalized Pareto distribution can be found at https://en.wikipedia.org/wiki/Generalized_Pareto_distribution
See also: gpcdf, gpinv, gppdf, gprnd, gplike, gpstat
Source Code: gpfit
| 
 ## Sample 2 populations from different generalized Pareto distibutions
 ## Assume location parameter is known
 mu = 0;
 rand ("seed", 5);    # for reproducibility
 r1 = gprnd (1, 2, mu, 20000, 1);
 rand ("seed", 2);    # for reproducibility
 r2 = gprnd (3, 1, mu, 20000, 1);
 r = [r1, r2];
 ## Plot them normalized and fix their colors
 hist (r, [0.1:0.2:100], 5);
 h = findobj (gca, "Type", "patch");
 set (h(1), "facecolor", "r");
 set (h(2), "facecolor", "c");
 ylim ([0, 1]);
 xlim ([0, 5]);
 hold on
 ## Estimate their α and β parameters
 k_sigmaA = gpfit (r(:,1));
 k_sigmaB = gpfit (r(:,2));
 ## Plot their estimated PDFs
 x = [0.01, 0.1:0.2:18];
 y = gppdf (x, k_sigmaA(1), k_sigmaA(2), mu);
 plot (x, y, "-pc");
 y = gppdf (x, k_sigmaB(1), k_sigmaB(2), mu);
 plot (x, y, "-sr");
 hold off
 legend ({"Normalized HIST of sample 1 with k=1 and σ=2", ...
          "Normalized HIST of sample 2 with k=2 and σ=2", ...
          sprintf("PDF for sample 1 with estimated k=%0.2f and σ=%0.2f", ...
                  k_sigmaA(1), k_sigmaA(2)), ...
          sprintf("PDF for sample 3 with estimated k=%0.2f and σ=%0.2f", ...
                  k_sigmaB(1), k_sigmaB(2))})
 title ("Three population samples from different generalized Pareto distibutions")
 text (2, 0.7, "Known location parameter μ = 0")
 hold off
                     | 
