[英]File b'train.csv' does not exist even though file exist
代码:
import pandas as pd
train_df = pd.read_csv("train.csv")
错误:
FileNotFoundError Traceback (most recent call last)
<ipython-input-17-05c7c432b69f> in <module>()
1 import pandas as pd
2
----> 3 train_df = pd.read_csv("../input/train.csv")
/anaconda3/lib/python3.6/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, skip_footer, doublequote, delim_whitespace, as_recarray, compact_ints, use_unsigned, low_memory, buffer_lines, memory_map, float_precision)
707 skip_blank_lines=skip_blank_lines)
708
--> 709 return _read(filepath_or_buffer, kwds)
710
711 parser_f.__name__ = name
/anaconda3/lib/python3.6/site-packages/pandas/io/parsers.py in _read(filepath_or_buffer, kwds)
447
448 # Create the parser.
--> 449 parser = TextFileReader(filepath_or_buffer, **kwds)
450
451 if chunksize or iterator:
/anaconda3/lib/python3.6/site-packages/pandas/io/parsers.py in __init__(self, f, engine, **kwds)
816 self.options['has_index_names'] = kwds['has_index_names']
817
--> 818 self._make_engine(self.engine)
819
820 def close(self):
/anaconda3/lib/python3.6/site-packages/pandas/io/parsers.py in _make_engine(self, engine)
1047 def _make_engine(self, engine='c'):
1048 if engine == 'c':
-> 1049 self._engine = CParserWrapper(self.f, **self.options)
1050 else:
1051 if engine == 'python':
/anaconda3/lib/python3.6/site-packages/pandas/io/parsers.py in __init__(self, src, **kwds)
1693 kwds['allow_leading_cols'] = self.index_col is not False
1694
-> 1695 self._reader = parsers.TextReader(src, **kwds)
1696
1697 # XXX
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'../input/train.csv' does not exist
请帮忙! 我尝试使用pd.read_csv("../input/train.csv")
但仍然有错误。 我是使用 Jupyter 笔记本的 Mac 用户。
train_df = pd.read_csv("./input/train.csv")
(如果 csv 文件位于输入文件夹中,该文件夹与您的 jupyter 笔记本位于同一文件夹中)
最简单的方法是您有一个包含 juptyer 笔记本和 csv 文件的文件夹。 然后你只需要做:
train_df = pd.read_csv("./train.csv")
或train_df = pd.read_csv("train.csv")
train_df = pd.read_csv("train.csv",encoding='utf-8' )
摆脱 'b 前面的 b'../input/train.csv'
尝试使用这样的绝对路径。 该行开头的 r 有助于将整个字符串作为原始字符串读取,因此当使用 r 时,您不必担心转义斜杠
import pandas
myFile = pandas.read_csv(r"C:\Users\samarnat\Documents\Personal Docs\Projects\train.csv",encoding='utf-8')
可能的原因:
csv
,它可能是xlsx
(机会难得)希望这可以帮助。
尝试给出文件的绝对路径而不是相对路径。
我发现,如果您使用的是新版本的 Excel 扩展程序,您将面临这个问题。 首先保存文件,例如。
另存为文件名 = 测试
在名称部分选择下方
现在使用 Jupyter
import pandas as pd
test = pd.read_csv("test.csv")
检查文件字符串开头或结尾的
空格
字符。
我昨天遇到了确切的问题,以下几点帮助我解决了问题
所以现在我在我的代码中添加了一行代码,无论文件夹结构如何,它都可以一直工作。 提供文件的绝对路径是关键。
csv_file_abs = os.path.abspath(csv_file)
print(f'ABS PATH: {csv_file_abs}')
df = pd.read_csv(csv_file_abs)
我希望这会有所帮助,如果可以通过其他方式解决此问题,请分享您的想法,这是快速修复。
使用 !pwd 找出您正在使用的目录。 然后在同一个地方上传数据集。 然后将目录的路径复制粘贴到 pd.read_csv 命令中
> df=pd.read_csv('/home/jovyan/demo/melb_data.csv')
你在地址中缺少的可能是jovyan术语
如果您的文本或 csv 文件位于您的 jupyter 笔记本所在的同一文件夹中,则不要编写 pd.read_csv('test.csv') 而是写为 pd.read_csv("test") bcz 如果您的 csv 文件明确显示 .csv 扩展名,则仅第一种方式工作,否则第二种方式。 例如,如果您的文件名看起来像“test”然后使用 pd.read_csv('test') 或者文件名是“test.csv”然后使用 pd.read_csv('test.csv') 这取决于保存文件的名称。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.