当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python NumPy squeeze方法用法及代码示例


Numpy 的 squeeze(~) 方法返回删除了冗余轴的 Numpy 数组。检查下面的示例以进行说明。

参数

1. a | array-like

输入数组。

2. axis | int | optional

如果多余则要删除的轴。默认情况下,所有冗余轴都会被删除。

返回值

删除了冗余轴的新 Numpy 数组。

例子

基本用法

假设我们有以下二维数组:

a = np.array([[4],[5],[6]])
a



array([[4],
       [5],
       [6]])

您能看出在这种情况下如何将 a 简单地表示为一维数组 [4,5,6] 吗? squeeze(~) 方法允许我们执行此操作:

a.squeeze()



array([4, 5, 6])

同样的原则也适用于以下情况:

a = np.array([[[1,2],[3,4]]])
a



array([[[1, 2],
        [3, 4]]])

在这里,我们有一个 3D 数组,但很明显它可以简化为 2D 数组,如下所示:

a.squeeze()



array([[1, 2],
       [3, 4]])

仅压缩轴的子集

假设我们有以下 3D 数组:

a = np.array([[[4],[5],[6]]])
a



array([[[4],
        [5],
        [6]]])

很明显,这可以简化为二维数组,甚至可以简化为一维数组。我们可以使用 axis 参数指定要减少到哪个维度。

简化为二维数组:

np.squeeze(a, axis=0)



array([[4],
       [5],
       [6]])

请注意,默认情况下,所有冗余轴都会被删除:

np.squeeze(a)



array([4, 5, 6])

相关用法


注:本文由纯净天空筛选整理自Isshin Inada大神的英文原创作品 NumPy | squeeze method。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。