NumPy(Numerical Python的缩写)是一个开源的Python科学计算库。使用NumPy,就可以很自然地使用数组和矩阵。NumPy包含很多实用的数学函数,涵盖线性代数运算、傅里叶变换和随机数生成等功能。本文主要介绍一下NumPy中squeeze方法的使用。

numpy.squeeze

numpy.squeeze(a, axis=None)     [source]

从数组shape中删除一维条目。

参数 :

a :array_like

输入数据。

axisNoneint 或 int类型的tuple, 可选

1.7.0版中的新功能。 选择形状中一维条目的子集。 

如果选择的形状输入大于一个的轴,则会引发错误。

返回值 :

squeezed :ndarray

输入数组,但删除了长度为1的全部或部分维度。

 可能始终是其本身或a的视图。 

请注意,如果所有轴都受到squeeze,则结果为0d数组,而不是标量。

Raises :

ValueError

如果axis不为None,并且被压缩的轴的长度不为1

例子

>>> x = np.array([[[0], [1], [2]]])
>>> x.shape
(1, 3, 1)
>>> np.squeeze(x).shape
(3,)
>>> np.squeeze(x, axis=0).shape
(3, 1)
>>> np.squeeze(x, axis=1).shape
Traceback (most recent call last):
...
ValueError: cannot select an axis to squeeze out which has size not equal to one
>>> np.squeeze(x, axis=2).shape
(1, 3)
>>> x = np.array([[1234]])
>>> x.shape
(1, 1)
>>> np.squeeze(x)
array(1234)  # 0d array
>>> np.squeeze(x).shape
()
>>> np.squeeze(x)[()]
1234

推荐文档

相关文档

大家感兴趣的内容

随机列表