Python数据存储之 h5py详解

yipeiwu_com6年前Python基础

1、Python数据存储(压缩)

(1)numpy.save , numpy.savez , scipy.io.savemat

numpy和scipy内建的数据存储方式。

(2)cPickle + gzip

cPickle是pickle内建的数据存储方式,gzip是常用的文件压缩模块。

(3)h5py

h5py是对HDF5文件格式进行读写的python包,关于h5py更多介绍与安装,参考官方网站

关于HDF5,参考官方网站。:

一个HDF5文件就是一个由两种基本数据对象(groups and datasets)存放多种科学数据的容器:

HDF5 dataset: 数据元素的一个多维数组以及支持元数据(metadata); HDF5 group: 包含0个或多个HDF5对象以及支持元数据(metadata)的一个群组结构;

总之,dataset是类似于数组的数据集,而group是类似文件夹一样的容器,存放dataset和其他group;group和dataset在h5py中的使用有点类似于词典和Numpy中数组的用法。

h5py的优势:速度快、压缩效率高,总之,numpy.savez和cPickle存储work或不work的都可以试一试h5py!

2、h5py读取和存储数据示例

import h5py
X= np.random.rand(100, 1000, 1000).astype('float32')
y = np.random.rand(1, 1000, 1000).astype('float32')

# Create a new file
f = h5py.File('data.h5', 'w')
f.create_dataset('X_train', data=X)
f.create_dataset('y_train', data=y)
f.close()

# Load hdf5 dataset
f = h5py.File('data.h5', 'r')
X = f['X_train']
Y = f['y_train']
f.close()

详细使用方法,参考官网

以上这篇Python数据存储之 h5py详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

用pandas按列合并两个文件的实例

用pandas按列合并两个文件的实例

直接上图,图文并茂,相信你很快就知道要干什么。 A文件: B文件: 可以发现,A文件中“汉字井号”这一列和B文件中“WELL”这一列的属性相同,以这一列为主键,把B文件中“TIME”...

Python写的服务监控程序实例

前言: Redhat下安装Python2.7 rhel6.4自带的是2.6, 发现有的机器是python2.4。 到python网站下载源代码,解压到Redhat上,然后运行下面的命令:...

PyCharm汉化安装及永久激活详细教程(靠谱)

PyCharm汉化安装及永久激活详细教程(靠谱)

PyCharm 官方下载地址:http://www.jetbrains.com/pycharm/download 进入该网站后,我们会看到如下界面: professional 表示专...

python使用Plotly绘图工具绘制水平条形图

python使用Plotly绘图工具绘制水平条形图

本文实例为大家分享了python绘制水平条形图的具体代码,供大家参考,具体内容如下 水平条形图与绘制柱状图类似,大家可以先看看我之前写的博客,如何绘制柱状图 水平条形图需要在Bar函数中...

python3文件复制、延迟文件复制任务的实现方法

python3文件复制、延迟文件复制任务的实现方法

使用python版本3.6.1 工作中测试客户端传输报文速率,写了以下两个脚本。 第一个,简单的复制文件并重命名。 第二个,在循环中增加延时的功能。 使用场景将文件复制并重命名(重...