在MATLAB中根据行号从矩阵中选择条目
我有矩阵A=randM,N和行向量B=randi[1 M],1,N。我想根据B中的行号将A中的条目分配给C C1,1=AB1,1,1,C1,2=AB1,2,2等。有没有更简单的方法不使用for循环就得到C?您只需要使用将行下标B和列下标1:numelB转换为线性索引即可在MATLAB中根据行号从矩阵中选择条目,matlab,select,matrix,Matlab,Select,Matrix,我有矩阵A=randM,N和行向量B=randi[1 M],1,N。我想根据B中的行号将A中的条目分配给C C1,1=AB1,1,1,C1,2=AB1,2,2等。有没有更简单的方法不使用for循环就得到C?您只需要使用将行下标B和列下标1:numelB转换为线性索引即可 C = A(sub2ind(size(A), B, 1:numel(B)));
C = A(sub2ind(size(A), B, 1:numel(B)));