Python squeeze()函数

作用:移除数组中维度为1的维度

函数形式:​​numpy.``squeeze​​(a, axis=None)

参数:axis: 选择数组中的某一维度移除, 如果选择形状输入大于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
'''
---------------------------------------------------------------------------
ValueError Traceback (most recent call last)
<ipython-input-31-182a4f2e2f87> in <module>
----> 1 np.squeeze(x, axis=1).shape

~/anaconda3/lib/python3.6/site-packages/numpy/core/fromnumeric.py in squeeze(a, axis)
1290 return squeeze()
1291 else:
-> 1292 return squeeze(axis=axis)
1293
1294 def diagonal(a, offset=0, axis1=0, axis2=1):

ValueError: cannot select an axis to squeeze out which has size not equal to one
'''
np.squeeze(x, axis=2).shape
#(1, 3)