numpy添加新的维度:newaxis的方法

yipeiwu_com7年前Python基础

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

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

一维数组

x = np.random.randint(1, 8, size=5)

x
Out[48]: array([4, 6, 6, 6, 5])

x1 = x[np.newaxis, :]

x1
Out[50]: array([[4, 6, 6, 6, 5]])

x2 = x[:, np.newaxis]

x2
Out[52]: 
array([[4],
  [6],
  [6],
  [6],
  [5]])

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

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

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

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

如下:

一般问题

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

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

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

假如我们需要将其还原为二维,就需要上面的方法了

以上这篇numpy添加新的维度:newaxis的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

python实现人民币大写转换

本文实例为大家分享了python实现人民币大写转换的具体代码,供大家参考,具体内容如下 #!/usr/bin/python # -*- coding:utf-8 -*- # ***...

用xpath获取指定标签下的所有text的实例

今天用xpath获取的元素下面text 是被几个b标签分割开的,我想要一次性全部获取,参考了其他人的博客是如下的做法: value_ls = html.xpath("//tr/td[...

Python安装模块的常见问题及解决方法

1、error: command ‘x86_64-linux-gnu-gcc' failed with exit status 解决办法: # Python 3 $ sudo apt...

面向对象学习之pygame坦克大战

经过一天多的奋战,查阅文献,参考别人的代码等等,完成了第一个面向对象的小项目,也深深体会到面向对象编程思想在游戏编程中所扮演的角色。 附上代码,参考了别人的代码,以及对他们代码的完善,又...

python动态视频下载器的实现方法

python动态视频下载器的实现方法

这里向大家分享一下python爬虫的一些应用,主要是用爬虫配合简单的GUI界面实现视频,音乐和小说的下载器。今天就先介绍如何实现一个动态视频下载器。 爬取电影天堂视频 首先介绍的是py...