numpy.extract#

numpy.extract(condition, arr)[source]#

返回满足某个条件的数组中的元素。

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

请注意,placeextract 的作用完全相反。

参数:
conditionarray_like

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

arrarray_like

condition 大小相同的输入数组。

返回值:
extractndarray

来自 arr 的值的一维数组,其中 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])