python - 尝试读取使用 python 2.7 制作的 hdf 文件时出现 UnicodeDecodeError
问题描述
我有一堆需要用 pandas 读取的 hdf 文件,pd.read_hdf()
但它们已保存在 python 2.7 环境中。现在,我在 python 3.7 上,当试图用 阅读它们时data = pd.read_hdf('data.h5', 'data')
,我得到了
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xf6 in position 6: invalid start byte
现在我知道,这些文件可以包含各种奇怪的东西,比如Ä或ö,而且0xf6
可能是ö。
那么我该如何阅读这个hdf文件呢?
的文档read_hdf
仅指定mode
为参数,但这并没有做任何事情。显然,这是 pandas 中的一个旧错误,或者更确切地说是无法修复的底层 pytables。但是,那是从 2017 年开始的,所以我想知道这是否已修复,或者是否有我无法找到的解决方法。根据错误报告,您也可以传递给读者,但是当我按照错误中的建议指定时,或者我认为可能是罪魁祸首enconding=''
,这并没有做任何事情。encoding='UTF8'
encoding='cp1250'
拥有一种用于归档数据的文件格式是非常烦人的,显然在一个版本步骤之后生成它的程序就无法再读取这些数据了。我会很好地让ö s 乱码␣ý⌧
或像往常一样有编码错误的类似有趣的东西,但根本无法阅读它是一个问题。
解决方案
推荐阅读
- node.js - 找不到节点 repl 模块
- javascript - Delete rows based on the dates present in the adjacent rows
- elasticsearch - MetricBeat kubernetes.apiserver:获取指标时出错
- vue.js - $nextTick 在上一行完成之前运行
- git - 为什么 git 命令需要这么长时间才能执行?
- c++ - 使用 intel 内在函数将压缩的 8 位整数乘以浮点向量
- java - 如何在Android中解码日期?- 日期时间戳
- c++ - 集合的 C++ 嵌套迭代器
- javascript - React:如何更新深层属性?
- google-apps-script - 修改单元格时的自动时间戳,但在单元格为空时清除