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 的值的 Rank 1 数组,其中 condition 为 True.

参见

take , put , copyto , compress , place

示例

>>> 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])