簡體   English   中英

使用 Pandas read_csv 讀取 CSV 文件時出現 parsers.pyx 錯誤

[英]parsers.pyx error when reading CSV File using Pandas read_csv

我嘗試在Visual Code.Win10下使用 pandas 將我具有讀寫權限的 csv 文件讀取到 dataframe。 我嘗試過的是:

df1 = pd.read_csv("C:\\Users\\me\\Desktop\\Python\\Analytics\\in\\test_DS.csv", sep=';', header = None)

df1 = pd.read_csv(r"C:\Users\me\Desktop\Python\Analytics\in\test_DS.csv", sep=';', header = None)

df1 = pd.read_csv(r"C:/Users/me/Desktop/Python/Analytics/in/test_DS.csv", sep=';', header = None)

但我仍然收到Error :無法打開 C 中找不到的parsers.pyx文件C:/Users/me/Desktop/Python/Pandas/_libs/parsers.pyx.

誰能告訴我我在這里做錯了什么?

****************** Traceback 為了獲得我實施的 Traceback:

except Exception:
        print("Exception in user code:")
        print("-"*60)
        traceback.print_exc(file=sys.stdout)
        print("-"*60)

我有:

Exception in user code:

------------------------------------------------------------

Traceback (most recent call last):
  File "pandas\_libs\parsers.pyx", line 1169, in pandas._libs.parsers.TextReader._convert_tokens
  File "pandas\_libs\parsers.pyx", line 1299, in pandas._libs.parsers.TextReader._convert_with_dtype
  File "pandas\_libs\parsers.pyx", line 1315, in pandas._libs.parsers.TextReader._string_convert
  File "pandas\_libs\parsers.pyx", line 1553, in pandas._libs.parsers._string_box_utf8
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xfc in position 10: invalid start byte

During handling of the above exception, another exception occurred:
Traceback (most recent call last):
  File "c:\Users\me\Desktop\Python\GPTW-Analytics\py\main.py", line 22, in <module>
    df1 = pd.read_csv('C:/Users/me/Desktop/Python/GPTW-Analytics/in/test_DS.csv', sep=';')
  File "C:\Users\me\AppData\Local\Programs\Python\Python37\lib\site-packages\pandas\io\parsers.py", line 702, in parser_f
    return _read(filepath_or_buffer, kwds)
  File "C:\Users\me\AppData\Local\Programs\Python\Python37\lib\site-packages\pandas\io\parsers.py", line 435, in _read
    data = parser.read(nrows)
  File "C:\Users\me\AppData\Local\Programs\Python\Python37\lib\site-packages\pandas\io\parsers.py", line 1139, in read
    ret = self._engine.read(nrows)
  File "C:\Users\me\AppData\Local\Programs\Python\Python37\lib\site-packages\pandas\io\parsers.py", line 1995, in read
    data = self._reader.read(nrows)
  File "pandas\_libs\parsers.pyx", line 899, in pandas._libs.parsers.TextReader.read
  File "pandas\_libs\parsers.pyx", line 914, in pandas._libs.parsers.TextReader._read_low_memory
  File "pandas\_libs\parsers.pyx", line 991, in pandas._libs.parsers.TextReader._read_rows
  File "pandas\_libs\parsers.pyx", line 1123, in pandas._libs.parsers.TextReader._convert_column_data
  File "pandas\_libs\parsers.pyx", line 1176, in pandas._libs.parsers.TextReader._convert_tokens
  File "pandas\_libs\parsers.pyx", line 1299, in pandas._libs.parsers.TextReader._convert_with_dtype
  File "pandas\_libs\parsers.pyx", line 1315, in pandas._libs.parsers.TextReader._string_convert
  File "pandas\_libs\parsers.pyx", line 1553, in pandas._libs.parsers._string_box_utf8
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xfc in position 10: invalid start byte
------------------------------------------------------------

我今天遇到了同樣的問題,重新安裝 pandas 和 numpy 沒有幫助。 然后我意識到我的分隔符是錯誤的; 修復解決了這個問題。 值得檢查嗎?

此外,您的回溯使它看起來文件中可能存在損壞; 也許也在這里發布文件的頂部以進行調試。

這是一個老問題,但萬一有人像我一樣用谷歌搜索它。在我的情況下,這是編碼問題 - 盡管正確的編碼是 1251,但文件打開為 utf-8

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM