Numpy中ndim、shape、dtype、astype的用法详解


Posted in Python onJune 14, 2020

本文介绍numpy数组中这四个方法的区别ndim、shape、dtype、astype。

1.ndim

Numpy中ndim、shape、dtype、astype的用法详解

ndim返回的是数组的维度,返回的只有一个数,该数即表示数组的维度。

2.shape

Numpy中ndim、shape、dtype、astype的用法详解

shape:表示各位维度大小的元组。返回的是一个元组。

对于一维数组:有疑问的是为什么不是(1,6),因为arr1.ndim维度为1,元组内只返回一个数。

对于二维数组:前面的是行,后面的是列,他的ndim为2,所以返回两个数。

对于三维数组:很难看出,下面打印arr3,看下它是什么结构。

Numpy中ndim、shape、dtype、astype的用法详解

先看最外面的中括号,包含[[1,2,3],[4,5,6]]和[[7,8,9],[10,11,12]],假设他们为数组A、B,就得到[A,B],如果A、B仅仅是一个数字,他的ndim就是2,这就是第一个数。但是A、B是(2,3)的数组。所以结合起来,这就是arr3的shape,为(2,2,3)。

将这种方法类比,也就可以推出4维、5维数组的shape。

3.dtype

Numpy中ndim、shape、dtype、astype的用法详解

dtype:一个用于说明数组数据类型的对象。返回的是该数组的数据类型。由于图中的数据都为整形,所以返回的都是int32。如果数组中有数据带有小数点,那么就会返回float64。

有疑问的是:整形数据不应该是int吗?浮点型数据不应该是float吗?

解答:int32、float64是Numpy库自己的一套数据类型。

4.astype

Numpy中ndim、shape、dtype、astype的用法详解

astype:转换数组的数据类型。

int32 --> float64        完全ojbk

float64 --> int32        会将小数部分截断

string_ --> float64        如果字符串数组表示的全是数字,也可以用astype转化为数值类型

Numpy中ndim、shape、dtype、astype的用法详解

注意其中的float,它是python内置的类型,但是Numpy可以使用。Numpy会将Python类型映射到等价的dtype上。

以上是这四个方法的简单用法,之后若有什么新发现再做补充。

到此这篇关于Numpy中ndim、shape、dtype、astype的用法详解的文章就介绍到这了,更多相关Numpy中ndim、shape、dtype、astype内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
Python实现将数据框数据写入mongodb及mysql数据库的方法
Apr 02 Python
用python处理图片之打开\显示\保存图像的方法
May 04 Python
Python爬虫实现(伪)球迷速成
Jun 10 Python
Sanic框架异常处理与中间件操作实例分析
Jul 16 Python
virtualenv 指定 python 解释器的版本方法
Oct 25 Python
python内存监控工具memory_profiler和guppy的用法详解
Jul 29 Python
Window10下python3.7 安装与卸载教程图解
Sep 30 Python
python实现指定ip端口扫描方式
Dec 17 Python
python 爬取古诗文存入mysql数据库的方法
Jan 08 Python
Anaconda使用IDLE的实现示例
Sep 23 Python
Python3.7安装PyQt5 运行配置Pycharm的详细教程
Oct 15 Python
python实现按日期归档文件
Jan 30 Python
DataFrame 数据合并实现(merge,join,concat)
Jun 14 #Python
python中pandas库中DataFrame对行和列的操作使用方法示例
Jun 14 #Python
Django 构建模板form表单的两种方法
Jun 14 #Python
Python Django搭建网站流程图解
Jun 13 #Python
Python xpath表达式如何实现数据处理
Jun 13 #Python
Python轻量级web框架bottle使用方法解析
Jun 13 #Python
PyInstaller运行原理及常用操作详解
Jun 13 #Python
You might like
一个简单计数器的源代码
2006/10/09 PHP
PHP类中Static方法效率测试代码
2010/10/17 PHP
探讨:使用XMLSerialize 序列化与反序列化
2013/06/08 PHP
PHP echo,print,printf,sprintf函数之间的区别与用法详解
2013/11/27 PHP
php接口和抽象类使用示例详解
2014/03/02 PHP
注释PHP和html混合代码的小技巧(分享)
2016/11/03 PHP
laravel学习笔记之模型事件的几种用法示例
2017/08/15 PHP
获取DOM对象的几种扩展及简写
2006/10/09 Javascript
jQuery 插件 将this下的div轮番显示
2009/04/09 Javascript
鼠标移到图片上变大显示而不是放大镜效果
2014/06/15 Javascript
js图片滚动效果时间可随意设定当鼠标移上去时停止
2014/06/26 Javascript
详解JavaScript中的客户端消息框架设计原理
2015/06/24 Javascript
JS+CSS实现鼠标经过弹出一个DIV框完整实例(带缓冲动画渐变效果)
2016/03/25 Javascript
原生JS实现风箱式demo,并封装了一个运动框架(实例代码)
2016/07/22 Javascript
AngularJS入门教程之迭代器过滤详解
2016/08/18 Javascript
JSON对象 详解及实例代码
2016/10/18 Javascript
js手机号批量滚动抽奖实现代码
2020/04/17 Javascript
100多个基础常用JS函数和语法集合大全
2017/02/16 Javascript
详解JavaScript调用栈、尾递归和手动优化
2017/06/03 Javascript
解决Vue.js 2.0 有时双向绑定img src属性失败的问题
2018/03/14 Javascript
使用jquery实现轮播图效果
2021/01/02 jQuery
[00:35]DOTA2上海特级锦标赛 Newbee战队宣传片
2016/03/03 DOTA
python爬虫入门教程--快速理解HTTP协议(一)
2017/05/25 Python
分析python请求数据
2018/08/19 Python
Python下利用BeautifulSoup解析HTML的实现
2020/01/17 Python
Python 整行读取文本方法并去掉readlines换行\n操作
2020/09/03 Python
使用python操作lmdb对数据读取的实例
2020/12/11 Python
浅谈Selenium+Webdriver 常用的元素定位方式
2021/01/13 Python
python re.match()用法相关示例
2021/01/27 Python
Java基础面试题
2012/11/02 面试题
公司开业庆典策划方案
2014/06/04 职场文书
邹越感恩父母演讲稿
2014/08/28 职场文书
2014年采购工作总结
2014/11/20 职场文书
金融专业银行实习证明模板
2014/11/28 职场文书
留学推荐信英文范文
2015/03/26 职场文书
fastdfs+nginx集群搭建的实现
2021/03/31 Servers