たとえば、Matlabに2つの行列AとBがあります
A=[0,0,1,2,3,0,4,2,0]
B=[2,3,1,2,2,3,4,4,1]
私がやりたいことは、B の要素をゼロに設定することです。ここでは、A のゼロ要素と同じ位置にあるため、私の例では次のようになります。
A=[0,0,1,2,3,0,4,2,0]
B=[2,3,1,2,2,3,4,4,1]
私はBがこのようになりたい:
B=[0,0,1,2,2,0,4,4,0]
何か案が?
次のように論理インデックスを使用してそれを行うことができます。B(A==0) = 0
編集:
次のようにすることもできます。これは、以下のコメントに従って、B.*(A~=0)
より高い次元に一般化するのが簡単になります。bsxfun