当前位置: 首页 > 知识库问答 >
问题:

连接时的Unicode解码器错误

王旺
2023-03-14

我试图训练我的模型,我有csv文件和一个gz文件,这是早些时候生成的。我得到这个错误如下所述,不确定是什么错误。

Traceback (most recent call last):
  File "Model.py", line 87, in <module>
    data = pd.concat([pd.read_csv(log)])
  File "/usr/local/lib/python3.6/site-packages/pandas/io/parsers.py", line 678, in parser_f
    return _read(filepath_or_buffer, kwds)
  File "/usr/local/lib/python3.6/site-packages/pandas/io/parsers.py", line 440, in _read
    parser = TextFileReader(filepath_or_buffer, **kwds)
  File "/usr/local/lib/python3.6/site-packages/pandas/io/parsers.py", line 787, in __init__
    self._make_engine(self.engine)
  File "/usr/local/lib/python3.6/site-packages/pandas/io/parsers.py", line 1014, in _make_engine
    self._engine = CParserWrapper(self.f, **self.options)
  File "/usr/local/lib/python3.6/site-packages/pandas/io/parsers.py", line 1708, in __init__
    self._reader = parsers.TextReader(src, **kwds)
  File "pandas/_libs/parsers.pyx", line 539, in pandas._libs.parsers.TextReader.__cinit__
  File "pandas/_libs/parsers.pyx", line 767, in pandas._libs.parsers.TextReader._get_header
UnicodeDecodeError: 'utf-8' codec can't decode byte 0x8b in position 1: invalid start byte

霉菌代码:

for foo in range(0,1):
    # Read dataframe
    #data = pd.concat([pd.read_csv(log.replace('0',str(idx),1)) for idx in range(5)])
    log = path + 'train_features/log_.csv'

    test_log = path + 'test_features/log_features.gz'
    data = pd.concat([pd.read_csv(log)])

共有1个答案

钱劲
2023-03-14

尝试:

data = pd.read_csv(log, encoding = "utf-8")

虽然我不明白你为什么需要for循环或pd。海螺

如果您不知道自己的编码类型,请尝试以下操作:

import chardet

with open(log, 'rb') as f:
    result = chardet.detect(f.read())  # or readline if the file is large


data = pd.read_csv(log, encoding=result['encoding'])

来源

 类似资料:
  • 问题内容: 我尝试在我的python脚本中使用matplotlib,但在终端中遇到此错误: 这是我的python代码,我只是写了 我需要做什么? 问题答案: 问题是您当前的工作目录中有一个非ASCII字符。 实际上,这根本不应该是一个问题,但这是由于其他因素的组合: 想要在当前工作目录中查找覆盖默认目录的本地文件。 Python认为您使用的是C语言环境,而不是Ubuntu 14应该默认使用的漂亮的

  • 我正在尝试阅读包含以下内容的pdf文件: 如果我打开它,它可以工作,但是如果我尝试使用编解码器.open(文件名,编码=“utf8”,mode=“rb”)来获取unicode字符串,我得到了以下异常: 您知道从此文件的内容中获取 unicode 字符串的方法吗? PS:我使用的是蟒蛇 2.7

  • 我正在尝试使用selenium在pycharm中键入我的第一个GUI测试。 我通过cmd raport安装了selenium: C: 然后我用pycharm编写了一些代码: 这就是当我点击开始时发生的事情: 文件“C:/Users/Admin/PycharmProjects/untitled/venv/test.py”,第3行driver=webdriver.Chrome(“C:\Users\Ad

  • 下面是/etc/kafka/connect-MongoDB-source.properties中的MongoDB配置 但是低于误差 以独立模式运行连接器。 我在debezium-debezium-连接器-mongob-1.0.0/debezium-connector-mongodb-1.0.0.Final.jar 类路径的设置如下 使用插件路径,我看到它能够注册和加载所有必需的插件。 但最后还是同

  • 我使用Docker在远程Linux计算机上安装了一个服务。我使用了以下命令 docker运行-p 4443:4443--rm-e openvidu.secret=my_secret-e openvidu.publicurl=https://187.84.228.66:4443 openvidu/openvidu-server-kms 但当我第一次尝试do connect时,我收到了以下错误消息:

  • 问题内容: 我正在针对似乎渴望返回双重UTF-8编码字符串的应用程序进行工作。 我发送使用UTF-8编码的字符串,因此变成(等于)。 服务器 应 仅回显我发送的内容,但返回以下内容:(应为)。如果我将其解码采用变,使用UTF-8,它看起来像一个......的unicode字符串,包含原始字符串编码。 但是Python不允许我在不重新编码的情况下解码unicode字符串-由于某种原因而失败,这使我逃