MardiaKurtosisTest
✖
MardiaKurtosisTest
tests whether data follows a MultinormalDistribution using the Mardia kurtosis test.
Details and Options



- MardiaKurtosisTest performs the Mardia kurtosis goodness-of-fit test with null hypothesis
that data was drawn from a MultinormalDistribution and alternative hypothesis
that it was not.
- By default, a probability value or
-value is returned.
- A small
-value suggests that it is unlikely that the data is normally distributed.
- The data can be univariate {x1,x2,…} or multivariate {{x1,y1,…},{x2,y2,…},…}.
- The Mardia kurtosis test effectively compares a multivariate measure of kurtosis for data to a MultinormalDistribution.
- MardiaKurtosisTest[data,dist,"HypothesisTestData"] returns a HypothesisTestData object htd that can be used to extract additional test results and properties using the form htd["property"].
- MardiaKurtosisTest[data,dist,"property"] can be used to directly give the value of "property".
- PearsonChiSquareTest[data,dist,"property"] can be used to directly give the value of "property".
- Properties related to the reporting of test results include:
-
"DegreesOfFreedom" the degrees of freedom used in a test "PValue" -value
"PValueTable" formatted version of "PValue" "ShortTestConclusion" a short description of the conclusion of a test "TestConclusion" a description of the conclusion of a test "TestData" test statistic and -value
"TestDataTable" formatted version of "TestData" "TestStatistic" test statistic "TestStatisticTable" formatted "TestStatistic" - The following properties are independent of which test is being performed.
- Properties related to the data distribution include:
-
"FittedDistribution" fitted distribution of data "FittedDistributionParameters" distribution parameters of data - The following options can be given:
-
Method Automatic the method to use for computing -values
SignificanceLevel 0.05 cutoff for diagnostics and reporting - For a test for goodness-of-fit, a cutoff
is chosen such that
is rejected only if
. The value of
used for the "TestConclusion" and "ShortTestConclusion" properties is controlled by the SignificanceLevel option. By default,
is set to 0.05.
- The following methods can be used to compute
-values:
-
Automatic correct for small samples up to dimension 5 "Asymptotic" use the asymptotic distribution of the test statistic "MonteCarlo" use Monte Carlo simulation - With the setting Method-> "MonteCarlo",
datasets of the same length as the input
are generated under
using the fitted distribution. The EmpiricalDistribution from "MonteCarlo" MardiaKurtosisTest[si,"TestStatistic"] is then used to estimate the
-value.
Examples
open allclose allBasic Examples (3)Summary of the most common use cases
Perform a test for multivariate normality:

https://wolfram.com/xid/0b6g2u59e1po1v6m4hx3k2-ijo5

https://wolfram.com/xid/0b6g2u59e1po1v6m4hx3k2-hnfx0t

Extract the test statistic from the Mardia kurtosis test:

https://wolfram.com/xid/0b6g2u59e1po1v6m4hx3k2-m3chh3

https://wolfram.com/xid/0b6g2u59e1po1v6m4hx3k2-cm7ucc

Obtain a formatted test table:

https://wolfram.com/xid/0b6g2u59e1po1v6m4hx3k2-p7hfx

https://wolfram.com/xid/0b6g2u59e1po1v6m4hx3k2-cr9vsu

Scope (5)Survey of the scope of standard use cases
Testing (2)
Perform a Mardia kurtosis test for multivariate normality:

https://wolfram.com/xid/0b6g2u59e1po1v6m4hx3k2-lqxbgq
The -value for the normal data is large compared to the
-value for the non-normal data:

https://wolfram.com/xid/0b6g2u59e1po1v6m4hx3k2-mks25


https://wolfram.com/xid/0b6g2u59e1po1v6m4hx3k2-kjd2s

Create a HypothesisTestData object for repeated property extraction:

https://wolfram.com/xid/0b6g2u59e1po1v6m4hx3k2-cdnr2n

https://wolfram.com/xid/0b6g2u59e1po1v6m4hx3k2-bolz27

