cell内の数値に対して計算するにはどうすればいいですか?
古いコメントを表示
サイズが 3×1 cell の数値が入った関数 D があり、下記に示す計算をしたいと考えています。
1×1のcellに対して
A1 = 20 ./ D (Dは1×1部分の数値)
2×1のcellに対して
A2 = 21 ./ D (Dは2×1部分の数値)
3×1のcellに対して
A3 = 22 ./ D (Dは3×1部分の数値)
X = (A1+A2+A3) ./ 3
実際はcellサイズがもう少し大きく、よい書き方がわかりません。
説明が下手ですが、ご教授いただければと思います。
採用された回答
その他の回答 (1 件)
Atsushi Ueno
2022 年 11 月 19 日
編集済み: Atsushi Ueno
2022 年 11 月 19 日
>サイズが 3×1 cell の数値が入った関数 D があり
数値はスカラ、「関数 D」は関数ではなく変数であると認識してます。誤認識あればお知らせ願います。
D = {1;3;2}; % 除数
N = {20;21;22}; % 被除数
%A = cellfun(@(x) 20 ./ x, D) % 1×1のcellに対して...ではなく 3×1 cell 全体に対して
A = cellfun(@(x,y) y ./ x, D, N) % 1×1のcellに対して...ではなく 3×1 cell 全体に対して
X = mean(A)
3 件のコメント
R
2022 年 11 月 19 日
Atsushi Ueno
2022 年 11 月 19 日
>上記のように計算させることは可能でしょうか?
はい可能です。質問の解釈に誤りがあり申し訳ございません。回答を変更しました。
R
2022 年 11 月 19 日
カテゴリ
ヘルプ センター および File Exchange で Logical についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!