热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

python改变numpy数据类型_NumPy数据类型

NumPy支持比Python更多的数字类型。下表显示了在NumPy中定义的不同标量数据类型。Sr.No.数据类型和说明1bool_布尔(True或False

NumPy支持比Python更多的数字类型。下表显示了在NumPy中定义的不同标量数据类型。

Sr.No.

数据类型和说明

1

bool_

布尔(True或False)存储为一个字节

2

int_

默认整数类型(与C long相同;通常是int64或int32)

3

intc

与C int相同(通常为int32或int64)

4

intp

用于索引的整数(与C ssize_t相同;通常为int32或int64)

5

int8

字节(-128至127)

6

int16

整数(-32768至32767)

7

int32

整数(-2147483648至2147483647)

8

int64

整数(-9223372036854775808至9223372036854775807)

9

uint8

无符号整数(0到255)

10

uint16

无符号整数(0到65535)

11

uint32

无符号整数(0到4294967295)

12

uint64

无符号整数(0到18446744073709551615)

13

float_

float64的简写

14

float16

半精度浮点:符号位,5位指数,10位尾数

15

float32

单精度浮点数:符号位,8位指数,23位尾数

16

float64

双精度浮点:符号位,11位指数,52位尾数

17

complex_

复杂的速记128

18

complex64

复数,由两个32位浮点数(实部和虚部)

19

complex128

复数,由两个64位浮点数(实部和虚部)

NumPy数字类型是dtype(数据类型)对象的实例,每个对象都有独特的特征。该dtypes可用作np.bool_,np.float32等。

数据类型对象(dtype)

数据类型对象根据以下几个方面描述对应于数组的固定内存块的解释 -

数据类型(整型,浮点型或Python对象)

数据的大小

字节顺序(小端或大端)

在结构化类型的情况下,字段的名称,每个字段的数据类型和每个字段占用的存储器块的一部分。

如果数据类型是子阵列,则它的形状和数据类型

字节顺序由数据类型前缀&#39;<&#39;或&#39;>&#39;决定。&#39;<&#39;表示编码是小端&#xff08;最小有效值存储在最小地址中&#xff09;。&#39;>&#39;表示编码是大端&#xff08;最高有效字节存储在最小地址中&#xff09;。

一个dtype对象使用以下语法构造 -

numpy.dtype(object, align, copy)

参数是 -

Object - 被转换为数据类型对象

Align - 如果为true&#xff0c;则向该字段添加填充以使其类似于C-struct

Copy - 制作dtype对象的新副本。 如果为false&#xff0c;则结果是对内置数据类型对象的引用

例1

# using array-scalar type

import numpy as np

dt &#61; np.dtype(np.int32)

print dt

输出如下 -

int32

例2

#int8, int16, int32, int64 can be replaced by equivalent string &#39;i1&#39;, &#39;i2&#39;,&#39;i4&#39;, etc.

import numpy as np

dt &#61; np.dtype(&#39;i4&#39;)

print dt

输出如下 -

int32

例3

# using endian notation

import numpy as np

dt &#61; np.dtype(&#39;>i4&#39;)

print dt

输出如下 -

>i4

以下示例显示了使用结构化数据类型。这里要声明字段名称和相应的标量数据类型。

例4

# first create structured data type

import numpy as np

dt &#61; np.dtype([(&#39;age&#39;,np.int8)])

print dt

输出如下 -

[(&#39;age&#39;, &#39;i1&#39;)]

例5

# now apply it to ndarray object

import numpy as np

dt &#61; np.dtype([(&#39;age&#39;,np.int8)])

a &#61; np.array([(10,),(20,),(30,)], dtype &#61; dt)

print a

输出如下 -

[(10,) (20,) (30,)]

例6

# file name can be used to access content of age column

import numpy as np

dt &#61; np.dtype([(&#39;age&#39;,np.int8)])

a &#61; np.array([(10,),(20,),(30,)], dtype &#61; dt)

print a[&#39;age&#39;]

输出如下 -

[10 20 30]

例子7

以下示例定义了一个名为 student 的结构化数据类型&#xff0c;其中包含一个字符串字段&#39;name&#39;&#xff0c;一个 整数字段 &#39;age&#39;和一个

浮点字段 &#39;marks&#39;。 这个dtype被应用于ndarray对象。

import numpy as np

student &#61; np.dtype([(&#39;name&#39;,&#39;S20&#39;), (&#39;age&#39;, &#39;i1&#39;), (&#39;marks&#39;, &#39;f4&#39;)])

print student

输出如下 -

[(&#39;name&#39;, &#39;S20&#39;), (&#39;age&#39;, &#39;i1&#39;), (&#39;marks&#39;, &#39;

例8

import numpy as np

student &#61; np.dtype([(&#39;name&#39;,&#39;S20&#39;), (&#39;age&#39;, &#39;i1&#39;), (&#39;marks&#39;, &#39;f4&#39;)])

a &#61; np.array([(&#39;abc&#39;, 21, 50),(&#39;xyz&#39;, 18, 75)], dtype &#61; student)

print a

输出如下 -

[(&#39;abc&#39;, 21, 50.0), (&#39;xyz&#39;, 18, 75.0)]

每个内置数据类型都有一个唯一标识它的字符代码。

&#39;b&#39; - 布尔值

&#39;i&#39; - &#xff08;带符号&#xff09;整数

&#39;u&#39; - 无符号整数

&#39;f&#39; - 浮点

&#39;c&#39; - 复数浮点

&#39;m&#39; - timedelta

&#39;M&#39; - 日期时间

&#39;O&#39; - &#xff08;Python&#xff09;对象

&#39;S&#39;&#xff0c;&#39;a&#39; - &#xff08;字节&#xff09;字符串

&#39;U&#39; - Unicode

&#39;V&#39; - 原始数据&#xff08;void&#xff09;



推荐阅读
  • 本文详细介绍了Java中vector的使用方法和相关知识,包括vector类的功能、构造方法和使用注意事项。通过使用vector类,可以方便地实现动态数组的功能,并且可以随意插入不同类型的对象,进行查找、插入和删除操作。这篇文章对于需要频繁进行查找、插入和删除操作的情况下,使用vector类是一个很好的选择。 ... [详细]
  • Iamtryingtomakeaclassthatwillreadatextfileofnamesintoanarray,thenreturnthatarra ... [详细]
  • 向QTextEdit拖放文件的方法及实现步骤
    本文介绍了在使用QTextEdit时如何实现拖放文件的功能,包括相关的方法和实现步骤。通过重写dragEnterEvent和dropEvent函数,并结合QMimeData和QUrl等类,可以轻松实现向QTextEdit拖放文件的功能。详细的代码实现和说明可以参考本文提供的示例代码。 ... [详细]
  • 开发笔记:加密&json&StringIO模块&BytesIO模块
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了加密&json&StringIO模块&BytesIO模块相关的知识,希望对你有一定的参考价值。一、加密加密 ... [详细]
  • Java容器中的compareto方法排序原理解析
    本文从源码解析Java容器中的compareto方法的排序原理,讲解了在使用数组存储数据时的限制以及存储效率的问题。同时提到了Redis的五大数据结构和list、set等知识点,回忆了作者大学时代的Java学习经历。文章以作者做的思维导图作为目录,展示了整个讲解过程。 ... [详细]
  • 本文介绍了OC学习笔记中的@property和@synthesize,包括属性的定义和合成的使用方法。通过示例代码详细讲解了@property和@synthesize的作用和用法。 ... [详细]
  • Python语法上的区别及注意事项
    本文介绍了Python2x和Python3x在语法上的区别,包括print语句的变化、除法运算结果的不同、raw_input函数的替代、class写法的变化等。同时还介绍了Python脚本的解释程序的指定方法,以及在不同版本的Python中如何执行脚本。对于想要学习Python的人来说,本文提供了一些注意事项和技巧。 ... [详细]
  • 不同优化算法的比较分析及实验验证
    本文介绍了神经网络优化中常用的优化方法,包括学习率调整和梯度估计修正,并通过实验验证了不同优化算法的效果。实验结果表明,Adam算法在综合考虑学习率调整和梯度估计修正方面表现较好。该研究对于优化神经网络的训练过程具有指导意义。 ... [详细]
  • Android JSON基础,音视频开发进阶指南目录
    Array里面的对象数据是有序的,json字符串最外层是方括号的,方括号:[]解析jsonArray代码try{json字符串最外层是 ... [详细]
  • [大整数乘法] java代码实现
    本文介绍了使用java代码实现大整数乘法的过程,同时也涉及到大整数加法和大整数减法的计算方法。通过分治算法来提高计算效率,并对算法的时间复杂度进行了研究。详细代码实现请参考文章链接。 ... [详细]
  • 本文介绍了Python爬虫技术基础篇面向对象高级编程(中)中的多重继承概念。通过继承,子类可以扩展父类的功能。文章以动物类层次的设计为例,讨论了按照不同分类方式设计类层次的复杂性和多重继承的优势。最后给出了哺乳动物和鸟类的设计示例,以及能跑、能飞、宠物类和非宠物类的增加对类数量的影响。 ... [详细]
  • 本文介绍了在CentOS上安装Python2.7.2的详细步骤,包括下载、解压、编译和安装等操作。同时提供了一些注意事项,以及测试安装是否成功的方法。 ... [详细]
  • 本文介绍了在iOS开发中使用UITextField实现字符限制的方法,包括利用代理方法和使用BNTextField-Limit库的实现策略。通过这些方法,开发者可以方便地限制UITextField的字符个数和输入规则。 ... [详细]
  • 本文详细介绍了使用C#实现Word模版打印的方案。包括添加COM引用、新建Word操作类、开启Word进程、加载模版文件等步骤。通过该方案可以实现C#对Word文档的打印功能。 ... [详细]
  • Ihaveaworkfolderdirectory.我有一个工作文件夹目录。holderDir.glob(*)>holder[ProjectOne, ... [详细]
author-avatar
李老鱼儿_654
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有