matlab中 怎么将向量特定的数变为1
问题描述:
matlab中 怎么将向量特定的数变为1
如A=[1 2 3];B=[5 2 3 1 4]; 怎么得到想要的矩阵C=[5 0 0 0 4]?
应该是变为0 但是总体意思说出来了
答
>> a=[1 2 3];
>> b=[5 2 3 1 4];
>> [c,ia,ib]=intersect(a,b) %求两个向量的交集
c =
1 2 3
ia =
1 2 3 %交集在a中的地址
ib =
4 2 3 %交集在b中的地址
>> b(ib)=0 %b向量中和a相同的赋值为0
b =
5 0 0 0 4
>>лл���ܷ��������һ������ ������ô����һ��������ȡ�����а�>> a=magic(6) %随机取一个矩阵a =35 1 6261924 332 721232531 9 2222720 8283317101530 534121416 43629131811>> [m,n]=size(a) %求矩阵的大小m = 6n = 6>> ia=randint(1,2,[1,m])%取矩阵行数以内的两个随机整数ia = 4 3>> b=a(ia,:)%得到a矩阵的随机两行b = 8283317101531 9 2222720>>