0
Ive得到了這樣的向量替換零個值
a=[0 5 3 0 1]
和相應的一個向量,因爲在第一矢量零包含數字相同數量的
b=[2 4]
我想要什麼得到是
x=[2 5 3 4 1]
我試着擺弄,有點感覺到,找到/完整的方法可能會幫助我在這裏,但沒有得到它的工作
c=(a==0)
>[1 0 0 1 0]
謝謝!
Ive得到了這樣的向量替換零個值
a=[0 5 3 0 1]
和相應的一個向量,因爲在第一矢量零包含數字相同數量的
b=[2 4]
我想要什麼得到是
x=[2 5 3 4 1]
我試着擺弄,有點感覺到,找到/完整的方法可能會幫助我在這裏,但沒有得到它的工作
c=(a==0)
>[1 0 0 1 0]
謝謝!
這是因爲這容易:
x=a;
作爲x==0
給出了所有的位置的矢量的元素= 0,即[0 1 0 0 1],x(x==0)
是索引x到獲得實際的元件的x等於0,然後您可以分配值,就好像它是任何其他向量/矩陣(其中我們不感興趣的值不存在,並且未編入索引),使用以下代碼:
x(x==0)=b;
或甚至更短'a(〜a)= b' =) –
@RobertP。這會超出'a'的價值,OP不想這樣做 – Mauvai