Python FileNotFound使用pandas、Jupyter笔记本和Windows7导入csv文件时出错

Python FileNotFound使用pandas、Jupyter笔记本和Windows7导入csv文件时出错,python,pandas,csv,path,jupyter,Python,Pandas,Csv,Path,Jupyter,我试图学习编程,但目前无法将csv文件读入Jupyter笔记本。这是我的代码的外观和响应: In [1]: import pandas as pd In [2]: pwd Out [2]: 'C:\\Users\\Stefan' In [3]: cd C:\\Program Files (x86)\\Hobby\\Geron_Geld In [4]: pwd Out [4]: 'C:\\Program Files (x86)\\Hobby\\Geron_Geld' In [5]: p

我试图学习编程,但目前无法将csv文件读入Jupyter笔记本。这是我的代码的外观和响应:

In [1]: import pandas as pd

In [2]: pwd

Out [2]: 'C:\\Users\\Stefan'

In [3]: cd C:\\Program Files (x86)\\Hobby\\Geron_Geld

In [4]: pwd

Out [4]: 'C:\\Program Files (x86)\\Hobby\\Geron_Geld'

In [5]: pd.read_csv('oecd_bli_2015.csv')
以下是回应:

---------------------------------------------------------------------------
FileNotFoundError                         Traceback (most recent call last)
<ipython-input-7-daa5a9ab604d> in <module>
----> 1 pd.read_csv('oecd_bli_2015.csv')

~\Anaconda3\lib\site-packages\pandas\io\parsers.py in parser_f(filepath_or_buffer, sep, delimiter, header, names, index_col, usecols, squeeze, prefix, mangle_dupe_cols, dtype, engine, converters, true_values, false_values, skipinitialspace, skiprows, nrows, na_values, keep_default_na, na_filter, verbose, skip_blank_lines, parse_dates, infer_datetime_format, keep_date_col, date_parser, dayfirst, iterator, chunksize, compression, thousands, decimal, lineterminator, quotechar, quoting, escapechar, comment, encoding, dialect, tupleize_cols, error_bad_lines, warn_bad_lines, skipfooter, doublequote, delim_whitespace, low_memory, memory_map, float_precision)
    676                     skip_blank_lines=skip_blank_lines)
    677 
--> 678         return _read(filepath_or_buffer, kwds)
    679 
    680     parser_f.__name__ = name

~\Anaconda3\lib\site-packages\pandas\io\parsers.py in _read(filepath_or_buffer, kwds)
    438 
    439     # Create the parser.
--> 440     parser = TextFileReader(filepath_or_buffer, **kwds)
    441 
    442     if chunksize or iterator:

~\Anaconda3\lib\site-packages\pandas\io\parsers.py in __init__(self, f, engine, **kwds)
    785             self.options['has_index_names'] = kwds['has_index_names']
    786 
--> 787         self._make_engine(self.engine)
    788 
    789     def close(self):

~\Anaconda3\lib\site-packages\pandas\io\parsers.py in _make_engine(self, engine)
   1012     def _make_engine(self, engine='c'):
   1013         if engine == 'c':
-> 1014             self._engine = CParserWrapper(self.f, **self.options)
   1015         else:
   1016             if engine == 'python':

~\Anaconda3\lib\site-packages\pandas\io\parsers.py in __init__(self, src, **kwds)
   1706         kwds['usecols'] = self.usecols
   1707 
-> 1708         self._reader = parsers.TextReader(src, **kwds)
   1709 
   1710         passed_names = self.names is None

pandas\_libs\parsers.pyx in pandas._libs.parsers.TextReader.__cinit__()

pandas\_libs\parsers.pyx in pandas._libs.parsers.TextReader._setup_parser_source()

