注意Windows下路径中的反斜杠\和斜杠/或\\的区别 !!!
报错信息如下:
Traceback (most recent call last):
File "E:/ml/titanicmodel.py", line 5, in <module>
data_train = pd.read_csv("E:\titanicdata\train.csv")
File "D:\Anaconda3\lib\site-packages\pandas\io\parsers.py", line 709, in parser_f
return _read(filepath_or_buffer, kwds)
File "D:\Anaconda3\lib\site-packages\pandas\io\parsers.py", line 449, in _read
parser = TextFileReader(filepath_or_buffer, **kwds)
File "D:\Anaconda3\lib\site-packages\pandas\io\parsers.py", line 818, in __init__
self._make_engine(self.engine)
File "D:\Anaconda3\lib\site-packages\pandas\io\parsers.py", line 1049, in _make_engine
self._engine = CParserWrapper(self.f, **self.options)
File "D:\Anaconda3\lib\site-packages\pandas\io\parsers.py", line 1695, in __init__
self._reader = parsers.TextReader(src, **kwds)
File "pandas/_libs/parsers.pyx", line 402, in pandas._libs.parsers.TextReader.__cinit__
File "pandas/_libs/parsers.pyx", line 718, in pandas._libs.parsers.TextReader._setup_parser_source
FileNotFoundError: File b'E:\titanicdata\train.csv' does not exist
解决方法:
Windows下的路径为:E:\titanicdata\train.csv
应将 data_train = pd.read_csv("E:\titanicdata\train.csv"
改为: data_train = pd.read_csv("E:\\titanicdata\\train.csv")
或 data_train = pd.read_csv("E:/titanicdata/train.csv")
或 data_train = pd.read_csv(r"E:\titanicdata\train.csv"
原因如下:反斜杠\是转义字符,想表达\请用\\
P.S. Windows的路径中用反斜杠\,是因为DOS 有一个传统是用斜杠(“/”)表示命令行参数,既然斜杠已经被DOS的命令行占领了,只好找一个最接的,那就是反斜杠\。而Linux等目录路径用斜杠/。