私はこのような私のコードを持っています:
a=logical ([1]);
b=logical ( [ 1 1 0
1 1 1
0 1 1]);
c=logical ( [ 1 0 0 0
0 1 1 0
0 1 1 1
0 0 1 1]);
d=logical ( [ 1 1 1
1 1 1
1 1 1]);
E={ a
b
c
d};
for i= 1:numel(E)
for j=1:numel(E{i}(:,1))
a=numel(find(E{i}(j,:)))<2
end
end
Eの各行の数字「1」が2よりも小さい場合、Forループを使用してチェックアウトします。私の問題は次のとおりです。forループを使用すると、最後の結果として常に結果「a」を受け取りますループ。このような:
a =
1
a =
0
a =
0
a =
0
a =
1
a =
0
a =
0
a =
0
a =
0
a =
0
a =
0
しかし、すべてのループ (ここでは 11 行は 11 ループを意味します) の "a" の値をベクトルに保存したいと考えています。このような:
a = [1
0
0
0
1
0
0
0
0
0
0]
または明らかに、これらの手順を E に実行したい:
1. E のセルに要素 (1 x 1) が 1 つしか含まれていない場合 (ここでは E(1) )、何もしない
2.そうでなければ、Eの各セルの各行の数字「1」の数が2より小さいかどうかを確認します
最終的に次のような結果が得られるようにします。
a = [ 0
0
0
0
1
0
0
0
0
0
0]
事前にご協力いただきありがとうございます。