mst.mle(X, y, freq, start, fixed.df=NA, trace=FALSE, method="BFGS",
control=list(iter.max=150) )st.mle(X, y, freq, start, fixed.df=NA, trace=FALSE, method="BFGS",
control=list(iter.max=150) )
mst.mle
) or a vector (for st.mle
).
If y
is a matrix, rows refer to observations, and columns to
components of the multivariate distribution.y
.
If X
is supplied, then it must include a column of 1's.y
.beta
,Omega
, alpha
,
df
of the type described below. The dp
component of the returned
list from a previous call has the required format and it can be used as a NA
(default value) if df
is a parameter
to be estimated.trace=TRUE
, details are printed. Default value is FALSE
.optim
;
see the documentation of this function for its usage. Default value is
"BFGS"
.optim
;
see the documentation of this function for its usage.beta
, Omega
, alpha
.
Here, beta
is a matrix of regression coefficients with
dim(beta)=c(ncol(X),ncol(y))
, Omega
is a covariance matrix of
order ncol(y)
, alpha
is a vector of shape parameters of length
ncol(y)
.
Notice that, if st.mle
was called or equivalently mst.mle
was called with y
a vector, then Omega
represents the
square of the scale parameter.beta
, alpha
, info
.
Here, beta
and alpha
are the standard errors for the
corresponding point estimates;
info
is the observed information matrix for the working parameter,
as explained below.optim
; see the documentation
of this function for explanation of its components.shape
parameter which regulates skewness; when shape=0
, the skew-t
distribution reduces to the usual t distribution.
When df=Inf
the distribution reduces to the multivariate skew-normal
one; see dmsn
. See the reference below for additional information.y
is a vector and it is supplied to mst.mle
, then
it is converted to a one-column matrix, and a scalar skew-t
distribution is fitted. This is the mechanism used by st.mle
which is simply an interface to mst.mle
.The parameter freq
is intended for use with grouped data,
setting the values of y
equal to the central values of the
cells; in this case the resulting estimate is an approximation
to the exact maximum likelihood estimate. If freq
is not
set, exact maximum likelihood estimation is performed.
dmst
,msn.mle
,mst.fit
, optim
data(ais, package="sn")
attach(ais)
X.mat <- model.matrix(~lbm+sex)
b <- sn.mle(X.mat, bmi)
#
b <- mst.mle(y=cbind(Ht,Wt))
#
# a multivariate regression case:
a <- mst.mle(X=cbind(1,Ht,Wt), y=bmi, control=list(x.tol=1e-6))
#
# refine the previous outcome
a1 <- mst.mle(X=cbind(1,Ht,Wt), y=bmi, control=list(x.tol=1e-9), start=a$dp)
Run the code above in your browser using DataLab