Numpy对文件的存取

Numpy向文件写入CSV和读取

1、一维二维

写入函数

np.savetxt(frame, array, fmt=“%.18e”, delimiter=None)

frame:要存入的文件、文件名、或生成器,可以是.gz或.bz2的压缩文件

arrry:存入文件的数组

fmt:要存储的数据格式。

delimiter:分隔字符串,默认是空格。

问题描述
  • 保存到CSV文件时出错

PermissionError: [Errno 13] Permission denied: ‘a.csv’

在这里插入图片描述

原因分析:
  • python脚本往CSV文件写入数据时手动打开文件导致写入终止
解决办法
  • 关闭手动打开文件,重新运行即可

读取数据函数

np.loadtxt(frame,dtype=np.float,delimiter=None,unpack=False)

参数解释
frame要读取的文件、文件名或生成器。如果文件扩展名是.gz或.bz2,则首先将文件解压缩。 请注意,生成器应返回字节字符串。
dtype可选,结果数组的数据类型; 默认值:float。
delimiter可选,用于分隔值的字符串。
skiprows可选,跳过第几行,包括注释; 默认值:0
usecols可选,要读取的列,第一列为0,默认值为“None”
unpack可选,如果是True,则对返回的数组进行转置,默认值为False

CSV局限性

两个函数只能存取一维数组和二维数组

2、任意维度函数

写入函数

a.tofile(frame,sep=‘’,format=‘%s’)

参数解释
frame文件、字符串
sep数据分割字符串,如果是空串,写入文件为二进制‘
format写入数据的格式

读取函数

np.fromfile(frame,dtype=float,count=-1,sep=‘’)

参数解释
frame文件、字符串
dtype读取的数据类型
count读入元素个数,-1表示读入整个文件
sep数据分割字符串,如果是空串,写入文件为二进制

在这里插入图片描述

在这里插入图片描述

注意

该方法需要读取时知道存入文件时数组的维度和元素类型
a.tofile()和np.fromfile()需要配合使用
可以通过元数据文件来存储额外信息

Numpy便捷文件存取

存:np.save(fname,array)或np.savez(fname,array)

参数解释
fname文件名,以.npy为扩展名,压缩扩展名为.npz
array数组变量

取:np.load(fname)

参数解释
fname文件名,以.npy为扩展名,压缩扩展名为.npz

在这里插入图片描述

存取方法的选择

便捷式存取npy文件一般用于程序中间的数据缓存,可选用
若与其他文件对接就可以使用其他2种方法

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值