F検定について

4 ビュー (過去 30 日間)
Hiraku Tokuma
Hiraku Tokuma 2021 年 9 月 29 日
コメント済み: Hiraku Tokuma 2021 年 10 月 2 日
forループでF検定のp値を出力させる方法を教えてください。
for a= 1:n;
x= 行列名1 (a,:);
y = 行列名2(a,:);
f(a,:) = vartest2(x,y);
end
とすると、
行列名1と2のa列目同士をF検定してその判定を返してはくれるのですが、同時にp値の行列も作成したいです。
ご知恵を拝借願えませんでしょうか。

採用された回答

Atsushi Ueno
Atsushi Ueno 2021 年 9 月 29 日
上記の最初に書いてある「等分散に関する検定」と同じ内容です。データの内容はさておき、[h,p] = vartest2(x,y)と書かないとp値を出力してくれないので、一旦スカラ変数に格納してから行列にコピーすればやりたい事が出来ます。
load examgrades;
for a= 1:size(grades,2)-1;
x = grades(:,a);
y = grades(:,a+1);
[h,p] = vartest2(x,y) % 検定結果とp値を両方出力する
f(a,:) = [h,p]; % 検定結果とp値を行列に格納する
end
h = 1
p = 0.0019
h = 0
p = 0.1661
h = 0
p = 0.1120
h = 1
p = 1.4921e-07
f
f = 4×2
1.0000 0.0019 0 0.1661 0 0.1120 1.0000 0.0000
  1 件のコメント
Hiraku Tokuma
Hiraku Tokuma 2021 年 10 月 2 日
解決しました
ありがとうございます

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

Help Center および File Exchange仮説検定 についてさらに検索

タグ

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!