尝试打开 .csv 文件时出现“从文件初始化失败”错误(这根本不应该有问题)

Posted

技术标签:

【中文标题】尝试打开 .csv 文件时出现“从文件初始化失败”错误(这根本不应该有问题)【英文标题】:"Initializing from file failed" error when trying to open a .csv file (which is not supposed to be problematic at all) 【发布时间】:2020-05-20 16:17:10 【问题描述】:

我正在尝试将 .csv 文件转换为数据框。我已经这样做了很多次,我数不清。但是,当我写:

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
import os
os.chdir("/Users/federico/Documents/Polimi/thesis/modellini/failures_and_failures_again")
pd.read_csv(r'irr.csv',sep=",",index_col=0)

我总是这样:

文件“”,第 1 行,在 runfile('/Users/federico/.spyder-py3/temp.py', wdir='/Users/federico/.spyder-py3')

文件 “/Users/federico/opt/anaconda3/lib/python3.7/site-packages/spyder_kernels/customize/spydercustomize.py”, 第 827 行,在运行文件中 execfile(文件名,命名空间)

文件 “/Users/federico/opt/anaconda3/lib/python3.7/site-packages/spyder_kernels/customize/spydercustomize.py”, 第 110 行,在 execfile 中 exec(编译(f.read(),文件名,'exec'),命名空间)

文件“/Users/federico/.spyder-py3/temp.py”,第 9 行,在 pd.read_csv(r'irr.csv',sep=",",index_col=0)

文件 “/Users/federico/opt/anaconda3/lib/python3.7/site-packages/pandas/io/parsers.py”, 第 685 行,在 parser_f 中 return _read(filepath_or_buffer, kwds)

文件 “/Users/federico/opt/anaconda3/lib/python3.7/site-packages/pandas/io/parsers.py”, 第 457 行,在 _read parser = TextFileReader(fp_or_buf, **kwds)

文件 “/Users/federico/opt/anaconda3/lib/python3.7/site-packages/pandas/io/parsers.py”, 第 895 行,在 init 中 self._make_engine(self.engine)

文件 “/Users/federico/opt/anaconda3/lib/python3.7/site-packages/pandas/io/parsers.py”, 第 1135 行,在 _make_engine self._engine = CParserWrapper(self.f, **self.options)

文件 “/Users/federico/opt/anaconda3/lib/python3.7/site-packages/pandas/io/parsers.py”, 第 1917 行,在 init 中 self._reader = parsers.TextReader(src, **kwds)

文件“pandas/_libs/parsers.pyx”,第 382 行,在 pandas._libs.parsers.TextReader.cinit

文件“pandas/_libs/parsers.pyx”,第 693 行,在 pandas._libs.parsers.TextReader._setup_parser_source

OSError: 从文件初始化失败

.csv 文件已从 PvGis 下载 https://re.jrc.ec.europa.eu/pvg_tools/en/tools.html#PVP 除了前八行,它只包含数据。它似乎没有什么奇怪的地方,也没有任何以任何特定方式编码的东西。

我真的不明白它是从哪里来的。

编辑:

我最终设法将其转换为 Google Colab 上的数据框,并通过 pd.to_csv 创建相同的相同文件。 Spyder 仍然不想打开已下载文件的事件。

【问题讨论】:

这不太可能是问题,但您可以在没有chdir 的情况下尝试吗?无论如何,这可能是更好的做法。 CSV 文件有效,没有异常? 我试过了,还是一样的问题。 CSV 文件似乎没问题。不过,有什么提示可以很好地验证吗? csvlint.io 没有给我任何问题 【参考方案1】:

通过https://csvlint.io/ 验证您的 csv 或使用一些新制作的 .csv 文件进行测试。错误的文件路径也可能是一个错误,所以为了安心尝试将 csv 拖到工作区目录并将文件名作为参数传递。

【讨论】:

首先,谢谢!我尝试了 csvlint.io,它只给了我一些关于包含文本(我最终删除)的行的警告,然后我将其下载回来。仍然,同样的问题。我最终设法将其转换为 Google Colab 上的数据框,并通过 pd.to_csv 创建相同的相同文件。 Spyder 仍然不想打开已下载文件的事件。

以上是关于尝试打开 .csv 文件时出现“从文件初始化失败”错误(这根本不应该有问题)的主要内容,如果未能解决你的问题,请参考以下文章

打开带有 2 个“扩展名”的文件时出现 Jet 错误 3011

尝试将 JSON 文件展平为 CSV 时出现错误消息

尝试使用 pymssql 连接到数据库时出现 KeyError

使用 VBA 将电子表格保存为 *.csv 时出现问题

当我尝试将任务计划程序中的信息导出到 csv 文件时出现错误:无效的参数/选项 - '>'

PyInstaller:尝试运行分发文件时出现 FileNotFoundError