1、引言
通过参考相关博客对hdf5格式简要介绍。
hdf5在存储的是支持压缩,使用的方式是blosc,这个是速度最快的也是pandas默认支持的。 使用压缩可以提磁盘利用率,节省空间。 开启压缩也没有什么劣势,只会慢一点点。 压缩在小数据量的时候优势不明显,数据量大了才有优势。 同时发现hdf读取文件的时候只能是一次写,写的时候可以append,可以put,但是写完成了之后关闭文件,就不能再写了, 会覆盖。
另外,为什么单独说pandas,主要因为本人目前对于h5py这个包的理解不是很深入,不知道如果使用该包存pd.DataFrame格式的文件,不像numpy格式文件可以直接存储,因此本人只能依赖pandas自带一些函数进行处理。
2、写入文件
使用函数:pd.HDFStore
import numpy as np import pandas as pd ####生成9000,0000条数据,9千万条 a = np.random.standard_normal((90000000,4)) b = pd.DataFrame(a) ####普通格式存储: h5 = pd.HDFStore('/data/stock/test_s.h5','w') h5['data'] = b h5.close() ####压缩格式存储 h5 = pd.HDFStore('/data/stock/test_c4.h5','w', complevel=4, complib='blosc') h5['data'] = b h5.close()
3、读取文件
使用函数:pd.read_hdf
参数:文件名,key
data=pd.read_hdf('/data/stock/test_c4.h5',key='data')
以上这篇对pandas写入读取h5文件的方法详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。