The properties available for extraction:

https://wolfram.com/xid/0b6g2u59e1po1v6m4hx3k2-e40fsc

Reporting (3)
Tabulate the results of the Mardia kurtosis test:

https://wolfram.com/xid/0b6g2u59e1po1v6m4hx3k2-cqxopz

https://wolfram.com/xid/0b6g2u59e1po1v6m4hx3k2-be6kk1

https://wolfram.com/xid/0b6g2u59e1po1v6m4hx3k2-ef4et7


https://wolfram.com/xid/0b6g2u59e1po1v6m4hx3k2-bfqugt


https://wolfram.com/xid/0b6g2u59e1po1v6m4hx3k2-oi9r56

Retrieve the entries from a Mardia kurtosis test table for custom reporting:

https://wolfram.com/xid/0b6g2u59e1po1v6m4hx3k2-s3qsd

https://wolfram.com/xid/0b6g2u59e1po1v6m4hx3k2-ga3bij


https://wolfram.com/xid/0b6g2u59e1po1v6m4hx3k2-gg2n22


https://wolfram.com/xid/0b6g2u59e1po1v6m4hx3k2-65k71

Report test conclusions using "ShortTestConclusion" and "TestConclusion":

https://wolfram.com/xid/0b6g2u59e1po1v6m4hx3k2-bkir6y

https://wolfram.com/xid/0b6g2u59e1po1v6m4hx3k2-cd96sm

https://wolfram.com/xid/0b6g2u59e1po1v6m4hx3k2-ggy9zn


https://wolfram.com/xid/0b6g2u59e1po1v6m4hx3k2-el9mb

The conclusion may differ at a different significance level:

https://wolfram.com/xid/0b6g2u59e1po1v6m4hx3k2-c53cri

https://wolfram.com/xid/0b6g2u59e1po1v6m4hx3k2-byyexa


https://wolfram.com/xid/0b6g2u59e1po1v6m4hx3k2-bc67bi

Options (4)Common values & functionality for each option
Method (3)
Use Monte Carlo-based methods or a computation formula:

https://wolfram.com/xid/0b6g2u59e1po1v6m4hx3k2-b56tvj

https://wolfram.com/xid/0b6g2u59e1po1v6m4hx3k2-eyrfe


https://wolfram.com/xid/0b6g2u59e1po1v6m4hx3k2-evuhgg

Set the number of samples to use for Monte Carlo-based methods:

https://wolfram.com/xid/0b6g2u59e1po1v6m4hx3k2-xg6xc

https://wolfram.com/xid/0b6g2u59e1po1v6m4hx3k2-499mh
The Monte Carlo estimate converges to the true -value with increasing samples:

https://wolfram.com/xid/0b6g2u59e1po1v6m4hx3k2-eli8sg

https://wolfram.com/xid/0b6g2u59e1po1v6m4hx3k2-ba5c5u

Set the random seed used in Monte Carlo-based methods:

https://wolfram.com/xid/0b6g2u59e1po1v6m4hx3k2-ccet45

https://wolfram.com/xid/0b6g2u59e1po1v6m4hx3k2-ip8pt1
The seed affects the state of the generator and has some effect on the resulting -value:

https://wolfram.com/xid/0b6g2u59e1po1v6m4hx3k2-pfg0ok

SignificanceLevel (1)
Set the significance level used for "TestConclusion" and "ShortTestConclusion":

https://wolfram.com/xid/0b6g2u59e1po1v6m4hx3k2-kj9pa

https://wolfram.com/xid/0b6g2u59e1po1v6m4hx3k2-qafg


https://wolfram.com/xid/0b6g2u59e1po1v6m4hx3k2-bu4h57


https://wolfram.com/xid/0b6g2u59e1po1v6m4hx3k2-b50sx2

Applications (2)Sample problems that can be solved with this function
A power curve for the Mardia kurtosis test:

https://wolfram.com/xid/0b6g2u59e1po1v6m4hx3k2-f9ry9j

