nlFit | R Documentation |
Fits a normal Laplace distribution to data. Displays the histogram, log-histogram (both with fitted densities), Q-Q plot and P-P plot for the fit which has the maximum likelihood.
nlFit(x, freq = NULL, breaks = "FD", paramStart = NULL,
startMethod = "Nelder-Mead",
startValues = c("MoM", "US"),
method = c("Nelder-Mead", "BFGS", "L-BFGS-B",
"nlm", "nlminb"),
hessian = FALSE,
plots = FALSE, printOut = FALSE,
controlBFGS = list(maxit = 200),
controlLBFGSB = list(maxit = 200),
controlNLMINB = list(),
controlNM = list(maxit = 1000),
maxitNLM = 1500, ...)
## S3 method for class 'nlFit'
print(x, digits = max(3, getOption("digits") - 3), ...)
## S3 method for class 'nlFit'
plot(x, which = 1:4,
plotTitles = paste(c("Histogram of ","Log-Histogram of ",
"Q-Q Plot of ","P-P Plot of "), x$obsName,
sep = ""),
ask = prod(par("mfcol")) < length(which) & dev.interactive(), ...)
## S3 method for class 'nlFit'
coef(object, ...)
## S3 method for class 'nlFit'
vcov(object, ...)
x |
Data vector for |
freq |
A vector of weights with length equal to |
breaks |
Breaks for plotted histogram, defaults to those generated by
|
paramStart |
A user specified starting parameter vector taking the form
|
startMethod |
Method used by |
startValues |
Code giving the method of determining starting values for finding the maximum likelihood estimate of the parameters. |
method |
Different optimisation methods to consider. See Details. |
hessian |
Logical. If |
plots |
Logical. If |
printOut |
Logical. If |
controlBFGS |
A list of control parameters for |
controlLBFGSB |
A list of control parameters for |
controlNLMINB |
A list of control parameters for |
controlNM |
A list of control parameters for |
maxitNLM |
A positive integer specifying the maximum number of
iterations that are to be undertaken when using the |
object |
Object of class |
digits |
Desired number of digits to be shown when the object is printed. |
which |
If a subset of the plots if required, specify a subset of
the numbers |
plotTitles |
Titles to appear as the main title above the plots. |
ask |
Logical. If |
... |
Passes arguments to |
startMethod
must be "Nelder-Mead"
.
startValues
can only be "MoM"
when using the Method of
Moments for estimation, or "US"
for user-supplied parameters. For
details regarding the use of paramStart
, startMethod
and
startValues
, see nlFitStart
.
Three optimisation methods are available for use:
"BFGS"
Uses the quasi-Newton method "BFGS"
as
documented in optim
.
"L-BFGS-B"
Uses the constrained method "L-BFGS-B"
as
documented in optim
.
"Nelder-Mead"
Uses an implementation of the Nelder and
Mead method as documented in optim
.
"nlm"
Uses the nlm
function in R.
"nlminb"
Uses the nlminb
function in R,
with constrained parameters.
For details on how to pass control information for optimisation using
optim
and nlm
, see optim
and
nlm
.
When method = "nlm"
or method = "nlm"
is used, warnings
may be produced. However, these do not appear to be problematic.
A list with components:
param |
A vector giving the maximum likelihood estimate of
parameters, as
|
maxLik |
The value of maximised log-likelihood. |
hessian |
If |
method |
Optimisation method used. |
conv |
Convergence code. See the relevant documentation (either
|
iter |
Number of iterations made by the optimisation routine. |
obs |
The data used to fit the normal Laplace distribution. |
obsName |
A character vector with the actual |
paramStart |
Starting value of parameters returned by call to
|
svName |
Descriptive name for the method of finding start values. |
startValues |
Acronym for the method of finding start values. |
breaks |
The cell boundaries found by a call to
|
midpoints |
The cell midpoints found by a call to
|
empDens |
The estimated density found by a call to
|
David Scott d.scott@auckland.ac.nz, Simon Potter
optim
, nlm
, par
,
hist
, logHist
, qqnl
,
ppnl
, dnl
and
nlFitStart
.
param <- c(0, 2, 1, 1)
dataVector <- rnl(1000, param = param)
## Let's see how well nlFit works
nlFit(dataVector)
nlFit(dataVector, plots = TRUE)
fit <- nlFit(dataVector)
par(mfrow = c(1, 2))
plot(fit, which = c(1, 3)) # See only histogram and Q-Q plot
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.