numpy.expand_dims#

numpy.expand_dims(a, axis)[源代码]#

扩展数组的形状.

插入一个新的轴,该轴将出现在扩展数组形状的 axis 位置.

参数:
aarray_like

输入数组.

axis整数或整数的元组

在扩展轴中放置新轴(或轴)的位置.

自 1.13.0 版本弃用: 传递一个 axis > a.ndim 的轴将被视为 axis == a.ndim,传递 axis < -a.ndim - 1 将被视为 axis == 0.此行为已被弃用.

在 1.18.0 版本发生变更: 现在支持轴的元组.如上所述,超出范围的轴现在是禁止的,并会引发 AxisError.

返回:
resultndarray

增加了 a 的维数后的视图.

参见

squeeze

逆操作,移除单一维度

reshape

插入、移除和合并维度,并调整现有维度的大小

atleast_1d, atleast_2d, atleast_3d

示例

>>> import numpy as np
>>> x = np.array([1, 2])
>>> x.shape
(2,)

以下等同于 x[np.newaxis, :]x[np.newaxis]:

>>> y = np.expand_dims(x, axis=0)
>>> y
array([[1, 2]])
>>> y.shape
(1, 2)

以下等同于 x[:, np.newaxis]:

>>> y = np.expand_dims(x, axis=1)
>>> y
array([[1],
       [2]])
>>> y.shape
(2, 1)

axis 也可以是一个元组:

>>> y = np.expand_dims(x, axis=(0, 1))
>>> y
array([[[1, 2]]])
>>> y = np.expand_dims(x, axis=(2, 0))
>>> y
array([[[1],
        [2]]])

请注意,一些示例可能使用 None 而不是 np.newaxis.这些是相同的对象:

>>> np.newaxis is None
True