https://wolfram.com/xid/0b6g2u59e1po1v6m4hx3k2-bhp5v

https://wolfram.com/xid/0b6g2u59e1po1v6m4hx3k2-fyqopk
Visualize the approximate power curve:

https://wolfram.com/xid/0b6g2u59e1po1v6m4hx3k2-eel2vq

Estimate the power of the Mardia kurtosis test when the underlying distribution is a MultivariateTDistribution, the test size is 0.05, and the sample size is 27:

https://wolfram.com/xid/0b6g2u59e1po1v6m4hx3k2-z6f7c

Measures of petal and sepal dimensions for three varieties of iris were recorded. A multivariate test of means can be used as a quick check that the measures might be useful in discriminating between two similar species but is only valid if the data follows a multivariate normal distribution:

https://wolfram.com/xid/0b6g2u59e1po1v6m4hx3k2-eenalg

https://wolfram.com/xid/0b6g2u59e1po1v6m4hx3k2-s0acha


https://wolfram.com/xid/0b6g2u59e1po1v6m4hx3k2-ij4e88
The multivariate kurtosis of the two species is similar to a multivariate normal distribution:

https://wolfram.com/xid/0b6g2u59e1po1v6m4hx3k2-gm520g


https://wolfram.com/xid/0b6g2u59e1po1v6m4hx3k2-biwspi

The multivariate skewness should also be checked to confirm normality:

https://wolfram.com/xid/0b6g2u59e1po1v6m4hx3k2-jbz11


https://wolfram.com/xid/0b6g2u59e1po1v6m4hx3k2-c2pnp3

The data appears normal, so TTest is valid:

https://wolfram.com/xid/0b6g2u59e1po1v6m4hx3k2-b448mx

Properties & Relations (5)Properties of the function, and connections to other functions
The multivariate test statistic:

https://wolfram.com/xid/0b6g2u59e1po1v6m4hx3k2-h7l4x6

https://wolfram.com/xid/0b6g2u59e1po1v6m4hx3k2-dsep4w

https://wolfram.com/xid/0b6g2u59e1po1v6m4hx3k2-ldjsds


https://wolfram.com/xid/0b6g2u59e1po1v6m4hx3k2-etir6z

The univariate test statistic:

https://wolfram.com/xid/0b6g2u59e1po1v6m4hx3k2-ibppux

https://wolfram.com/xid/0b6g2u59e1po1v6m4hx3k2-d959th

https://wolfram.com/xid/0b6g2u59e1po1v6m4hx3k2-broj7t


https://wolfram.com/xid/0b6g2u59e1po1v6m4hx3k2-ieqkgx

The multivariate test statistic has an asymptotic NormalDistribution[0,1]:

https://wolfram.com/xid/0b6g2u59e1po1v6m4hx3k2-duofhl

https://wolfram.com/xid/0b6g2u59e1po1v6m4hx3k2-ezrqap


https://wolfram.com/xid/0b6g2u59e1po1v6m4hx3k2-clhj8e

The asymptotic -value can be very inaccurate for small samples:

https://wolfram.com/xid/0b6g2u59e1po1v6m4hx3k2-k5txjs

https://wolfram.com/xid/0b6g2u59e1po1v6m4hx3k2-d6svmq


https://wolfram.com/xid/0b6g2u59e1po1v6m4hx3k2-iprgm

For comparison, the Monte Carlo -value is much closer to the small-sample value:

https://wolfram.com/xid/0b6g2u59e1po1v6m4hx3k2-frv7oy

https://wolfram.com/xid/0b6g2u59e1po1v6m4hx3k2-ff2j5l

https://wolfram.com/xid/0b6g2u59e1po1v6m4hx3k2-cmetx4

Mardia's kurtosis test can only detect departures from normality in kurtosis:

https://wolfram.com/xid/0b6g2u59e1po1v6m4hx3k2-bx8on9
The data is clearly not normally distributed:

