私はループを持っており、変数A
をmx1 matrix (where: m>1)
として出力します。ループ全体の最後に、A
はmxn matrix
として終了します。出力はmxn
行列として返されますが、結果は上書きされ続けます。私は以前のコードのために働いていたものを含め、たくさんのものを試しましたが、うまくいきません。それにもかかわらず、私は下のコードは動作するはずですが、私はエラーがどこから来ているのかわかりません。私はこれを実行すると出力配列をループから保存するにはどうすればよいですか?
x_A = NaN(28, 3); % 28=length of A and 3=length of kk
Z = [1,2,4,7];
for kk = 1: numel(Z)
[A,B,C] = fsave_output(Z, kk)
x_A = [x_A(:,kk) A(:,kk)];
% repeat the line above for B and C
end
、私は、エラーメッセージを得る:"は(:、3)X_Aアクセスしようとし;境界のうち、インデックスサイズ(x_norm)= [28,2]理由を"。しかし、x_A(:、1)とX_A(:、2)の出力は正しいですが、x_A(:、3)は表示されません。
ここで何をすべきかについてのアイデアや提案や助けがありますか?事前に多くの感謝!
あなたがAは、すべてのループの繰り返しで、同じサイズであることを確認していますか?そして 'x_A = [x_A; [A]]; 'コードをたくさん遅くし、事前割り振りを使います。 – Gryphon
お返事ありがとう@Gryphon。私が言ったように、私は本の中で多くのトリックを試みました。また、あなたの質問の最初の部分については、 'A 'は必ず各反復で同じサイズを持つ。 – User110
更新されたコードでは、ループの繰り返しごとにx_A配列のサイズを変更するので、k_x = 3ではx_Aが28x2であるため、エラーが発生します – Gryphon