私は構造がspace_averaged_data
であり、可変長のセル配列として定義されたPs
というメンバを持っています。 num_p
の値が1である場合MATLABエラー "この割り当てに必要なスカラー構造"はこのステートメントで何を参照していますか?
Ps = cell(1, num_p);
for p = 1:length(Ps)
Ps{p} = rand(150, 1000);
end
space_averaged_data = struct('Ps', cell(1, length(Ps)));
for p = 1:length(Ps)
space_averaged_data.Ps{p} = mean(Ps{p}, 2);
end
(すなわち、セルアレイではない:私は(私は明確にするために他の構造体のフィールドを省略しました)を以下に示すような構造を作成した後、このセル配列に値を割り当てます配列)、すべて正常に動作します。 num_p
の値が1より大きい場合は、しかし、私は次のエラーを取得する:
Scalar structure required for this assignment.
Error in:
space_averaged_data.Ps{p} = mean(Ps{p}, 2);
この割り当てで非スカラー構造とは何ですか?エラーが何を指しているのか分かりません。