BraveZhao的个人博客分享 http://blog.sciencenet.cn/u/BraveZhao

博文

NumPy 数据类型 dtype

已有 7169 次阅读 2019-6-12 22:03 |个人分类:Python|系统分类:科研笔记

本文参考自:https://www.runoob.com/numpy/numpy-dtype.html

Numpy支持多种数据类型:

bool_布尔型数据类型(True 或者 False)
int_默认的整数类型(类似于 C 语言中的 long,int32 或 int64)
intc与 C 的 int 类型一样,一般是 int32 或 int 64
intp用于索引的整数类型(类似于 C 的 ssize_t,一般情况下仍然是 int32 或 int64)
int8字节(-128 to 127)
int16整数(-32768 to 32767)
int32整数(-2147483648 to 2147483647)
int64整数(-9223372036854775808 to 9223372036854775807)
uint8无符号整数(0 to 255)
uint16无符号整数(0 to 65535)
uint32无符号整数(0 to 4294967295)
uint64无符号整数(0 to 18446744073709551615)
float_float64 类型的简写
float16半精度浮点数,包括:1 个符号位,5 个指数位,10 个尾数位
float32单精度浮点数,包括:1 个符号位,8 个指数位,23 个尾数位
float64双精度浮点数,包括:1 个符号位,11 个指数位,52 个尾数位
complex_complex128 类型的简写,即 128 位复数
complex64复数,表示双 32 位浮点数(实数部分和虚数部分)
complex128复数,表示双 64 位浮点数(实数部分和虚数部分)

数据类型对象 (dtype)

数据类型对象是用来描述与数组对应的内存区域如何使用,这依赖如下几个方面:

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

  • 数据的大小(例如, 整数使用多少个字节存储)

  • 数据的字节顺序(小端法或大端法)

  • 在结构化类型的情况下,字段的名称每个字段的数据类型每个字段所取的内存块的部分

  • 如果数据类型是子数组,它的形状和数据类型

dtype 对象是使用以下语法构造的:
numpy.dtype(object, align, copy)

实例:

1. 下面实例展示结构化数据类型的使用,类型字段名称和对应的实际类型将被创建。

import numpy as np

dt = np.dtype([('age',np.int8)])

a = np.array([(10,),(20,),(30,)], dtype = dt)

print(a)

输出结果为:

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

# 类型字段名可以用于存取实际的 age 列

print(a['age'])

输出结果为:

[10 20 30]


2. 下面的示例定义一个结构化数据类型 student,包含字符串字段 name,整数字段 age,及浮点字段 marks,并将这个 dtype 应用到 ndarray 对象。

# int8, int16, int32, int64 四种数据类型可以使用字符串 'i1', 'i2','i4','i8' 代替

import numpy as np

student = np.dtype([('name','S20'), ('age', 'i1'), ('marks', 'f4')])

a = np.array([('abc', 21, 50),('xyz', 18, 75)], dtype = student)

print(a)

#其中S20中的20代表20个字符

输出结果为:

[('abc', 21, 50.0), ('xyz', 18, 75.0)]

每个内建类型都有一个唯一定义它的字符代码,如下:

字符对应类型
b布尔型
i(有符号) 整型
u无符号整型 integer
f浮点型
c复数浮点型
mtimedelta(时间间隔)
Mdatetime(日期时间)
O(Python) 对象
S, a(byte-)字符串
UUnicode
V原始数据 (void)




https://wap.sciencenet.cn/blog-3388193-1184647.html

上一篇:Python Numpy库之Ndarray 对象
下一篇:Python NumPy 数组属性
收藏 IP: 157.0.78.*| 热度|

0

该博文允许注册用户评论 请点击登录 评论 (0 个评论)

数据加载中...

Archiver|手机版|科学网 ( 京ICP备07017567号-12 )

GMT+8, 2024-4-18 23:19

Powered by ScienceNet.cn

Copyright © 2007- 中国科学报社

返回顶部