numpy添加新的维度

Posted loubin

tags:

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

原文链接:https://blog.csdn.net/xtingjie/article/details/72510834

numpy中包含的newaxis可以给原数组增加一个维度

np.newaxis放的位置不同,产生的新数组也不同

一维数组

 1 x = np.random.randint(1, 8, size=5)
 2 
 3 x
 4 Out[48]: array([4, 6, 6, 6, 5])
 5 
 6 x1 = x[np.newaxis, :]
 7 
 8 x1
 9 Out[50]: array([[4, 6, 6, 6, 5]])
10 
11 x2 = x[:, np.newaxis]
12 
13 x2
14 Out[52]: 
15 array([[4],
16        [6],
17        [6],
18        [6],
19        [5]])

 

由以上代码可以看出,当把newaxis放在前面的时候

以前的shape是5,现在变成了1××5,也就是前面的维数发生了变化,后面的维数发生了变化

而把newaxis放后面的时候,输出的新数组的shape就是5××1,也就是后面增加了一个维数

所以,newaxis放在第几个位置,就会在shape里面看到相应的位置增加了一个维数

如下:

 技术图片

 

一般问题
经常会遇到这样的问题,需要从数组中取出一部分的数据,也就是取出“一片”或者“一条”

比如需要从二维数组里面抽取一列

取出来之后维度却变成了一维

假如我们需要将其还原为二维,就需要上面的方法了
---------------------
作者:xtingjie
来源:CSDN
原文:https://blog.csdn.net/xtingjie/article/details/72510834
版权声明:本文为博主原创文章,转载请附上博文链接!

以上是关于numpy添加新的维度的主要内容,如果未能解决你的问题,请参考以下文章

Numpy 数组:连接展平和添加维度

这是在一行代码中向 numpy 数组添加额外维度的最佳方法吗?

Sklearn PCA:PC 的正确维度

Numpy基础(day3)维度增加及合并数组

Numpy基础(day3)维度增加及合并数组

numpy 笔记:改变形态