python 2 创建h5文件数据到python 3
python 2 created h5 file data into python 3
我正在将一些代码从 python 2 (2.7) 转移到 python 3(3.7 或更高版本)
然而,这段代码读取了一个由 python 2.7 中的代码创建的 h5 文件。这段代码也会转给python3,但不是我转的。我需要 h5 文件中的数据来检查我这边转换为 python 3 是否正常(内部数据是 pandas 数据帧)。
因此我正在寻找一个技巧(使用 python 2 或 python 3)将这个 h5 文件转换成我可以用 python 3 读取的文件。它不需要是一个简洁的解决方案,因为它只是暂时的。
数据比较大
所以我最后做的是使用 python 2 读取 h5 并将其存储为 json(h5 中每个键一个)
然后我使用 python 3 脚本读取 jsons 并再次将它们存储为 h5 文件
(in python 2)
foo = pandas.read_hdf('file.h5', key='bla', mode='r')
foo.to_json('file.json')
(in python 3)
foo = pandas.read_json('file.json')
foo.to_hdf('file2.h5', key='bla', mode='w')
所以它最终变得相当简单。希望这个回答能帮助遇到同样问题的人。
我正在将一些代码从 python 2 (2.7) 转移到 python 3(3.7 或更高版本)
然而,这段代码读取了一个由 python 2.7 中的代码创建的 h5 文件。这段代码也会转给python3,但不是我转的。我需要 h5 文件中的数据来检查我这边转换为 python 3 是否正常(内部数据是 pandas 数据帧)。
因此我正在寻找一个技巧(使用 python 2 或 python 3)将这个 h5 文件转换成我可以用 python 3 读取的文件。它不需要是一个简洁的解决方案,因为它只是暂时的。
数据比较大
所以我最后做的是使用 python 2 读取 h5 并将其存储为 json(h5 中每个键一个)
然后我使用 python 3 脚本读取 jsons 并再次将它们存储为 h5 文件
(in python 2)
foo = pandas.read_hdf('file.h5', key='bla', mode='r')
foo.to_json('file.json')
(in python 3)
foo = pandas.read_json('file.json')
foo.to_hdf('file2.h5', key='bla', mode='w')
所以它最终变得相当简单。希望这个回答能帮助遇到同样问题的人。