一尘不染

删除2D矩阵中的全零行

python

是否有一个有效的和/或内置的函数来删除2d数组的全零行?我正在查看numpy文档,但尚未找到。


阅读 209

收藏
2021-01-20

共1个答案

一尘不染

布尔索引可以做到这一点:

In [2]:

a
Out[2]:
array([[4, 1, 1, 2, 0, 4],
       [3, 4, 3, 1, 4, 4],
       [1, 4, 3, 1, 0, 0],
       [0, 4, 4, 0, 4, 3],
       [0, 0, 0, 0, 0, 0]])
In [3]:

a[~(a==0).all(1)]
Out[3]:
array([[4, 1, 1, 2, 0, 4],
       [3, 4, 3, 1, 4, 4],
       [1, 4, 3, 1, 0, 0],
       [0, 4, 4, 0, 4, 3]])
2021-01-20