学习时,用python编写代码,学习数据可视化的时候,遇到了一些问题。
调用Pandas包的函数读取csv文件报错,错误信息如下
FileNotFoundError [Errno 2] File b'xxx.csv' does not exist b'xxx.csv'
- 1
文章目录
一、 问题描述
运行代码的时候,弹出以下错误提示
self._reader = parsers.TextReader(src, kwds)
File pandas_libsparsers.pyx, line 387, in pandas._libs.parsers.TextReader.__cinit__
File pandas_libsparsers.pyx, line 705, in pandas._libs.parsers.TextReader._setup_parser_source
FileNotFoundError [Errno 2] File b'xxx.csv' does not exist b'xxx.csv'
- 1
- 2
- 3
- 4
二、 问题分析
刚开始,csv 文件是放在这个目录下的 data 文件夹内,而 .py 文件则是直接创建在这个目录下,如下图所示,.py 文件是与 data 文件夹是同级的。
运行一下代码,报错了,根据错误提示,应该是文件的路径出现了问题
接着,将 csv 文件从 data 文件夹中剪切出来,与 .py 文件放在同一个目录下,再运行试试
运行成功,是路径的问题了。
三、 解决方法
方法一: 检查自己的代码,给需要读取的数据加上 绝对路径 。
打开本地目录,找到代码所需要读取的 csv 文件,复制这个路径
这一步需要 注意 ,复制过去后,斜杆是 \ 右斜的,要把它改为 / 左斜,然后用引号把整个路径引住,看下自己代码要不要加上一个 / 左斜杆 (还有就是,是以 + 相连的,不是逗号-。-)
路径修改如下图所示,修改完测试,问题解决。
方法二: 如果 csv 文件所在的目录(csv文件的上一级目录,即存放csv文件的文件夹),与 .py 文件 是在同一个目录下的话,则可以用这个方法操作(如下图所示,因为data和.py文件处于同一个目录下)。
如下图,csv 文件放在 data 文件中,在读取 csv文件的时候,就可以如下图输入,
这个./
指的是在 data 这个文件的上一层目录中(这个上一层目录,也是 .py 文件的上一层目录),查找一个名字为 data 的文件,进行读取。
如果是 ../
的话,表示的是上两层。
另外,在路径的位置,可以如下图所示,在输入的时候,引号内直接不加 ./ 也不报错,不过前提还是 方法二 的前提,就是 .py 文件 是和存放 csv 的文件,是在同一个目录下,并且是同级的。