python二进制格式操作

本文介绍了Python中的二进制格式操作,特别是pickle、HDF5和Excel文件的使用。pickle模块用于高效存储数据,但格式可能不持久。HDF5是一种科学数组数据存储格式,支持即时压缩和查询操作,适用于大型数据集。pandas提供了HDFStore类简化了HDF5的使用。此外,还讨论了如何使用pandas读写Excel文件。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

学习笔记

使用python内建的 pickle序列化模块 进行二进制格式操作是存储数据最高效、最方便的方式之一

pandas 对象拥有一个to_pickle 方法可以将数据以pickle格式写入硬盘
使用 pd.read_pickle 读取文件中 pickle 化的对象

pickle 仅被推荐作为短期的存储格式:
因为 pickle 很难确保格式的长期有效性,一个今天被 pickle 化的对象可能明天会因为库的新版本而无法反序列化。

pandas 内建支持其他两个二进制格式:HDF5 和 MessagePack

pandas 和 numpy 其他的存储格式包括:

  1. bcolz
    基于 Blosc 压缩库的可压缩列式二进制格式
  2. Feather
    跨语言列式文件格式,Feather使用Apache箭头列式存储器格式

使用HDF5格式

HDF5 用于存储大量的科学数组数据
以C库的形式提供,并且具有许多其他语言的接口,包括Java,Julia,matlab和python
HDF5中的“HDF(Hierarchical Data Format)”代表 分层数据格式
每个HDF5文件可以存储多个数据集并且支持元数据

HDF5 支持多种压缩模式的即时压缩,使得重复模式的数据可以更高效地存储
HDF5 适用于处理不适合在内存中存储的超大型数据,可以使你高效读写大型数组的一小块

尽管可以通过使用PyTables或h5py等库直接访问HDF5文件,但pandas提供了一个高阶的接口,可简化Series和DataFrame的存储
HDFStore类像字典一样工作并处理低级别细节

frame=pd.DataFrame({
   'a':np.random.randn(
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值