我目前正在用虚拟大脑(www.thevirtualbrain.org)做一个项目,并模拟了一些脑电数据。为了进一步分析这一点,我想在python中打开这个模拟的时间序列,以便我可以使用MNE软件包来分析它。然而,我只能用h5格式存储来自虚拟大脑的脑电数据,我想不出如何在python中打开这个文件,因为我可以用它来使用MNE来分析它。
我可以在Python中阅读h5文件,并看到它的描述:
文件键结构时间结构“
但我不知道如何再次利用这些数据来分析脑电图。
有人知道怎么做吗?
谢谢!
西琳
发布于 2021-03-30 14:03:10
“键”是HDF5节点(组或数据集)的名称。要变得熟练,您需要了解HDF5文件模式。花点时间回顾一下HDF5在 Group上的文档。我推荐这个医生:HDF5简介。
根据上面的输出,您有两个数据集:
h5py以NumPy数组的形式检索数据集。type是数组的type属性,type是dtype属性。(熟悉NumPy也有帮助。)在这种情况下,所有的值都是浮动的。这两个数据集都有512行,但维度不同。我怀疑time
数据集保存了您的时间值。您必须研究data
数据集,以了解该数据是如何组织的。
下面是根据你问题中的详细信息检索数据的伪代码。data_arr
和time_arr
是关联数据集的NumPy数组。
with h5py.File('yourfile.h5','r') as h5f:
data_arr = h5f['data'][:]
time_arr = h5f['time'][:]
一旦将数据作为NumPy数组使用,就可以使用Python操作来处理它。这应该能让你开始。尝试一下,看看你能用data_arr
和time_arr
做些什么。注意:这是一个快速概述HDF5和h5py。这个问题还有很多。
注意,我使用的是Python的上下文管理器with/as:
,而不是简单的h5py.File()
调用。它是首选,并为您管理文件关闭操作(不需要h5f.close()
)
https://stackoverflow.com/questions/66867794
复制相似问题