While I'm loading data in JupyterLab I,m getting an Error: "FileNotFoundError [Errno 2] does not exist
While I'm loading data in JupyterLab I,m getting an Error: "FileNotFoundError [Errno 2] does not exist
我刚刚遇到错误,我从来没有代码如下:
import pandas as pd
import numpy as np
import seaborn as sns
import matplotlib.pyplot as plt
data=pd.read_csv('Users\ergar\Desktop\ML-mini_bootcamp\W1')
我确认了好几次路径都是正确的。错误信息如下
---------------------------------------------------------------------------
FileNotFoundError Traceback (most recent call last)
<ipython-input-52-f31adf5ab280> in <module>
----> 1 data=pd.read_csv('Users\ergar\Desktop\ML-mini_bootcamp\W1')
~\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, skipfooter, nrows, na_values, keep_default_na, na_filter, verbose, skip_blank_lines, parse_dates, infer_datetime_format, keep_date_col, date_parser, dayfirst, cache_dates, iterator, chunksize, compression, thousands, decimal, lineterminator, quotechar, quoting, doublequote, escapechar, comment, encoding, dialect, error_bad_lines, warn_bad_lines, delim_whitespace, low_memory, memory_map, float_precision)
674 )
675
--> 676 return _read(filepath_or_buffer, kwds)
677
678 parser_f.__name__ = name
~\anaconda3\lib\site-packages\pandas\io\parsers.py in _read(filepath_or_buffer, kwds)
446
447 # Create the parser.
--> 448 parser = TextFileReader(fp_or_buf, **kwds)
449
450 if chunksize or iterator:
~\anaconda3\lib\site-packages\pandas\io\parsers.py in __init__(self, f, engine, **kwds)
878 self.options["has_index_names"] = kwds["has_index_names"]
879
--> 880 self._make_engine(self.engine)
881
882 def close(self):
~\anaconda3\lib\site-packages\pandas\io\parsers.py in _make_engine(self, engine)
1112 def _make_engine(self, engine="c"):
1113 if engine == "c":
-> 1114 self._engine = CParserWrapper(self.f, **self.options)
1115 else:
1116 if engine == "python":
~\anaconda3\lib\site-packages\pandas\io\parsers.py in __init__(self, src, **kwds)
1889 kwds["usecols"] = self.usecols
1890
-> 1891 self._reader = parsers.TextReader(src, **kwds)
1892 self.unnamed_cols = self._reader.unnamed_cols
1893
pandas\_libs\parsers.pyx in pandas._libs.parsers.TextReader.__cinit__()
pandas\_libs\parsers.pyx in pandas._libs.parsers.TextReader._setup_parser_source()
FileNotFoundError: [Errno 2] File Users\ergar\Desktop\ML-mini_bootcamp\W1 does not exist: 'Users\ergar\Desktop\ML-mini_bootcamp\W1'
为什么会这样?我该如何解决?预先感谢您花时间澄清这个问题。
您必须提及文件扩展名,例如,如果您的文件是 .csv
,请使用:
data=pd.read_csv('Users\ergar\Desktop\ML-mini_bootcamp\W1.csv')
问题是您提供了 Py 解释器的相对路径。
相对路径不是从文件系统的根开始的路径——相反,顾名思义,它们是相对于您调用程序的位置(在本例中是您的笔记本)解析的。
有两种方法可以解决这个问题。
选项一是使用绝对路径 - 对于Windows,从C:\或其他合适的驱动器开始字母 - 在你的情况下,那将是
'C:\Users\ergar\Desktop\ML-mini_bootcamp\W1.csv'
方案二是把你的文件放在你笔记本的同一个文件夹下,然后使用相对路径:
pd.read_csv('W1.csv')
请注意,您可以创建子文件夹并以这种方式组织文件 - 例如,您可以创建数据集子文件夹,然后使用 pd.read_csv(r'datasets\W1.csv')
此外,请记住对 Windows-style 路径使用 r'path\to\file'(原始 python 字符串),因为 '\' 是用于换行和制表符等特殊字符,在解析为 non-raw 字符串时可能会被误解。
尝试这样做,同时假设您的 CSV 文件的名称是 W1
:
data = pd.read_csv(r'C:\Users\ergar\Desktop\ML-mini_bootcamp\W1')
我刚刚遇到错误,我从来没有代码如下:
import pandas as pd
import numpy as np
import seaborn as sns
import matplotlib.pyplot as plt
data=pd.read_csv('Users\ergar\Desktop\ML-mini_bootcamp\W1')
我确认了好几次路径都是正确的。错误信息如下
---------------------------------------------------------------------------
FileNotFoundError Traceback (most recent call last)
<ipython-input-52-f31adf5ab280> in <module>
----> 1 data=pd.read_csv('Users\ergar\Desktop\ML-mini_bootcamp\W1')
~\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, skipfooter, nrows, na_values, keep_default_na, na_filter, verbose, skip_blank_lines, parse_dates, infer_datetime_format, keep_date_col, date_parser, dayfirst, cache_dates, iterator, chunksize, compression, thousands, decimal, lineterminator, quotechar, quoting, doublequote, escapechar, comment, encoding, dialect, error_bad_lines, warn_bad_lines, delim_whitespace, low_memory, memory_map, float_precision)
674 )
675
--> 676 return _read(filepath_or_buffer, kwds)
677
678 parser_f.__name__ = name
~\anaconda3\lib\site-packages\pandas\io\parsers.py in _read(filepath_or_buffer, kwds)
446
447 # Create the parser.
--> 448 parser = TextFileReader(fp_or_buf, **kwds)
449
450 if chunksize or iterator:
~\anaconda3\lib\site-packages\pandas\io\parsers.py in __init__(self, f, engine, **kwds)
878 self.options["has_index_names"] = kwds["has_index_names"]
879
--> 880 self._make_engine(self.engine)
881
882 def close(self):
~\anaconda3\lib\site-packages\pandas\io\parsers.py in _make_engine(self, engine)
1112 def _make_engine(self, engine="c"):
1113 if engine == "c":
-> 1114 self._engine = CParserWrapper(self.f, **self.options)
1115 else:
1116 if engine == "python":
~\anaconda3\lib\site-packages\pandas\io\parsers.py in __init__(self, src, **kwds)
1889 kwds["usecols"] = self.usecols
1890
-> 1891 self._reader = parsers.TextReader(src, **kwds)
1892 self.unnamed_cols = self._reader.unnamed_cols
1893
pandas\_libs\parsers.pyx in pandas._libs.parsers.TextReader.__cinit__()
pandas\_libs\parsers.pyx in pandas._libs.parsers.TextReader._setup_parser_source()
FileNotFoundError: [Errno 2] File Users\ergar\Desktop\ML-mini_bootcamp\W1 does not exist: 'Users\ergar\Desktop\ML-mini_bootcamp\W1'
为什么会这样?我该如何解决?预先感谢您花时间澄清这个问题。
您必须提及文件扩展名,例如,如果您的文件是 .csv
,请使用:
data=pd.read_csv('Users\ergar\Desktop\ML-mini_bootcamp\W1.csv')
问题是您提供了 Py 解释器的相对路径。 相对路径不是从文件系统的根开始的路径——相反,顾名思义,它们是相对于您调用程序的位置(在本例中是您的笔记本)解析的。
有两种方法可以解决这个问题。
选项一是使用绝对路径 - 对于Windows,从C:\或其他合适的驱动器开始字母 - 在你的情况下,那将是
'C:\Users\ergar\Desktop\ML-mini_bootcamp\W1.csv'
方案二是把你的文件放在你笔记本的同一个文件夹下,然后使用相对路径:
pd.read_csv('W1.csv')
请注意,您可以创建子文件夹并以这种方式组织文件 - 例如,您可以创建数据集子文件夹,然后使用 pd.read_csv(r'datasets\W1.csv')
此外,请记住对 Windows-style 路径使用 r'path\to\file'(原始 python 字符串),因为 '\' 是用于换行和制表符等特殊字符,在解析为 non-raw 字符串时可能会被误解。
尝试这样做,同时假设您的 CSV 文件的名称是 W1
:
data = pd.read_csv(r'C:\Users\ergar\Desktop\ML-mini_bootcamp\W1')