开发者学堂课程【Python 数据分析库 Pandas 快速入门:HDF5文件的读取与储存】学习笔记,与课程紧密联系,让用户快速学习知识。
课程地址:https://developer.aliyun.com/learning/course/607/detail/8857
HDF5文件的读取与储存
内容介绍:
一、读取 hdf5 文件
二、储存 hdf5 文件
三、优先选择使用 hdf5 文件存储
HDF5 文件的读取和存储需要指定一个键,值为要存储的 DataFrame
HDF5 存储3维数据的文件
key1 dataframe1 二维数据
key2 dataframe2 二维数据
读取 hdf5文件
pd.read_hdf(path, key = )
path:文件的路径
key:读取的建
案例:
In:
day_close = pd.read_hdf( " . /stock_data/day/day_close.h5")
//在API中是有key的,读取成功
day_close
Out:
存储hdf5文件
df.to_hdf(path, key = )
案例:
In:
day_close.to_hdf( "test.h5" )
//不加 key,报错
Out:
TypeError : to_hdf ( ) missing 1 required positional argument: 'key'
In:
day_close.to_hdf( "test.h5",key = “close” )
//储存成功
pd.read_hdf ( "test.h5" ) //此时不加 key 也可以,加上 key 输出相同
In:
day_open = pd.read_hdf( " ./stock_data/day/day_open.h5" )
day_open.to_hdf ( "test.h5" , key="open" )
pd.read_hdf ( "test.h5 " )
//此时文件中有两个 key,运行就会报错,系统不知道要读哪个 key
Out:
valueError: key must be provided when HDF5 file contains multiple datasets.
In:
pd.read_hdf ( "test.h5 ", key = “open” )
//此时就会输出成功
如果读取的时候出现错误:
ImportErrorv RDFStore requires PyTables。“No module named ‘tables’ " problem importing
是因为没有装“tables”这个库,这个库就是用来支持读取 HDF5 文件的。
优先选择使用 hdf5文件存储
1.HDF5 在存储的是支持压缩,使用的方式是 blosc,这个是速度最快的也是 pandas 默认支持的。
2.使用压缩可以提高磁盘利用率,节省空间。
3.·HDF5 还是跨平台的,可以轻松迁移到 hadoop 上面。