np.array([[ 0, 1, 2, 0, 4, 5, 6, 7, 8, 9],
[ 0, 11, 0, 13, 0, 15, 0, 17, 18, 0]])
如何删除哪行上方的数组行包含大于10的值?
我们可以通过几个步骤做到这一点。假设a
是原始数组,那么:
- 首先,我们计算每行的最大值;
- 然后我们检查该值是否小于或等于 10;
- 最后,我们使用它进行屏蔽,因此只选择值不大于 10 的行。
喜欢:
a[a.max(axis=1) <= 10]
因此,这将返回原始数组的副本,该数组仅包含不包含大于 10 的值的行。
@Quanter,试试这个。
>>> import numpy as np
>>>
>>> arr = np.array([[ 0, 1, 2, 0, 4, 5, 6, 7, 8, 9],
... [ 0, 11, 0, 13, 0, 15, 0, 17, 18, 0]])
>>>
>>> a = [a for a in arr if not np.max(a) > 10]
>>>
>>> a
[array([0, 1, 2, 0, 4, 5, 6, 7, 8, 9])]
>>>