【发布时间】:2019-06-08 12:33:39
【问题描述】:
尝试在 Pycharm 中使用 pandas 为 python 项目读取 CSV 文件。运行代码时出现错误 我尝试了所有过去的解决方案,例如添加“r”或双斜杠或提及编码。它似乎不起作用。
使用 read_csv 使用 pandas 库。
尝试在文件路径中使用双斜杠,但没有成功。
更新 更新代码如下 显然,CSV 文件的问题之一是文件中没有标题。下面工作得很好:
import pandas as pd
path = "c:/ML_Cricket/CSV/225171.csv"
df = pd.read_csv(path,error_bad_lines=False,names=["1","2","3","4","5","6","7","8","9","10","11"])
print(df)
import pandas as pd
df = pd.read_csv("C:\ML_Cricket\CSV\221571.csv")
print(df.head())
我得到了这个回溯:
C:\Users\abc\PycharmProjects\untitled\venv\Scripts\python.exe C:/Users/abc/.PyCharmCE2019.1/config/scratches/scratch.py
Traceback (most recent call last):
File "C:/Users/abc/.PyCharmCE2019.1/config/scratches/scratch.py", line 3, in <module>
df = pd.read_csv("C:\ML_Cricket\CSV\221571.csv")
File "C:\Users\abc\PycharmProjects\untitled\venv\lib\site-packages\pandas\io\parsers.py", line 702, in parser_f
return _read(filepath_or_buffer, kwds)
File "C:\Users\abc\PycharmProjects\untitled\venv\lib\site-packages\pandas\io\parsers.py", line 429, in _read
parser = TextFileReader(filepath_or_buffer, **kwds)
File "C:\Users\abc\PycharmProjects\untitled\venv\lib\site-packages\pandas\io\parsers.py", line 895, in __init__
self._make_engine(self.engine)
File "C:\Users\abc\PycharmProjects\untitled\venv\lib\site-packages\pandas\io\parsers.py", line 1122, in _make_engine
self._engine = CParserWrapper(self.f, **self.options)
File "C:\Users\abc\PycharmProjects\untitled\venv\lib\site-packages\pandas\io\parsers.py", line 1853, in __init__
self._reader = parsers.TextReader(src, **kwds)
File "pandas\_libs\parsers.pyx", line 387, in pandas._libs.parsers.TextReader.__cinit__
File "pandas\_libs\parsers.pyx", line 686, in pandas._libs.parsers.TextReader._setup_parser_source
UnicodeEncodeError: 'mbcs' codec can't encode characters in position 0--1: invalid character
【问题讨论】:
-
@hiroprotagonist 将回溯编辑为引用已经破坏了格式。你为什么不编辑为代码? ://
-
猜测:
df = pd.read_csv("C:\ML_Cricket\CSV\221571.csv", encoding='cp1252') -
没用 :(
-
@roganjosh 是的,这是一个错误的决定...试图修复(但这看起来也很糟糕...)您有更好的方法来格式化回溯吗?
-
嗯。现在 anky_91 将其转换回引用...