FileNotFoundError: File b'oecd_bli_2015.csv' does not exist
---------------------------------------------------------------------------
FileNotFoundError回溯(最近一次调用上次)
在里面
---->1 pd.read_csv('oecd_bli_2015.csv'))
解析器中的~\Anaconda3\lib\site packages\pandas\io\parsers.py(文件路径或缓冲区、sep、分隔符、标题、名称、索引列、usecols、squeeze、prefix、mangle\u dupe\u cols、数据类型、引擎、转换器、true\u值、false\u值、skipinitialspace、skiprows、nrows、na\u值、keep\u默认值、na\u筛选器、冗余、跳过空白行、解析日期、推断日期时间格式、keep\u日期列、日期解析器、dayfirst、迭代器、chunksize、压缩、千、十进制、行终止符、引号、引号、转义符、注释、编码、方言、元组、错误行、警告行、跳板、双引号、删除空格、低内存、内存映射、浮点精度)
676跳过空白行=跳过空白行)
677
-->678返回读取(文件路径或缓冲区,kwds)
679
680解析器名称
读取中的~\Anaconda3\lib\site packages\pandas\io\parsers.py(文件路径或缓冲区,kwds)
438
439#创建解析器。
-->440 parser=TextFileReader(文件路径或缓冲区,**kwds)
441
442如果chunksize或迭代器:
~\Anaconda3\lib\site packages\pandas\io\parsers.py在uuuu init_uuu中(self,f,engine,**kwds)
785 self.options['has_index_name']=kwds['has_index_name']
786
-->787自动制造发动机(自动发动机)
788
789 def关闭(自动):
生成引擎中的~\Anaconda3\lib\site packages\pandas\io\parsers.py(self,engine)
1012 def制造发动机(自,发动机class='c'):
1013如果发动机=‘c’:
->1014 self.\u engine=CParserWrapper(self.f,**self.options)
1015其他:
1016如果引擎==“python”:
~\Anaconda3\lib\site packages\pandas\io\parsers.py在uuuu init_uuuu中(self,src,**kwds)
1706 kwds['usecols']=self.usecols
1707
->1708 self._reader=parsers.TextReader(src,**kwds)
1709
1710 passed_names=self.names为无
熊猫\\u libs\parsers.pyx在熊猫中。\u libs.parsers.TextReader.\uuuu cinit\uuuuuu()
pandas\\u libs\parsers.pyx在pandas.\u libs.parsers.TextReader.\u设置\u解析器\u源()
FileNotFoundError:文件b'oecd_bli_2015.csv'不存在
============================================
  • 我已经尝试为pd.read\u csv使用几个参数

  • 文件夹和文件存在,并且文件格式正确

  • 我还观看了几段Youtube视频,介绍了这方面的正常程序,并尝试了我发现的所有变体,但均无效

  • 如果使用Notepad++进行编程,则以下代码(来自我尝试执行的另一项任务):


training\u data\u file=open(“C:\Program Files(x86)\Hobby\Picture recognition\mnist\u train.csv”,“r”)
training\u data\u list=training\u data\u file.readlines()
培训数据文件。关闭()

如果我在Jupyter笔记本中使用相同的代码,则不会再次找到该文件。然而,我想用Jupyter笔记本电脑/通常是编程来练习

如果有人能给我一个提示,为什么我找不到在Jupyter笔记本中显示csv文件的方法,这样我以后就可以处理它的数据,那就太好了。。。多谢各位

(我的操作系统是Windows7)


我认为您实际上并没有像您想象的那样更改工作目录

尝试以下操作以查看实际目录:

>>> import os
>>> os.getcwd()
python中的工作目录由python解释器的执行位置决定,它不一定与操作shell命令(如
cd
)有任何连接


查看
os
模块,了解在解释器上下文中更改目录所需的所有信息。

您需要提供文件的完整路径,如下所示:

pd.read_csv(r'C:\Program Files (x86)\Hobby\Geron_Geld\oecd_bli_2015.csv')

记事本++打开
mnist_train.csv
熊猫何时打开
'oecd_bli_2015.csv'
?感谢您的建议。我想我发现了错误,似乎是csv文件。我在第一篇文章的底部附加了一个显示两个csv文件内容的图片链接。但是,我想知道为什么一个csv文件可以用上面的代码读取,而另一个不能?两个文件都有逗号用于分隔,而不起作用的文件在许多条目中都有文本。。。如果您(或其他人)也能回答这个问题,我将非常高兴。@StefanJ,请不要链接到参考资料,在问题中发布它们。链接的资源可能会衰退,从而使您的文章无法被其他读者使用。请参阅在stack exchange上发布问题的规则。@StefanJ就您的问题而言,如果是非法读取文件的情况,您不会抛出
FileNotFoundError
。这仍然是您得到的错误吗?我问题中的代码仍然会复制FileNotFoundError(带有csv文件oecd_bli_2015)。如果我使用@Burhan Khalid的代码,我只会得到一个语法错误。如果我将代码更改为以下内容,我会再次收到与Method1相同的FileNotFoundError:pd.read\u csv(r'C:\\Program Files(x86)\\Hobby\\Geron\u Geld\\oecd\u bli\u 2015.csv')如果我将此代码与其他csv文件(mnist\u train)一起尝试,一切都会正常工作。因此,我想这可能非常感谢你的回答。如果我完全按照你写的那样使用你的代码,我会得到一个语法错误。因此,我对代码做了如下更改:pd.read\u csv(r'C:\\Program Files(x86)\\Hobby\\Geron\u Geld\\oecd\u bli\u 2015.csv),然后我得到了与上面代码相同的FileNotFoundError。如果我使用另一个csv文件(mnist_train),一切都会正常工作。因此,我认为文件之间可能存在差异,即使