NumPy 具有高效的函数/方法 nonzero()
来识别 ndarray
对象中非零元素的索引。获取值为零的元素的索引的最有效方法是 _什么_?
原文由 gotgenes 发布,翻译遵循 CC BY-SA 4.0 许可协议
有 np.argwhere
,
import numpy as np
arr = np.array([[1,2,3], [0, 1, 0], [7, 0, 2]])
np.argwhere(arr == 0)
它将所有找到的索引作为行返回:
array([[1, 0], # Indices of the first zero
[1, 2], # Indices of the second zero
[2, 1]], # Indices of the third zero
dtype=int64)
原文由 MSeifert 发布,翻译遵循 CC BY-SA 3.0 许可协议
2 回答4.3k 阅读✓ 已解决
2 回答874 阅读✓ 已解决
1 回答4.1k 阅读✓ 已解决
3 回答877 阅读✓ 已解决
2 回答2.2k 阅读✓ 已解决
4 回答2.6k 阅读
3 回答917 阅读✓ 已解决
numpy.where() 是我的最爱。
方法
where
返回一个 ndarray 元组,每个对应于输入的不同维度。由于输入是一维的,所以[0]
将元组的唯一元素拆箱。