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

2025-02-26 13:22:56
推荐回答(2个)
回答1:

find(R~=0)可以输出按照一列一列来找的第多少个不是0你自己对结果做一些处理就可以输出所在的行和列(比如说对find的结果除以5,所得到的商即为所在的列,余数即为所在的行)

回答2:

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

>> b=R~=0

b =

1 1 1 1 1
1 0 0 0 1
1 0 1 0 1
1 1 1 1 0
1 0 1 1 0

从矩阵思考,按这样写。再干什么的话,不行你就for吧。嵌套一个for,搞定。

>> for i=1:5
for j=1:5
if b(i,j)==1
R(i,j)%这里写你需要做的事情,
end
end
end