上一主题

numpy.choose

下一主题

numpy.diagonal

numpy.compress

numpy.compress(condition, a, axis=None, out=None)[source]

沿给定轴返回数组的所选切片。

当沿给定轴工作时,输出中返回沿该轴的切片,其中条件计算为True。在处理1-D数组时,compress等效于extract

参数:

condition:1-D数组的bool

数组,用于选择要返回的条目。如果len(condition)小于沿给定轴的a的大小,那么输出将被截断为条件数组的长度。

a:array_like

数组从中提取一个零件。

axis:int,可选

沿着其采取切片的轴。如果为无(默认值),则对展平的数组进行处理。

out:ndarray,可选

输出数组。它的类型被保留,并且它必须是保持输出的正确形状。

返回:

compressed_array:ndarray

没有条件的沿轴的切片的a t>的副本为false。

也可以看看

take, choose, diag, diagonal, select

ndarray.compress
ndarray中的等效方法
np.extract
使用1-D数组时的等效方法
numpy.doc.ufuncs
节“输出参数”

例子

>>> a = np.array([[1, 2], [3, 4], [5, 6]])
>>> a
array([[1, 2],
       [3, 4],
       [5, 6]])
>>> np.compress([0, 1], a, axis=0)
array([[3, 4]])
>>> np.compress([False, True, True], a, axis=0)
array([[3, 4],
       [5, 6]])
>>> np.compress([False, True], a, axis=1)
array([[2],
       [4],
       [6]])

在展平的数组上工作不会沿着轴返回切片,而是选择元素。

>>> np.compress([False, True], a)
array([2])