numpy.extract#

numpy.extract(condition, arr)[源代码]#

返回满足某些条件的数组元素.

这等价于 np.compress(ravel(condition), ravel(arr)).如果 condition 是布尔值,``np.extract`` 等价于 arr[condition].

注意 place 做的正好与 extract 相反.

参数:
conditionarray_like

一个数组,其非零或 True 条目指示要提取的 arr 元素.

arrarray_like

condition 大小相同的输入数组.

返回:
extractndarray

arr 中获取 condition 为 True 的值的排名 1 数组.

示例

>>> import numpy as np
>>> arr = np.arange(12).reshape((3, 4))
>>> arr
array([[ 0,  1,  2,  3],
       [ 4,  5,  6,  7],
       [ 8,  9, 10, 11]])
>>> condition = np.mod(arr, 3)==0
>>> condition
array([[ True, False, False,  True],
       [False, False,  True, False],
       [False,  True, False, False]])
>>> np.extract(condition, arr)
array([0, 3, 6, 9])

如果 condition 是布尔值:

>>> arr[condition]
array([0, 3, 6, 9])