一维和二维数组的存取
CSV是一种常见的文件格式,用来存储批量数据
- 将数据写入CSV文件的函数:np.savetxt(fname,array,fmt = “%.18e”,delimiter = None)
参数 |
描述 |
fname |
文件、字符串或产生器,可以是.gz或.bz2的压缩文件 |
array |
存入文件的数组 |
fmt |
写入文件的格式 |
delimiter |
分割字符串,默认是任何空格 |
- 将CSV文件中的数据读入到NumPy中ndarray数组类型中的函数:np.loadtxt(fname,dtype = np.float,delimiter = None,unpack = False)
参数 |
描述 |
fname |
文件、字符串或产生器,可以是.gz或.bz2的压缩文件 |
dtype |
数据类型,可选, |
delimiter |
分割字符串,默认是任何空格 |
unpack |
如果False,读入数据写进一个数组;如果True,读入数据将分别写入不同数组 |
注意:CSV只能有效存储一维和二维数组
np.savetxt()、np.loadtxt()只能有效存取一维和二维数组
多维数组的存取
- a.tofile(frame,sep = “”,format = “%s”)
参数 |
描述 |
fname |
文件、字符串 |
sep |
数据分割字符串,如果是空串,写入文件为二进制 |
format |
写入数据的格式 |
注意:此方法存入的多维数组不包含任何维度信息,它只是将数组中的所有元素逐一地列出并输出到文件中
- np.fromfile(fname,dtype = float,count = -1,sep = “”)
参数 |
描述 |
fname |
文件、字符串 |
dtype |
读取的数据类型 |
count |
读入元素个数,-1表示读入整个文件 |
sep |
数据分割字符串,如果是空串,写入文件为二进制 |
注意:a.tofile()和np.fromfile()需要配合使用
可以通过元数据文件来存储额外信息
如要利用np.fromfile()和.reshape()从文件中还原数组,需要知道存入文件时数组的维度和元素类型
- np.save(fname,array)或np.savez(fname,array)、np.load(fname)
参数 |
描述 |
fname |
文件名,以.npy为扩展名,压缩扩展名为.npz |
array |
数组变量 |
使用: