正在读取存储在i HDF5 python 2.7中的部分数据集

2024-06-25 22:49:24 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个相当大的HDF5文件,其中存储(除其他外)一个大的时间序列数据集,其中有150名参与者的眼睛跟踪数据。

In [20]: f['data_collection/events/eyetracker/BinocularEyeSampleEvent/']
Out[21]: <HDF5 dataset "BinocularEyeSampleEvent": shape (8297323,), type "|V178">

我不能把这些都读入内存,因为它太大了,但我怎么能把它的一部分读出来呢?

我想这样做-一次读取一个参与者(参与者的columnname是“name”),执行一些操作并保存到较小的数据帧:

^{pr2}$

我该怎么做?我用h5py来读取HDF5文件。

/马丁


Tags: 文件数据indata时间序列outevents
1条回答
网友
1楼 · 发布于 2024-06-25 22:49:24

你的问题看起来像一个Map Reduce算法。因为你有巨大的数据集,你应该把你的数据转换成一个MapReduce算法,这个算法输出你在hadoop集群上关心的数据的键值对。这样你可以处理很多数据。查看此链接以获取帮助:

http://www.michael-noll.com/tutorials/writing-an-hadoop-mapreduce-program-in-python/

Hadoop也使用HDFS,所以它可能会对您有所帮助。映射器只处理您关心的数据,并输出key、value和reducer进行一些聚合。在

相关问题 更多 >