# sn-st.info: Expected and observed Fisher information for SN and ST... In sn: The Skew-Normal and Related Distributions Such as the Skew-t

## Description

Computes Fisher information for parameters of simple sample having skew-normal (SN) or skew-t (ST) distribution or for a regression model with errors term having such distributions, in the DP and CP parametrizations.

## Usage

 ```1 2 3 4 5 6 7 8 9``` ```sn.infoUv(dp=NULL, cp=NULL, x=NULL, y, w, penalty=NULL, norm2.tol=1e-06) sn.infoMv(dp, x=NULL, y, w, penalty=NULL, norm2.tol=1e-06) st.infoUv(dp = NULL, cp = NULL, x = NULL, y, w, fixed.nu = NULL, symmetr = FALSE, penalty = NULL, norm2.tol = 1e-06) st.infoMv(dp, x = NULL, y, w, fixed.nu = NULL, symmetr = FALSE, penalty = NULL, norm2.tol = 1e-06) ```

## Arguments

 `dp, cp` direct or centred parameters, respectively; one of them can be a non-`NULL` argument. For the univariate SN distribution, `sn.infoUv` is to be used, and these arguments are vectors. In the multivariate case, `sn.infoMv` is to be used and these arguments are lists. See `dp2cp` for their description. `x` an optional matrix which represents the design matrix of a regression model `y` a numeric vector (for `sn.infoUv` and `st.infoUv`) or a matrix (for `sn.infoMv` and `st.infoMv`) representing the response. In the SN case ( `sn.infoUv` and `sn.infoMv`), `y` can be missing, and in this case the expected information matrix is computed; otherwise the observed information is computed. In the ST case (`st.infoUv` and `st.infoMv`), `y` is a required argument, since only the observed information matrix for ST distributions is implemented. See ‘Details’ for additional information. `w` an optional vector of weights (only meaningful for the observed information, hence if `y` is missing); if missing, a vector of 1's is generated. `fixed.nu` an optional numeric value which declares a fixed value of the degrees of freedom, `nu`. If not `NULL`, the information matrix has a dimension reduced by 1. `symmetr` a logical flag which indicates whether a symmetry condition of the distribution is being imposed; default is `symmetr=FALSE`. `penalty` a optional character string with the name of the penalty function used in the call to `selm`; see this function for its description. `norm2.tol` for the observed information case, the Mahalanobis squared distance of the score function from 0 is evaluated; if it exceeds `norm2.tol`, a warning message is issued, since the ‘information matrix’ so evaluated may be not positive-definite. See ‘Details’ for additional information.

## Value

a list containing the following components:

 `dp, cp` one of the two arguments is the one supplied on input; the other one matches the previous one in the alternative parametrization. `type` the type of information matrix: "observed" or "expected". `info.dp, info.cp` matrices of Fisher (observed or expected) information in the two parametrizations. `asyvar.dp, asyvar.cp` inverse matrices of Fisher information in the two parametrizations, when available; See ‘Details’ for additional information. `aux` a list containing auxiliary elements, depending of the selected function and the type of computation.

## Details

In the univariate SN case, when `x` is not set, then a simple random sample is assumed and a matrix `x` with a single column of all 1's is constructed; in this case, the supplied vector `dp` or `cp` must have length 3. If `x` is set, then the supplied vector of parameters, `dp` or `cp`, must have length `ncol(x)+2`. In the multivariate case, a direct extension of this scheme applies.

If the observed information matrix is required, `dp` or `cp` should represent the maximum likelihood estimates (MLE) for the given `y`, otherwise the information matrix may fail to be positive-definite and it would be meaningless anyway. Therefore, the squared Mahalobis norm of the score vector is evaluated and compared with `norm2.tol`. If it exceeds this threshold, this is taken as an indication that the supplied parameter list is not at the MLE and a warning message is issued. The returned list still includes `info.dp` and `info.cp`, but in this case these represent merely the matrices of second derivatives; `asyvar.dp` and `asyvar.cp` are set to `NULL`.

## Background

The information matrix for the the univariate SN distribution in the two stated parameterizations in discussed in Sections 3.1.3–4 of Azzalini and Capitanio (2014). For the multivariate distribution, Section 5.2.2 of this monograph summarizes briefly the findings of Arellano-Valle and Azzalini (2008).

For ST distributions, only the observed information matrix is provided, at the moment. Computation for the univariate case is based on DiCiccio and Monti (2011). For the multivariate case, the score function is computed using an expression of Arellano-Valle (2010) followed by numerical differentiation.

## References

Arellano-Valle, R. B. (2010). The information matrix of the multivariate skew-t distribution. Metron, LXVIII, 371–386.

Arellano-Valle, R. B., and Azzalini, A. (2008). The centred parametrization for the multivariate skew-normal distribution. J. Multiv. Anal. 99, 1362–1382. Corrigendum: 100 (2009), 816.

Azzalini, A. with the collaboration of Capitanio, A. (2014). The Skew-Normal and Related Families. Cambridge University Press, IMS Monographs series.

DiCiccio, T. J. and Monti, A. C. (2011). Inferential aspects of the skew t-distribution. Quaderni di Statistica 13, 1–21.

`dsn`, `dmsn`, `dp2cp`
 ``` 1 2 3 4 5 6 7 8 9 10``` ```infoE <- sn.infoUv(dp=c(0,1,5)) # expected information set.seed(1); rnd <- rsn(100, dp=c(0, 1, 3)) fit <- selm(rnd~1, family="SN") infoO <- sn.infoUv(cp=coef(fit), y=rnd) # observed information # data(wines) X <- model.matrix(~ pH + wine, data=wines) fit <- sn.mple(x=X, y=wines\$alcohol) infoE <- sn.infoUv(cp=fit\$cp, x=X) infoO <- sn.infoUv(cp=fit\$cp, x=X, y=wines\$alcohol) ```