メンバ変数に行列を持つ構造体の配列について, その行列の特定の要素を配列で平均したい
Show older comments
メンバ変数に行列を持つ構造体の配列について, その行列の特定の要素を配列で平均したいと考えていますが, 「中かっこまたはドット インデックス式からの必要な出力は 1 つですが、2 個の結果があります。」とのエラーが出ます.
目的を達成するコードを無理やりforループで書くことは可能ですが, 「mean(a(:).b(1,1))」のようにすっきりと簡潔に書くことはできないのでしょうか.
>> a(1).b=rand(2)
a =
フィールドをもつ struct:
b: [2×2 double]
>> a(2).b=rand(2)
a =
フィールドをもつ 1×2 の struct 配列:
b
>> a(:).b % 中身の確認
ans =
0.8147 0.1270
0.9058 0.9134
ans =
0.6324 0.2785
0.0975 0.5469
>> mean(a(:).b(1,1)) %これがやりたい処理. 平均を計算しようとするとエラーが出る
中かっこまたはドット インデックス式からの必要な出力は 1 つですが、2 個の結果があります。
>> a(:).b(1,1) %平均以前に要素にアクセスしようとしただけでエラーが出る
中かっこまたはドット インデックス式からの必要な出力は 1 つですが、2 個の結果があります。
Accepted Answer
More Answers (0)
Categories
Find more on 構造体 in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!