https://wolfram.com/xid/0b6g2u59e1po1v6m4hx3k2-ds92d7


https://wolfram.com/xid/0b6g2u59e1po1v6m4hx3k2-m074ru

Decisions should be based on MardiaSkewnessTest and MardiaKurtosisTest:

https://wolfram.com/xid/0b6g2u59e1po1v6m4hx3k2-e08lru

The Mardia kurtosis test works with the values only when the input is a TimeSeries:

https://wolfram.com/xid/0b6g2u59e1po1v6m4hx3k2-7py5sj

https://wolfram.com/xid/0b6g2u59e1po1v6m4hx3k2-of2jx


https://wolfram.com/xid/0b6g2u59e1po1v6m4hx3k2-57bf57


https://wolfram.com/xid/0b6g2u59e1po1v6m4hx3k2-vvd88

Possible Issues (1)Common pitfalls and unexpected behavior
If the covariance matrix of the data is not positive definite, the test will fail:

https://wolfram.com/xid/0b6g2u59e1po1v6m4hx3k2-e2fnxq

https://wolfram.com/xid/0b6g2u59e1po1v6m4hx3k2-dmqkla


https://wolfram.com/xid/0b6g2u59e1po1v6m4hx3k2-k118o6


The number of data points must be greater than the dimension of the data:

https://wolfram.com/xid/0b6g2u59e1po1v6m4hx3k2-0q09i


https://wolfram.com/xid/0b6g2u59e1po1v6m4hx3k2-0curas


https://wolfram.com/xid/0b6g2u59e1po1v6m4hx3k2-wlr4s0

Neat Examples (1)Surprising or curious use cases
Compute the statistic when the null hypothesis is true:

https://wolfram.com/xid/0b6g2u59e1po1v6m4hx3k2-2qqg3c

https://wolfram.com/xid/0b6g2u59e1po1v6m4hx3k2-ywy3ty
The test statistic given a particular alternative:

https://wolfram.com/xid/0b6g2u59e1po1v6m4hx3k2-612aqt

https://wolfram.com/xid/0b6g2u59e1po1v6m4hx3k2-c5cy2n
Compare the distributions of the test statistics:

https://wolfram.com/xid/0b6g2u59e1po1v6m4hx3k2-87eb6q

Wolfram Research (2010), MardiaKurtosisTest, Wolfram Language function, https://reference.wolfram.com/language/ref/MardiaKurtosisTest.html.
Text
Wolfram Research (2010), MardiaKurtosisTest, Wolfram Language function, https://reference.wolfram.com/language/ref/MardiaKurtosisTest.html.
Wolfram Research (2010), MardiaKurtosisTest, Wolfram Language function, https://reference.wolfram.com/language/ref/MardiaKurtosisTest.html.
CMS
Wolfram Language. 2010. "MardiaKurtosisTest." Wolfram Language & System Documentation Center. Wolfram Research. https://reference.wolfram.com/language/ref/MardiaKurtosisTest.html.
Wolfram Language. 2010. "MardiaKurtosisTest." Wolfram Language & System Documentation Center. Wolfram Research. https://reference.wolfram.com/language/ref/MardiaKurtosisTest.html.
APA
Wolfram Language. (2010). MardiaKurtosisTest. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/MardiaKurtosisTest.html
Wolfram Language. (2010). MardiaKurtosisTest. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/MardiaKurtosisTest.html
BibTeX
@misc{reference.wolfram_2025_mardiakurtosistest, author="Wolfram Research", title="{MardiaKurtosisTest}", year="2010", howpublished="\url{https://reference.wolfram.com/language/ref/MardiaKurtosisTest.html}", note=[Accessed: 29-May-2025
]}
BibLaTeX
@online{reference.wolfram_2025_mardiakurtosistest, organization={Wolfram Research}, title={MardiaKurtosisTest}, year={2010}, url={https://reference.wolfram.com/language/ref/MardiaKurtosisTest.html}, note=[Accessed: 29-May-2025
]}