pearsonFitML: Maximum Likelihood Estimation of Pearson Distributions In PearsonDS: Pearson Distribution System

Description

This function tries to find the Maximum Likelihood estimator within the Pearson distribution system. ML estimation is done for all sub-classes of the distribution system via numerical optimization (with `nlminb`). The sub-class with the optimal likelihood function value and the corresponding parameters are returned.

Usage

 `1` ```pearsonFitML(x, ...) ```

Arguments

 `x` empirical data (numerical vector) for MLE. `...` parameters for `nlminb`.

Details

Starting values for each sub-class are found in a three-step procedure. First, the empirical moments of the input vector are calculated. In the second step, the moments are altered, such that the moment restrictions for the current sub-class are fulfilled (if necessary), and the method of moments estimator is calculated to obtain starting values for the optimizer. In the last step, the starting values are adjusted (if necessary) in order to assure that the whole sample lies in the support of the distribution.

Value

List of parameters for Pearson distribution. First entry gives type of distribution (0 for type 0, 1 for type I, ..., 7 for type VII), remaining entries give distribution parameters (depending on distribution type).

Note

The implementation is VERY preliminary (and slow). No analytical results are used, ie. no analytical solutions for ML estimators and no analytical gradients. Most of the distribution types (0, II, III, V, VII) should rather be neglected (for speed reasons), because they will contain the MLE with probability of 0.

Author(s)

Martin Becker [email protected]

References

[1] Johnson, N. L., Kotz, S. and Balakrishnan, N. (1994) Continuous Univariate Distributions, Vol. 1, Wiley Series in Probability and Mathematical Statistics, Wiley

[2] Johnson, N. L., Kotz, S. and Balakrishnan, N. (1994) Continuous Univariate Distributions, Vol. 2, Wiley Series in Probability and Mathematical Statistics, Wiley

`PearsonDS-package`, `Pearson`, `pearsonFitM`, `pearsonMSC`, `pearsonMoments`

Examples

 ```1 2 3 4 5 6 7``` ```## Generate sample DATA <- rpearson(1000,moments=c(mean=1,variance=2,skewness=1,kurtosis=5)) ## find Pearson distribution with these parameters ppar <- pearsonFitML(DATA) print(unlist(ppar)) ## compare with method of moments estimator print(unlist(pearsonFitM(moments=empMoments(DATA)))) ```

Example output

```Loading required namespace: gsl
type          m         nu   location      scale
4.000000  10.140440 -47.545700  -4.404976   2.062994
type          m         nu   location      scale
4.000000   8.732925 -27.186545  -3.617338   2.604331
```

PearsonDS documentation built on July 18, 2017, 1:02 a.m.