在MATLAB中,如何找出矩阵的非零元素。并且输出它所在的行和列。只要非零就为真。输出1。。

如果能够这样输出更好,R(1,1)=1,R(1,5)=1
矩阵R=[1 2 3 1 2
1 0 0 0 4
4 0 5 0 6
1 1 1 1 0
5 0 8 6 0];

第1个回答  2010-08-04
[row, col] = find( R ~= 0 ); % row,col是所有非零元素的横坐标和纵坐标
num = size(row, 1); % 有多少个非零元素
for i = 1:num
R(row(i), col(i)) = 1; % 非零元素置一
end本回答被提问者采纳
相似回答