python - 在 Python 中打开 .h5 文件

标签 python pandas h5py

我正在尝试用 Python 读取一个 h5 文件。

文件可以在this link中找到它被称为“vstoxx_data_31032014.h5”。我尝试运行的代码来自 Yves Hilpisch 的 Python for Finance 一书,如下所示:

import pandas as pd     
h5 = pd.HDFStore('path.../vstoxx_data_31032014.h5', 'r')
futures_data = h5['futures_data']  # VSTOXX futures data
options_data = h5['options_data']  # VSTOXX call option data
h5.close()

我收到以下错误:

h5 = pd.HDFStore('path.../vstoxx_data_31032014.h5', 'r')
Traceback (most recent call last):

  File "<ipython-input-692-dc4e79ec8f8b>", line 1, in <module>
    h5 = pd.HDFStore('path.../vstoxx_data_31032014.h5', 'r')

  File "C:\Users\Laura\Anaconda3\lib\site-packages\pandas\io\pytables.py", line 466, in __init__
    self.open(mode=mode, **kwargs)

  File "C:\Users\Laura\Anaconda3\lib\site-packages\pandas\io\pytables.py", line 637, in open
    raise IOError(str(e))

OSError: HDF5 error back trace

  File "C:\aroot\work\hdf5-1.8.15-patch1\src\H5F.c", line 604, in H5Fopen
    unable to open file
  File "C:\aroot\work\hdf5-1.8.15-patch1\src\H5Fint.c", line 1085, in H5F_open
    unable to read superblock
  File "C:\aroot\work\hdf5-1.8.15-patch1\src\H5Fsuper.c", line 277, in H5F_super_read
    file signature not found

End of HDF5 error back trace

Unable to open/create file 'path.../vstoxx_data_31032014.h5'

出于这个问题的目的,我将我的工作目录替换为“路径.../”。

有谁知道这个错误可能来自哪里?

最佳答案

要使用 h5py 模块打开 HDF5 文件,您可以使用 h5py.File(filename)。可以找到文档 here .

import h5py

filename = "vstoxx_data_31032014.h5"

h5 = h5py.File(filename,'r')

futures_data = h5['futures_data']  # VSTOXX futures data
options_data = h5['options_data']  # VSTOXX call option data

h5.close()

关于python - 在 Python 中打开 .h5 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46851600/

相关文章:

python - Pandas 数据框中日期之间的差异

python - 如何为 Django 路径分配默认值

python - 使用 read_xml 将数据从两个 XML 父节点导入到 Pandas DataFrame

python - R : The h5py Python package is required to save and load models 错误

python - Pandas 融化功能

python - 按行总和和值过滤

python - 如何按轴选择pandas表的行索引或列索引

python - 如何结合两个 pd 数据框,根据分数重新排名并返回整行以获得最高排名?

python - HDF5如何处理空行

python - H5PY保存复合numpy数组时出现问题