我有一个矩阵,其中包含大行和大列,如下所示:
A = 0 0 0 0
0 0 0 0
0 0 0 0
2000 11 16 -0.74
0 0 0 0
0 0 0 0
2000 12 26 -0.84
0 0 0 0
0 0 0 0
我需要从矩阵中删除所有零,以获取输出,如
B = 2000 11 16 -0.74
2000 12 26 -0.84
我在这里尝试了一种可用的解决方案,
B = A(A~=0)
它删除零,但给出类似的输出,
2000
2000
11
12
-0.74
-0.84
如何获得所需的输出?
答案 0 :(得分:3)
假设A
是一个二维矩阵
A(any(A,2),:)
会的。
示例:
>> A=[rand(2,3); zeros(3); rand(1,3)]
A =
0.13878 0.44315 0.25832
0.01879 0.93844 0.57537
0.00000 0.00000 0.00000
0.00000 0.00000 0.00000
0.00000 0.00000 0.00000
0.50581 0.37870 0.56563
>> A(any(A,2),:)
ans =
0.138776 0.443152 0.258325
0.018794 0.938439 0.575371
0.505809 0.378696 0.565632