python 如何减少一个维度

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python 如何减少一个维度相关的知识,希望对你有一定的参考价值。

原来的图片是(32,32,3)的,然后我经过操作变成(1,32,32,3).现在我想把它的第一维去掉,请问如何实现?

#创建一个宽度为3,高度为4的数组
#[[0,0,0],
# [0,0,0],
# [0,0,0],
# [0,0,0]]
myList = [[0] * 3] * 4

但是当操作myList[0][1] = 1时,发现整个第二列都被赋值,变成
[[0,1,0],
[0,1,0],
[0,1,0],
[0,1,0]]
参考技术A 直接x = torch.squeeze(x)
1的维度就去掉了

numpy如何沿维度拆分数组?

numpy如何沿维度拆分数组?
比如我有一个数组,shape为(30,30,3),我希望能够将它变成3个(30,30,1),我应该怎么做?

参考技术A 数组的维度就是一个数组中的某个元素,当用数组下标表示的时候,需要用几个数字来表示才能唯一确定这个元素,这个数组就是几维。numpy中直接用 * 即可表示数与向量的乘法,参考python 2.7的一个例子:inport numpy as np a = np.array([1,2,3,4]) # 向量 b = 5 # 数 print a*b ++++++++++++ [5,10,15,20] NumPy数组的下标从0开始。 同一个NumPy数组中所有元素的类型必须是相同的。在详细介绍NumPy数组之前。先详细介绍下NumPy数组的基本属性。NumPy数组的维数称为秩(rank),一维数组的秩为1,二维数组的秩为2,以此类推。在NumPy中,每一个线性的数组称为是一个轴(axes),秩其实是描述轴的数量。比如说,二维数组相当于是两个一维数组,其中第一个一维数组中每个元素又是一个一维数组。所以一维数组就是NumPy中的轴(axes),第一个轴相当于是底层数组,第二个轴是底层数组里的数组。而轴的数量——秩,就是数组的维数。

以上是关于python 如何减少一个维度的主要内容,如果未能解决你的问题,请参考以下文章

【squeeze、unsqueeze】减少、增加维度

在 Keras 中使用自动编码器减少数据集的维度

如何在循环中使用python矩阵的维度

numpy如何沿维度拆分数组?

Python:如何在不扩展矩阵的情况下增加矩阵的维度?

python如何减小维度