This function implements three chi-squared type goodness-of-fit tests for multivariate normality, namely,
the McCulloch `S2`

test, Nikulin-Rao-Robson `Y2`

and Dzhaparidze-Nikulin `U2`

tests.

1 |

`data` |
A numeric matrix or data frame |

`M` |
A number of equiprobable intervals |

`qqplot` |
if |

Calculates the values of the three chi-squared type test statistics, the McCulloch `S2`

, Nikulin-Rao-Robson `Y2`

and Dzhaparidze-Nikulin `U2`

tests, and the corresponding p-values. The construction of all three tests is based on the Wald's type chi-squared goodness-of-fit tests. The vector of unknown parameters is estimated by the maximum likelihood method.The Karhunen-Loeve transformation is applied to a multi-dimensional sample data in order to diagonalize a sample covariance matrix. The null asymptotic distributions of the `S2`

, `Y2`

and `U2`

tests are chi-squared distributions with `1`

, `M-1`

and `M-2`

degrees of freedom correspondingly.

`s2` |
the value of the McCulloch test |

`p.value.s2` |
the p-value of |

`y2` |
the value of the Nikulin-Rao-Robson test |

`p.value.y2` |
the p-value of |

`u2` |
the value of the Dzhaparidze-Nikulin test |

`p.value.u2` |
the p-value of |

`data.name` |
a character string giving the name of the data |

The displayed result about multivariate normality is based on the McCulloch `S2`

test.

Vassilly Voinov, Natalya Pya, Rashid Makarov, Yevgeniy Voinov

Voinov, V., Pya, N., Makarov, R., and Voinov, Y. (2015) New invariant and consistent chi-squared type goodness-of-fit tests for multivariate normality and a related comparative simulation study. Communications in Statistics - Theory and Methods. doi link: http://www.tandfonline.com/doi/full/10.1080/03610926.2014.901370

Voinov, V., Nikulin, M. and Balakrishnan, N., Chi-squared goodness of fit tests with applications. New York: Academic Press, Elsevier, 2013

`AD.test`

,
`DH.test`

,
`R.test`

, `CM.test`

,
`HZ.test`

1 2 3 4 5 6 7 8 9 10 11 12 13 | ```
## generating n bivariate normal random variables...
dat <- rmvnorm(n=200,mean=rep(0,2),sigma=matrix(c(4,2,2,4),2,2))
res <- S2.test(dat, qqplot = FALSE)
res
## generating n bivariate t distributed with 10df random variables...
dat <- rmvt(n=200,sigma=matrix(c(4,2,2,4),2,2)*.8,df=10,delta=rep(0,2))
res1 <- S2.test(dat, qqplot = TRUE)
res1
data(iris)
setosa = iris[1:50, 1:4] # Iris data only for setosa
res2 <- S2.test(setosa, qqplot = TRUE)
res2
``` |

Questions? Problems? Suggestions? Tweet to @rdrrHQ or email at ian@mutexlabs.com.

All documentation is copyright its authors; we didn't write any of that.