【问题标题】:Trying to read in tables stored in HDF5 stores in Julia as a Dataframe尝试读取存储在 Julia 中的 HDF5 存储中的表作为数据框
【发布时间】:2017-07-27 23:50:56
【问题描述】:

我试图读入存储在 HDF5 存储中的表,并将其作为 Julia 中的数据帧读入。在 Julia 中使用 HDF5 包时,我发现一些文档令人困惑,我一直想知道是否有类似 pandas 的东西:

table_data = pd.read_hdf('filepath', key='group')

我的代码是这样的:

using HDF5

file_input = "filepath/file.h5"

fileop = "r"

table_name = "group"

h5_store = h5read(file_input, fileop)

table_data = read(h5_store, table_name)

close(h5_store)

我一直想知道是不是我做错了什么,并希望得到任何有关这方面的指导

【问题讨论】:

    标签: python pandas dataframe julia hdf5


    【解决方案1】:

    使用h5open 而不是h5read 来修复您的代码:

    h5_store = h5open(file_input, fileop)
    

    但是您可以使用h5read,默认情况下使用对 hdf5 文件的只读访问权限:

    using HDF5
    
    file_input = "filepath/file.h5"
    
    table_name = "table"
    
    table_data = h5read(file_input, table_name)
    

    【讨论】:

    • 嘿,再次感谢,但即使语法正确,我也会收到“尚不支持”的错误消息。我可能应该注意到 h5 存储中的表是 pytables。提取存储在 Julia 的 h5 存储中的 pytable 对象是否存在兼容性问题?
    • 如果 pytable 包含可变长度数据类型,您将收到错误消息。 HDF5.jl (0.7.3) 的标记版本会检查 HDF5Dataset 中的字符串,如果找到,则会引发“尚未支持”错误。
    • 尝试检查主版本Pkg.checkout("HDF5")并试一试...
    猜你喜欢
    • 2014-01-22
    • 2013-12-18
    • 2015-03-20
    • 2011-05-07
    • 1970-01-01
    • 2014-09-27
    • 1970-01-01
    • 2016-03-16
    • 2023-03-08
    相关资源
    最近更新 更多