1

[r, p] = corr(X1,Y1);MATLAB では、複数の X と Y でこの関数を使用した後、組み込み関数の出力の行列を作成しようとしています。次に、すべての r と p をそれぞれの行列 R と P に統合したいと思います。たとえば、 から 1 つの出力のみを呼び出すと、これを簡単に行うことができますcorr

R = [corr(X1,Y1), corr(X2,Y2); (...)
     corr(X3,Y3), corr(X4,Y4)];

asはデフォルトcorrで値を返しrます。p同様にこれを達成する方法はありますか?以下は私が行う長い道のりです。上記のような短くて簡単な方法があるかどうか疑問に思っています。

最初にそれぞれrとを見つけますp

[r1, p1] = corr(X1,Y1);
[r2, p2] = corr(X2,Y2);
[r3, p3] = corr(X3,Y3);
....

次に、それらをマトリックスに結合します。

R = [r1 r2; (...)
     r3 r4; (...)
     ...];
P = [p1 p2; (...)
     p3 p4; (...)
     ...];

ありがとう。

4

1 に答える 1

1

あなたはの線に沿って何かを試すことができます

for i=1:n,
  [R(:,end+1), P(:,end+1)] = corr(X(:,i), Y(:,i));
end

R(:,1)P(:,1)が正しいサイズであることを確認してください。R(:,end+1)and の代入は自動的にP(:,end+1)成長RP、一時変数から手動で結合する必要はありません。

于 2013-02-22T04:35:57.730 に答える