Python Tables 学习笔记

这篇博客介绍了如何使用 Python 的 Tables 库操作 HDF5 文件,包括写数据到表、从表中读取数据、创建数组对象、压缩数组和可扩展压缩数组。通过实例展示了如何定义数据类型、写入和读取数据,以及使用不同的压缩方式存储数据。
摘要由CSDN通过智能技术生成

Python Tables 学习笔记

实在是太烦了,虽然以前也用过python tables来存储大数据,但是还是有些功能不太懂。我只用了最简单的create array直接把所有的数据一次性写入hdf5文件。但是现在的电脑内存比较小,处理的数据太大,一次性写入,内存会不足。另一方面,一边处理数据,一边写入数据,是一种更好的策略。于是自己又重写学了python tables,也花了不少时间。在此总结下,也为自己做好总结立个标杆。要总结好,不然很快就会忘记了。

本文将从tables的读,写,以及一些简单的操作进行简要描述。使得tables这个tool能够为我们所用。
首先,我们先介绍下HDF5(Hierarchical Data Format).HDF 是用于存储和分发科学数据的一种自我描述、多对象文件格式。HDF 是由美国国家超级计算应用中心(NCSA)创建的,以满足不同群体的科学家在不同工程项目领域之需要。HDF 可以表示出科学数据存储和分布的许多必要条件。其有以下一些特征:
- 自述性
- 通用性
- 灵活性
- 扩展性
- 跨平台


HDF文件是安装树状结构组织起来的。其顶部是根节点(),根节点下可以接很多分组(group),每个分组下有可以有很多节点,包括表(table),数组(array),压缩数组(compression array,Earray),可扩展压缩数组(enlargeable array,Earray),变长数组(variable length array,VLarray)。每个节点下还有叶子节点,即最终存储的数据。

简单知道HDF5文件的特征,我们接着介绍下,在python下如何使用tables(其实还有H5Py这个包也是可以用)这个package来实现对HDF5文件的操作。
假设大家已经把tables及其依赖的库如numpy等包安装好在python的环境下。

1 写数据到表

这里简单以pytable里面的例子进行说明。对于table,我们首先要定义表格中每个元素(field)的数据类型,长度等信息。如下图,我们定义了一个particle类,其名称,数据类型,及长度。比如说name这个field是字符串类型,最大长度是16个字节。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值