1. ホーム
  2. matlab

[解決済み] セルコンテンツから非セル配列オブジェクトへの代入

2022-02-06 14:04:42

質問事項

for ch=1:63
    for h=1:5
        for a=1:6
            for b=1:6
                m{a,b}{h,ch}=zeros(4,4);
            end
        end
    end
end


for a=1:6
    for b=1:6
        if b==a
            for h=1:5
                for ch=1:63
                    for c=1:4
                        for d=1:4
                            m{a,b}{h,ch}{c,d}=1;
                        end
                    end
                end
            end
        end
    end
end

エラーが発生したのは17行目( m{a,b}{h,ch}{c,d}=1; ),それはセルコンテンツが非セル配列オブジェクトに代入されていることを示しました。このタイプのエラーを解決するための解決策があれば教えてください。

どのように解決するのですか?

これはひどいコードです。

エラー内容としては m{a,b}{h,ch} は、5行目で4x4に代入されました。 配列 セルアレイではありません。したがって、17行目を次のように変更する必要があります。

m{a,b}{h,ch}(c,d)=1;

通常の括弧(配列にアクセスする場合)と中括弧(セル配列にアクセスする場合)の違いに注意してください。