python - python 2 创建 h5 文件数据到 python 3
问题描述
我正在将一些代码从 python 2 (2.7) 转移到 python 3 (3.7 或更高版本)
然而,这段代码读取了一个由 python 2.7 中的代码创建的 h5 文件。这段代码也将被转移到 python 3,但不是我的。我需要 h5 文件中的数据来检查我端到 python 3 的转换是否正常工作(内部数据是 pandas 数据框)。
因此,我正在寻找一种技巧(使用 python 2 或 python 3)将此 h5 文件转换为我可以使用 python 3 读取的文件。它不需要是一个简洁的解决方案,因为它只是暂时的。
数据相当可观。
解决方案
所以我最终做的是使用python 2读取h5并将其存储为json(h5中的每个键一个)
然后我使用 python 3 脚本读取 json 并将它们再次存储为 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')
所以它最终变得更加简单。希望这个答案能帮助那些被困在同一问题上的人。
推荐阅读
- flutter - ScreenUtilInit - 颤动
- amazon-web-services - 我什么时候应该创建不同的 VPC 而不仅仅是不同的子网?
- kubernetes - 滚动更新时 kubernetes 上的骆驼集群使用 Hazelcast 错误
- c# - 托管的 asp.net 应用程序 DirectoryNotFoundException
- android - 更新 MutableLiveData 的 MutableList
- snakemake - 用snakemake改变目录名和fastq文件名
- python - 如何将 .h5 模型转换为 .pb 模型
- jobs - Batch job submission failed: I/O error writing script/environment to file
- java - Cognito xray - segment not found issue
- c# - Unity - My script stops working on Editor but works on my builds(android, ios)