The Skew-Normal and Related Distributions, such as the Skew-t

Build and manipulate probability distributions of the skew-normal family and some related ones, notably the skew-t family, and provide related statistical methods for data fitting and diagnostics, in the univariate and the multivariate case.


Version 1.4-0 (2016-06-30) Methods confint and predict for selm-class objects are introduced. Fix bug in rmst causing some dependence among subsequent samples; fix bug of modeSECdistrMv affecting certain ST cases; plot.SECdistrBv allows to overlap plots; improved naming of output; profile.selm can now be called with vector(s) param.values of length 1.

Version 1.3-0 (2015-11-11) Method profile.selm is introduced. The object returned by plot.SECdistrMv now includes the coordinates of the contour curves. Fixes a bug affecting rmsn when called using dp= and dp[[1]] is named beta instead of xi.

Version 1.2-5 (2015-09-25) Not released

Version 1.2-4 (2015-08-25) Output of plot.SECdistr is better structured and documented. In pmst, handling of case nu=Inf required a fix. Corrected a bug of internal function msn.dp2dp when called with aux=TRUE and d=1; this affected rmsn and rmst if d=1.

Version 1.2-3 (2015-07-14) Fixed a bug in evaluation of the feasible CP parameter space of univariate ST. Fixed a bug which crashed pmst when called with fractional degrees of freedom. Functions dmsn, pmsn and dmst now expand a single value supplied as 'xi' into a vector or matrix of suitable dimension.

Version 1.2-2 (2015-06-05) Fixed a bug in extractSECdistr from mselm-class objects. Fixed a bug that prevented calling low level fitting functions with non-null 'penalty' argument. Improved documentation of and related functions.

Version 1.2-1 (2015-04-28) Optimization parameters are now passed from selm to sn.mple and st.mple as indicated in the documentation. Plotting of selm-class and mselm-class objects avoids clash of par('cex') parameters. Computation of sn.infoMv now takes into account whether method="MPLE" was used at the estimation stage.

Version 1.2-0 (2015-03-24) Created new functions extractSECdistr and modeSECdistr; new methods mean and sd for class SECdistrUv and new methods mean and vcov for class SECdistrMv. Computation of qst switches to qsn if nu>1e4, instead of nu=Inf as before. Fixed a bug in st.pdev.hessian (correction in args sequence). Improved detection of singular distributions in selm output. Improved handling of component names of SECdistr.

Version 1.1-2 (2014-11-30) Fixed a bug affecting plotting of mselm-class objects under certain circumstances. Fixed a bug affecting function selm when the weights argument contained some 0's. Improved coding in some functions. More functions are exported and their documentation added.

Version 1.1-1 (2014-10-30) Function qsn has an additional argument 'solver'. Functions pmsn and pmst can now be called with argument 'xi' of matrix type. More functions are now exported in NAMESPACE. Fixed a bug about selm.control argument of Improved documentation of various functions.

Version 1.1-0 (2014-08-06) Main few feature is the possibility to set the constraint alpha=0 in function selm and in lower level fitting functions. Other additions or changes are: introduction of OP parameterization; fix a bug in qst; more efficient coding of dmsn and dmst; pmsn can now be called with argument 'x' of matrix type; in pst and qst, new argument method allows to select the algorithm employed. More detailed documentation of pst and other functions and methods.

Version 1.0-0 (2014-01-06) This is a major upgrade of the package, with much of the code completely new or largely re-written, leading to changes in the syntax and the user interface. The key new functions are selm and makeSECdistr, with various related functions and methods. S4 methods are adopted. Many existing functions are updated, a few are dropped; see help(SN) for more information.

Version 0.4-1 to 0.4-18 (2007-2013) Various minor adjustments, many of them to fulfill CRAN programming standards

Version 0.4-0 (2006-04-11) Several changes and additions are included:

  • many routines allow use of composite parameter 'dp'
  • multivariate normal and t probabilities are now computed by 'mnormt'
  • use of NAMESPACE introduced
  • some more routines introduced, eg. st.cumulants.inversion
  • various fixes/improvements in documentation

Version 0.3x (2003--2005) Added some new functions (these include msn.affine, sn.mmle, sn.Einfo, sn.mle.grouped), fix various errors, and other improvements (eg. improved pst)

Version 0.30 (2002-06-15) The main change is the addition of routines for (multivariate) skew-t distribution; also some other routines, e.g. mle for grouped data

Version 0.22.2 (2002-01-05) Fix error in, improved qsn

Version 0.22.1 (2001-05-17)

Version 0.20 (Oct.1998): This is the first public release and distribution via WWW

Reference manual

It appears you don't have a PDF plugin for this browser. You can click here to download the reference manual.


1.5-0 by Adelchi Azzalini, 13 days ago

Browse source code at

Authors: Adelchi Azzalini <>

Documentation:   PDF Manual  

Task views: Probability Distributions, Multivariate Statistics

GPL-2 | GPL-3 license

Imports mnormt, numDeriv, stats, grDevices, graphics, utils

Depends on methods, stats4

Imported by ALDqr, Compositional, SGP, Wrapped, bssn, fAssets, fMultivar, mateable, mvdalab, parfm, ssmn.

Depended on by GenForImp, LIHNPSD, MAINT.Data, Rgbp, cSFM, enveomics.R, tclust.

Suggested by BLCOP, DepthProc, fCopulae, mi, ssym.

See at CRAN