loglfit
statistics: paramhat = loglfit (x)
statistics: [paramhat, paramci] = loglfit (x)
statistics: [paramhat, paramci] = loglfit (x, alpha)
statistics: […] = loglfit (x, alpha, censor)
statistics: […] = loglfit (x, alpha, censor, freq)
statistics: […] = loglfit (x, alpha, censor, freq, options)
Estimate mean and confidence intervals for the log-logistic distribution.
mu0 = loglfit (x) returns the maximum likelihood
estimates of the parameters of the log-logistic distribution given the data
in x. paramhat(1) is the mean parameter, mu, and
paramhat(2) is the scale parameter, sigma.
[paramhat, paramci] = loglfit (x) returns the 95%
confidence intervals for the parameter estimates.
[…] = loglfit (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.
[…] = loglfit (x, alpha, censor) accepts a
boolean vector, censor, of the same size as x with 1s for
observations that are right-censored and 0s for observations that are
observed exactly. By default, or if left empty,
censor = zeros (size (x)).
[…] = loglfit (x, alpha, censor, freq)
accepts a frequency vector, freq, of the same size as x.
freq typically contains integer frequencies for the corresponding
elements in x, but it can contain any non-integer non-negative values.
By default, or if left empty, freq = ones (size (x)).
[…] = loglfit (…, 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.TolX = 1e-6
Further information about the loglogistic distribution can be found at https://en.wikipedia.org/wiki/Log-logistic_distribution
OCTAVE/MATLAB use an alternative parameterization given by the pair , i.e. mu and sigma, in analogy with the logistic distribution. Their relation to the and parameters used in Wikipedia are given below:
mu = log (a)
sigma = 1 / a
See also: loglcdf, loglinv, loglpdf, loglrnd, logllike, loglstat
Source Code: loglfit
Sample 3 populations from different log-logistic distributions
rand ('seed', 5) # for reproducibility
r1 = loglrnd (0, 1, 2000, 1);
rand ('seed', 2) # for reproducibility
r2 = loglrnd (0, 0.5, 2000, 1);
rand ('seed', 7) # for reproducibility
r3 = loglrnd (0, 0.125, 2000, 1);
r = [r1, r2, r3];
Plot them normalized and fix their colors
hist (r, [0.05:0.1:2.5], 10); h = findobj (gca, 'Type', 'patch'); set (h(1), 'facecolor', 'c'); set (h(2), 'facecolor', 'g'); set (h(3), 'facecolor', 'r'); ylim ([0, 3.5]); xlim ([0, 2.0]); hold on
Estimate their MU and LAMBDA parameters
a_bA = loglfit (r(:,1)); a_bB = loglfit (r(:,2)); a_bC = loglfit (r(:,3));
Plot their estimated PDFs
x = [0.01:0.1:2.01];
y = loglpdf (x, a_bA(1), a_bA(2));
plot (x, y, '-pr');
y = loglpdf (x, a_bB(1), a_bB(2));
plot (x, y, '-sg');
y = loglpdf (x, a_bC(1), a_bC(2));
plot (x, y, '-^c');
legend ({'Normalized HIST of sample 1 with α=1 and β=1', ...
'Normalized HIST of sample 2 with α=1 and β=2', ...
'Normalized HIST of sample 3 with α=1 and β=8', ...
sprintf("PDF for sample 1 with estimated α=%0.2f and β=%0.2f", ...
a_bA(1), a_bA(2)), ...
sprintf("PDF for sample 2 with estimated α=%0.2f and β=%0.2f", ...
a_bB(1), a_bB(2)), ...
sprintf("PDF for sample 3 with estimated α=%0.2f and β=%0.2f", ...
a_bC(1), a_bC(2))})
title ('Three population samples from different log-logistic distributions')
hold off