Numpy之结构数组与数组持久化

在Numpy中可能会用到类似C语言中的结构体,Numpy中定义结构数组的方法也比较简单:

1 import numpy as np
2 person = np.dtype({'names':['name', 'age', 'weight'], 'formats':['S32', 'i', 'f']})
3 p = np.arrary([("Zhang", 32, 75.5), ("Wang", 25, '60.5')], dtype=person)

字典有两个关键字:names,formats,这是必须的。names定义结构体中每个字段名,而formats则对各个字段的数据格式进行了说明:

S32:32个字节的字符串

i:32 的int类型,np.int32

f:32位的单精度浮点类型,np.float32

 

访问方式使用下标访问,数组内存共享。

1 p[0]
2 ('Zhang', 32, 75.5)
3 
4 p[0]["name"]
5 'Zhang'

 

 

将数据保存至文件,可以使用tofile()方法,读取可以使用fromfile()方法:

1 p.tofile("d:\\test.bin")
2 b = np.fromfile("d:\\test.bin", dtype=person) #需要注明数据类型
3 c = np.matrix(b)                                         #通过数组创建矩阵

 

 

转载于:https://www.cnblogs.com/AllStarGIS/p/3782748.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值