📅  最后修改于: 2023-12-03 15:19:13.850000             🧑  作者: Mango
在NumPy中,matrix.squeeze()
函数返回一个将矩阵中所有大小为1的维度去除的新矩阵。
下面我们来了解一下squeeze()
函数的语法和用法。
numpy.matrix.squeeze()
无参数。
返回一个将矩阵中所有大小为1的维度去除的新矩阵。
import numpy as np
# 创建一个矩阵
matrix = np.matrix([[1, 2, 1], [2, 2, 3], [3, 3, 3]])
# 添加一个大小为1的维度
new_matrix = matrix[:, :, np.newaxis]
# 打印矩阵的形状
print(new_matrix.shape) # (3, 3, 1)
# 去除所有大小为1的维度
squeeze_matrix = new_matrix.squeeze()
# 打印新矩阵的形状
print(squeeze_matrix.shape) # (3, 3)
# 打印新矩阵
print(squeeze_matrix)
'''
[[1 2 1]
[2 2 3]
[3 3 3]]
'''
解释:
我们首先创建了一个矩阵matrix,然后添加了一个大小为1的维度形成了new_matrix。
然后,我们使用squeeze()
函数去除了所有大小为1的维度,得到了squeeze_matrix新矩阵。
最后,我们打印了squeeze_matrix,可以看到,新矩阵的形状为(3, 3),并且和原矩阵matrix相同。
这说明,当我们对原矩阵进行squeeze()
操作时,得到的新矩阵形状和原矩阵形状一致,但是多余的1维度已经被去掉了。