MardiaSkewnessTest[data]
Mardia歪度検定を使って data がMultinormalDistributionに従うかどうかを調べる.
MardiaSkewnessTest[data,"property"]
"property"の値を返す.
MardiaSkewnessTest
MardiaSkewnessTest[data]
Mardia歪度検定を使って data がMultinormalDistributionに従うかどうかを調べる.
MardiaSkewnessTest[data,"property"]
"property"の値を返す.
詳細とオプション
- MardiaSkewnessTestは data がMultinormalDistributionから引き出されたという帰無仮説
とそうではないという対立仮説
でMardia歪度の適合度検定を行う. - デフォルトで,確率値つまり
値が返される. - 小さい
値は data が正規分布に従っている可能性が低いことを示す. - data は一変量{x1,x2,…}あるいは多変量{{x1,y1,…},{x2,y2,…},…}でよい.
- Mardia歪度検定は事実上 data の歪度の多変量基準をMultinormalDistributionと比べる.
- MardiaSkewnessTest[data,dist,"HypothesisTestData"]はHypothesisTestDataオブジェクト htd を返す.これは htd["property"]として追加的な検定結果と特性の抽出に使うことができる.
- MardiaSkewnessTest[data,dist,"property"]を使って直接"property"の値を与えることができる.
- 検定結果のレポートに関連する特性
-
"DegreesOfFreedom" 検定で使用する自由度 "PValue"
値"PValueTable" "PValue"のフォーマットされたバージョン "ShortTestConclusion" 検定結果の簡単な説明 "TestConclusion" 検定結果の説明 "TestData" 検定統計と
値"TestDataTable" "TestData"のフォーマットされたバージョン "TestStatistic" 検定統計 "TestStatisticTable" フォーマットされた"TestStatistic" - 次の特性はどの検定が行われているかに依存しない.
- データ分布に関連する特性
-
"FittedDistribution" データのフィットした分布 "FittedDistributionParameters" データの分布母数 - 使用可能なオプション
-
Method Automatic
値を計算するメソッドSignificanceLevel 0.05 診断とレポートのための切捨て - 適合度検定では,
のときにのみ
が棄却されるような切捨て
が選択される.特性"TestConclusion"および"ShortTestConclusion"で使われる
の値はSignificanceLevelオプションで制御される.デフォルトで,
は0.05に設定されている.
値の計算に次のメソッドを使うことができる.-
Automatic 五次元までの小さいサンプルについて修正する "Asymptotic" 検定統計の漸近的分布を使う "MonteCarlo" モンテカルロ(Monte Carlo)シミュレーションを使う - Method->"MonteCarlo"の設定では,入力
と同じ長さの
個のデータ集合が,フィットされた分布を使って
のもとで生成される.次に,MardiaSkewnessTest[si,"TestStatistic"]からのEmpiricalDistributionを使って
値が推定される.
例題
すべて開く すべて閉じる例 (3)
data = RandomVariate[MultinormalDistribution[{1, 2, 3}, IdentityMatrix[3]], 1000];MardiaSkewnessTest[data]data = RandomVariate[MultinormalDistribution[{1, 2, 3}, IdentityMatrix[3]], 1000];MardiaSkewnessTest[data, "TestStatistic"]data = RandomVariate[MultinormalDistribution[{1, 2, 3}, IdentityMatrix[3]], 1000];MardiaSkewnessTest[data, "TestDataTable"]スコープ (6)
検定 (3)
data1 = RandomVariate[MultinormalDistribution[{1, 2, 3}, IdentityMatrix[3]], 1000];
data2 = RandomVariate[MultivariateTDistribution[IdentityMatrix[2], 3], 1000];MardiaSkewnessTest[data1]MardiaSkewnessTest[data2]data1 = RandomVariate[NormalDistribution[], 1000];
data2 = RandomVariate[ExponentialDistribution[2], 1000];MardiaSkewnessTest[data1]MardiaSkewnessTest[data2]繰り返し特性を抽出するためにHypothesisTestDataオブジェクトを作成する:
data = RandomVariate[BinormalDistribution[.5], 10^5];ℋ = MardiaSkewnessTest[data, "HypothesisTestData"]ℋ["Properties"]レポート (3)
data = RandomVariate[BinormalDistribution[.5], 10^3];ℋ = MardiaSkewnessTest[data, "HypothesisTestData"];ℋ["TestDataTable"]ℋ["PValueTable"]ℋ["TestStatisticTable"]カスタマイズされたレポート用にMardiaの歪度検定の表から項目を取り出す:
data1 = RandomVariate[BinormalDistribution[.5], 10^4];
data2 = RandomVariate[BinormalDistribution[.5], 10^3];ℋ1 = MardiaSkewnessTest[data1, "TestData"]ℋ2 = MardiaSkewnessTest[data2, "TestData"]BarChart[{Labeled[ℋ1, "集合 1"], Labeled[ℋ2, "集合 2"]}, ChartLabels -> {"SubscriptBox[M, S]", "p 値"}]"ShortTestConclusion"と"TestConclusion"を使って検定の結論をレポートする:
data = BlockRandom[SeedRandom[3];RandomVariate[StudentTDistribution[4], {100, 2}]];ℋ = MardiaSkewnessTest[data, "HypothesisTestData"];ℋ["ShortTestConclusion"]ℋ["TestConclusion"]//TraditionalFormℋ = MardiaSkewnessTest[data, "HypothesisTestData", SignificanceLevel -> .001];ℋ["ShortTestConclusion"]ℋ["TestConclusion"]//TraditionalFormオプション (4)
Method (3)
モンテカルロ(Monte Carlo)法に基づくメソッドあるいは計算式を使う:
data = RandomVariate[NormalDistribution[], {250, 2}];MardiaSkewnessTest[data, Method -> "MonteCarlo"]MardiaSkewnessTest[data, Method -> Automatic]data = RandomVariate[BinormalDistribution[.5], 25];pts = Table[{i, MardiaSkewnessTest[data, Method -> {"MonteCarlo", "MonteCarloSamples" -> i}]}, {i, Range[5, 1000, 150]}];モンテカルロ推定は,サンプルを増やすと,真の
値に収束する:
pval = MardiaSkewnessTest[data]Show[ListLinePlot[pts, PlotRange -> {0, 1}, FrameLabel -> {"サンプル", "P 値"}, Frame -> True, AxesOrigin -> {0, 0}], Graphics[{Dashed, Line[{{0, pval}, {1000, pval}}]}]]モンテカルロ法に基づくメソッドで使われるランダムなシードを設定する:
data = RandomVariate[BinormalDistribution[.5], 25];pts = Table[{i, MardiaSkewnessTest[data, Method -> {"MonteCarlo", "RandomSeed" -> i, "MonteCarloSamples" -> 100}]}, {i, Range[1, 10]}];シードは生成器の状態に影響を与え,結果の
値にもいくらか影響を与える:
Show[ListLinePlot[pts, PlotRange -> {Min[pts[[All, 2]]], Max[pts[[All, 2]]]}, FrameLabel -> {"スピード", "P 値"}, Frame -> True, AxesOrigin -> {0, 0}]]SignificanceLevel (1)
"TestConclusion"と"ShortTestConclusion"で使う有意水準を設定する:
data = BlockRandom[SeedRandom[1];RandomVariate[StudentTDistribution[5], {100, 2}]];MardiaSkewnessTest[data, "ShortTestConclusion", SignificanceLevel -> .1]MardiaSkewnessTest[data, "ShortTestConclusion", SignificanceLevel -> .25]MardiaSkewnessTest[data, "TestConclusion"]//TraditionalFormアプリケーション (2)
data = Table[RandomVariate[MultivariateTDistribution[IdentityMatrix[2], 3], {500, i}], {i, n = {10, 15, 20, 25, 30}}];ℋ = Table[MardiaSkewnessTest[data[[i, j]]], {i, Length[data]}, {j, Length[data[[i]]]}];pC = Interpolation[Transpose[{n, Table[Probability[x ≤ 0.05, xi], {i, ℋ}]}], InterpolationOrder -> 1];Plot[pC[x], {x, 10, 30}, PlotRange -> {0, 1}, Ticks -> {n, Automatic}, AxesOrigin -> {7, 0}]基礎となる分布がMultivariateTDistributionであり,検定サイズが0.05,サンプルサイズが12である場合に,Mardiaの歪度検定の検出力を推定する:
pC[12.]3種のアヤメについて花弁と萼片の寸法を記録した.2つの似た種を区別するのに便利かもしれない尺度を素早くチェックするために,平均の多変量検定が使えるが,これはデータが多変量の正規分布に従う場合にのみ有効である:
data = ExampleData[{"Statistics", "FisherIris"}];ExampleData[{"Statistics", "FisherIris"}, "ColumnDescriptions"]species = data[[All, -1]];MardiaSkewnessTest[virg = Pick[data[[All, 1 ;; -2]], species, "virginica"]]MardiaSkewnessTest[vers = Pick[data[[All, 1 ;; -2]], species, "versicolor"]]MardiaKurtosisTest[virg]MardiaKurtosisTest[vers]データは正規性を持つようであるので,TTestは有効である:
TTest[{virg, vers}, 0, "TestDataTable"]特性と関係 (4)
data = RandomVariate[BinormalDistribution[.5], 50];MVSkew[data_] := With[{n = Length[data], x = Transpose[Standardize[data, Mean, 1&]]},
(n/6) Total[(Transpose[x].Inverse[Covariance[data]].x)^3, ∞] / n^2
]MVSkew[data]MardiaSkewnessTest[data, "TestStatistic"]
において検定統計はChiSquareDistributionに従う:
samp = RandomVariate[MultinormalDistribution[{0, 0}, IdentityMatrix[2]], {1000, 100}];res = MVSkew /@ samp;DistributionFitTest[res, ChiSquareDistribution[df]]data = RandomVariate[NormalDistribution[], 100];UVSkew[data_] := With[{n = Length[data]},
Skewness[data]^2 / (6/n)]UVSkew[data]MardiaSkewnessTest[data, "TestStatistic"]
において検定統計はChiSquareDistribution[1]に従う:
samp = RandomVariate[NormalDistribution[], {1000, 100}];res = UVSkew /@ samp;DistributionFitTest[res, ChiSquareDistribution[1]]Mardiaの歪度検定は,正規性からの逸脱を歪度でのみ検出できる:
data = BlockRandom[SeedRandom[5];RandomVariate[MultivariateTDistribution[IdentityMatrix[2], 5], 1000]];Show[Histogram3D[data, Automatic, "PDF"], Plot3D[PDF[MultinormalDistribution[Mean[data], Covariance[data]], {x, y}], {x, -6, 6}, {y, -6, 6}, PlotRange -> All], AspectRatio -> 1]MardiaSkewnessTest[data]決定はMardiaSkewnessTestとMardiaKurtosisTestに基づくべきである:
MardiaKurtosisTest[data]Mardia歪度検定は,入力がTimeSeriesのときにのみ値に使うことができる:
ts = TemporalData[TimeSeries, {{{{-0.49926617600557877, -0.9693358407186422, 0.5958383000077166},
{-1.33047395864177, -0.8677417392521979, -0.07701839279253664},
{-0.0007329523045247477, 0.3732688420773089, 0.4231608535246955},
{-0.628458 ... 1802556, -0.646006722738045, 0.22111034631867293},
{0.5843977994899021, 0.20194372201917066, 0.04486228650659786}}}, {{0, 100, 1}}, 1,
{"Continuous", 1}, {"Discrete", 1}, 3, {ValueDimensions -> 3, ResamplingMethod -> None}}, False,
10.1];ts["ValueDimensions"]MardiaSkewnessTest[ts]MardiaSkewnessTest[ts["Values"]]考えられる問題 (1)
data = {{37, 67, 72, 25}, {39, 27, 22, 51}, {63, 71, 59, 2}};PositiveDefiniteMatrixQ@Covariance[data]MardiaSkewnessTest[data]Tally@Table[PositiveDefiniteMatrixQ[Covariance[RandomVariate[NormalDistribution[], {4, 5}]]], 10 ^ 3]Tally@Table[PositiveDefiniteMatrixQ[Covariance[RandomVariate[NormalDistribution[], {5, 5}]]], 10 ^ 3]Tally@Table[PositiveDefiniteMatrixQ[Covariance[RandomVariate[NormalDistribution[], {6, 5}]]], 10 ^ 3]おもしろい例題 (1)
data1 = RandomVariate[BinormalDistribution[.5], {250, 100}];T1 = MardiaSkewnessTest[#, "TestStatistic"]& /@ data1;data2 = RandomVariate[MultivariateTDistribution[{{1, .2}, { .2, 1}}, 10], {250, 100}];T2 = MardiaSkewnessTest[#, "TestStatistic"]& /@ data2;SmoothHistogram[{T1, T2}, Filling -> Axis, PlotLegends -> {"SubscriptBox[H, 0]は真", "SubscriptBox[H, 0]は偽"}, PlotStyle -> Thick]関連するガイド
-
▪
- 仮説検定
テキスト
Wolfram Research (2010), MardiaSkewnessTest, Wolfram言語関数, https://reference.wolfram.com/language/ref/MardiaSkewnessTest.html.
CMS
Wolfram Language. 2010. "MardiaSkewnessTest." Wolfram Language & System Documentation Center. Wolfram Research. https://reference.wolfram.com/language/ref/MardiaSkewnessTest.html.
APA
Wolfram Language. (2010). MardiaSkewnessTest. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/MardiaSkewnessTest.html
BibTeX
@misc{reference.wolfram_2026_mardiaskewnesstest, author="Wolfram Research", title="{MardiaSkewnessTest}", year="2010", howpublished="\url{https://reference.wolfram.com/language/ref/MardiaSkewnessTest.html}", note=[Accessed: 04-November-2026]}
BibLaTeX
@online{reference.wolfram_2026_mardiaskewnesstest, organization={Wolfram Research}, title={MardiaSkewnessTest}, year={2010}, url={https://reference.wolfram.com/language/ref/MardiaSkewnessTest.html}, note=[Accessed: 04-November-2026]}