numpy.compress#
- numpy.compress(condition, a, axis=None, out=None)[源]#
沿着给定轴返回数组的选定切片。
沿着给定轴操作时,对于 condition 评估为 True 的每个索引,将沿着该轴返回一个切片到 output 中。当作用于一维数组时,
compress
等同于extract
。- 参数:
- condition布尔类型的一维数组
用于选择要返回哪些条目的数组。如果 len(condition) 小于给定轴上 a 的大小,则输出将被截断为 condition 数组的长度。
- a类数组
要从中提取部分的数组。
- axis整型, 可选
要沿其获取切片的轴。如果为 None(默认),则在展平的数组上操作。
- outndarray, 可选
输出数组。其类型将被保留,并且必须是正确的形状以容纳输出。
- 返回:
- compressed_arrayndarray
a 的一个副本,其中不包含 condition 为 false 的沿着轴的切片。
另请参阅
示例
>>> import numpy as np >>> 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])