loop処理で行った検定で得られた統計値に、番号を付けて1つのファイルにまとめる場合はどうすれば良いですか?
조회 수: 1 (최근 30일)
이전 댓글 표시
例えば、任意のtable(DATA)における、2列目から12列目にあるデータに対し、それぞれの1行目から19行目、21行目から40行目を比較しようとした場合、
各比較で得られた統計値に番号をふったうえで、一つのmatファイルにまとめて整理したいです。
初歩的な質問ですみません。どうぞよろしくお願い致します。
for i=2:12
A=table2array(DATA(1:19,i));
B=table2array(DATA(20:40,i));
[p,h,stats] = ranksum(A, B,'alpha', 0.05, 'tail','both')
end
댓글 수: 0
채택된 답변
Musashi Ito
2019년 12월 28일
편집: Musashi Ito
2019년 12월 28일
各比較で得られた統計値を配列として格納して mat ファイルに保存もできそうですが、いかがでしょうか。以下のようなコードになるかなと思います
% テーブルデータ DATA の 2 列目から 12 列目の数値データを数値配列 testData として抽出
testData = DATA{:,2:12};
% testData の行数(m),列数(n)を取得
[m,n] = size(testData);
for k=1:n
% testData から 1 行目から 19 行目の k 列を抽出
A = testData(1:19,k);
% testData から 21 行目から 40 行目の k 列を抽出
B = testData(21:40,k);
% 配列として結果を格納
[p(k),h(k),stats(k)] = ranksum(A, B,'alpha', 0.05, 'tail','both')
end
% ワークスペースの変数を myfile.mat に保存
save myfile
추가 답변 (0개)
참고 항목
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!