Pandaspd.read_csv文件有什么变化吗?

2024-09-29 23:20:03 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一段1年前用Jupyter编写的代码成功地使用了它

 dg = pd.read_csv(f10,sep=';')

读取这些数据

^{pr2}$

今天我得到:

OSError: Initializing from file failed

介于两者之间:

C:\Anaconda3\lib\site-packages\pandas\io\parsers.py in _make_engine(self, engine)
    964     def _make_engine(self, engine='c'):
    965         if engine == 'c':
--> 966             self._engine = CParserWrapper(self.f, **self.options)
    967         else:
    968             if engine == 'python':

然而,这一点在今天仍然有效:

with open(f10, newline='') as csvfile:
    data = csv.reader(csvfile, delimiter=';')

既然我喜欢熊猫的方式,有人知道我应该改变什么吗?发送提示!在

编辑: 我刚刚发现,这也很管用:

with open(f10, newline='') as csvfile:
    dg = pd.read_csv(csvfile, delimiter=';')

但这真的有必要吗?在


Tags: csvcsvfileselfreadmakeifaswith
2条回答

我想问题来自newline,它应该是\n,由pandas。在

您可以将缓冲区直接传递给pd.read_csv()

dg = pd.read_csv(open(f10, newline=''), sep=';')

试试这个:

import sys

pd.read_csv(f10, sep=';', encoding=sys.getdefaultencoding())

更新:

它也可以是caused by characters with accents in the path or filename,因此请尝试移动/重命名路径/文件名,使其仅包含ASCII字符,然后重试。。。在

相关问题 更多 >

    热门问题