### Function Reference: `hnfit`

statistics: [paramhat, paramci] = hnfit (x, mu)
statistics: [paramhat, paramci] = hnfit (x, mu, alpha)
statistics: [paramhat, paramci] = hnfit (x, mu, alpha, freq)

Estimate parameters and confidence intervals for the half-normal distribution.

`paramhat = hnfit (x, mu)` returns the maximum likelihood estimates of the parameters of the half-normal distribution given the data in vector x and the location parameter mu. `paramhat(1)` is the location parameter, mu, and `paramhat(2)` is the scale parameter, sigma. Although mu is returned in the estimated paramhat, `hnfit` does not estimate the location parameter mu, and it must be assumed to be known, given as a fixed parameter in input argument mu.

`[paramhat, paramci] = hnfit (x, mu)` returns the 95% confidence intervals for the estimated scale parameter sigma. The first colummn of paramci includes the location parameter mu without any confidence bounds.

`[…] = hnfit (x, alpha)` also returns the `100 * (1 - alpha)` percent confidence intervals of the estimated scale parameter. By default, the optional argument alpha is 0.05 corresponding to 95% confidence intervals.

`[…] = hnfit (params, x, freq)` accepts a frequency vector, freq, of the same size as x. freq must contain non-negative integer frequencies for the corresponding elements in x. By default, or if left empty, `freq = ones (size (x))`.

The half-normal CDF is only defined for `x >= mu`.

Further information about the half-normal distribution can be found at https://en.wikipedia.org/wiki/Half-normal_distribution

See also: hncdf, hninv, hnpdf, hnrnd, hnlike, hnstat

Source Code: hnfit

### Example: 1

     ## Sample 2 populations from different half-normal distibutions
     rand ("seed", 1);   # for reproducibility
     r1 = hnrnd (0, 5, 5000, 1);
     rand ("seed", 2);   # for reproducibility
     r2 = hnrnd (0, 2, 5000, 1);
     r = [r1, r2];

     ## Plot them normalized and fix their colors
     hist (r, [0.5:20], 1);
     h = findobj (gca, "Type", "patch");
     set (h(1), "facecolor", "c");
     set (h(2), "facecolor", "g");
     hold on

     ## Estimate their shape parameters
     mu_sigmaA = hnfit (r(:,1), 0);
     mu_sigmaB = hnfit (r(:,2), 0);

     ## Plot their estimated PDFs
     x = [0:0.2:10];
     y = hnpdf (x, mu_sigmaA(1), mu_sigmaA(2));
     plot (x, y, "-pr");
     y = hnpdf (x, mu_sigmaB(1), mu_sigmaB(2));
     plot (x, y, "-sg");
     xlim ([0, 10])
     ylim ([0, 0.5])
     legend ({"Normalized HIST of sample 1 with μ=0 and σ=5", ...
              "Normalized HIST of sample 2 with μ=0 and σ=2", ...
              sprintf("PDF for sample 1 with estimated μ=%0.2f and σ=%0.2f", ...
                      mu_sigmaA(1), mu_sigmaA(2)), ...
              sprintf("PDF for sample 2 with estimated μ=%0.2f and σ=%0.2f", ...
                      mu_sigmaB(1), mu_sigmaB(2))})
     title ("Two population samples from different half-normal distibutions")
     hold off