Python pandas.read_csv FileNotFoundError:文件b'\xe2\x80\xaa<;etc>';尽管道路正确
我试图使用Python pandas.read_csv FileNotFoundError:文件b'\xe2\x80\xaa<;etc>';尽管道路正确,python,csv,pandas,dataframe,file-not-found,Python,Csv,Pandas,Dataframe,File Not Found,我试图使用pd.read\u csv()函数加载.csv文件,尽管文件路径正确且使用原始字符串,但出现错误 import pandas as pd df = pd.read_csv('C:\\Users\\user\\Desktop\\datafile.csv') df = pd.read_csv(r'C:\Users\user\Desktop\datafile.csv') df = pd.read_csv('C:/Users/user/Desktop/datafile.csv') all
pd.read\u csv()
函数加载.csv
文件,尽管文件路径正确且使用原始字符串,但出现错误
import pandas as pd
df = pd.read_csv('C:\\Users\\user\\Desktop\\datafile.csv')
df = pd.read_csv(r'C:\Users\user\Desktop\datafile.csv')
df = pd.read_csv('C:/Users/user/Desktop/datafile.csv')
all给出了以下错误:
FileNotFoundError:文件b'\xe2\x80\xaaC:/Users/user/Desktop/tutorial.csv'(或相关路径)不存在
只有当我将文件复制到工作目录时,它才能正确加载
是否有人知道可能导致错误的原因
我以前加载过其他具有完整文件路径的数据集,没有任何问题,而且我现在只遇到了问题,因为我重新安装了python(通过Anaconda软件包安装程序)
编辑:
我已找到导致问题的问题。
当我从“文件属性”窗口复制文件路径时,无意中复制了另一个看起来不可见的字符。
分配复制的
字符串也会出现unicode错误
删除该不可见字符会使上述任何代码正常工作。尝试使用os.path.join
创建文件路径:
import os
f_path = os.path.join(*['C:', 'Users', 'user', 'Desktop', 'datafile.csv'])
df = pd.read_csv(f_path)
$10表示您的文件路径相对于.py文件的位置是正确的,但是相对于调用python的位置是不正确的
例如,假设script.py位于~/script/,file.csv位于~/。假设script.py包含
import pandas
df = pandas.read_csv('../file.csv') # correct path from ~/script/ where script.py resides
如果从~/运行python脚本/script.py
,您将得到FileNotFound错误。但是,如果从~/script/运行pythonscript.py
,它会工作。试试这个,看看它是否工作。这与您提供的路径无关
pd.read_csv(r'C:\Users\aiLab\Desktop\example.csv')
这里的r
是一个特殊字符,表示原始字符串。因此,将其作为字符串文本的前缀
:
Python原始字符串是通过在字符串文本前面加上“r”来创建的
或“R”。Python原始字符串将反斜杠()视为文字字符。
当我们想要一个包含反斜杠的字符串时,这很有用
不想让它被当作转义角色
我知道下面是一个愚蠢的错误,但它可能是你的文件的问题
我已手动将文件从adfa123
重命名为abc.csv
。文件扩展名被隐藏,重命名后,实际文件名变为abc.csv.csv
。然后我从名字中删除了额外的.csv
,一切都很好
希望它能帮助其他人。我试图从我的'c:\'驱动器中的文件夹中读取csv
文件,但是,它引发了escape、type error、unicode
…等错误,但此代码仍然有效
import pandas as pd
path1 = 'C:\\Users\\Dell\\Desktop\\Data\\Train_SU63ISt.csv'
path2 = 'C:\\Users\\Dell\\Desktop\\Data\\Test_0qrQsBZ.csv'
df1 = pd.read_csv(path1)
df2 = pd.read_csv(path2)
print(df1)
print(df2)
只需要取一个变量,然后加上r来读取它
rank = pd.read_csv (r'C:\Users\DELL\Desktop\datasets\iris.csv')
df=pd.DataFrame(rank)
还有一个问题是如何删除看起来不可见的字符
我的解决方案是从文件窗口而不是属性窗口复制文件路径
这没有问题,只是您应该完成文件路径。遇到了同样的问题。路径是正确的。
更改文件名似乎可以解决这个问题
旧文件名:2017/2018赛季英超联赛.csv
新文件名:test.csv
如果您使用的是windows机器,则可能是空格或“/”。尝试检查文件扩展名。
文件保存为fileName.csv.txt而不是fileName.csv的可能性很大
您可以通过选择文件夹选项下的“文件扩展名”复选框来选中此选项(请查找屏幕截图)
以下代码适用于我:
import pandas as pd
df = pd.read_csv(r"C:\Users\vj_sr\Desktop\VJS\PyLearn\DataFiles\weather_data.csv");
如果fileName.csv.txt,请将其重命名/更正为fileName.csv
希望它能起作用,
祝您好运在Windows系统上,您应该尝试使用os.path.normcase
它规范化了路径名的大小写。在Unix和Mac OS X上,这将返回不变的路径;在不区分大小写的文件系统上,它将路径转换为小写。在Windows上,它还将正向斜杠转换为反向斜杠。如果路径的类型不是str或bytes(直接或间接通过os.PathLike接口),则引发TypeError
在使用VisualStudio提供的交互功能运行文件时,我遇到了同样的问题。切换到在本机命令行上运行,这对我很有效 对于我的特殊问题,无法正确加载文件是由于从windows中文件属性的“安全”选项卡复制文件路径时引入了“不可见”字符
该字符是e280 aa
,U+202A的UTF-8编码,从左到右嵌入符号。当您找到字符(字符串中最左边的字符)时,可以通过擦除(单击backspace或delete)轻松删除该字符
注意:我选择回答是因为这里的答案不能回答我的问题,我相信一些人(如评论中所示)可能会遇到与我相同的情况。由于我没有将这个问题标记为已解决,所以似乎不时会有新的答案
data = pd.read_csv('C:\\Users\username\Python\mydata.csv')
这对我有用。请注意,“C:\\”中的双“\\”,其中其余文件夹仅使用一个“\”E280 aa
是U+202A的UTF-8编码,即从左到右的嵌入符号。非常确定这不属于路径字符串,因此它表明您存在字符串编码问题。如果您在py27(u'C:\\\…'
)中,请尝试Unicode字符串文字;如果您在py3(b'C:\\\…'
)中,请尝试字节字符串文字。如果您从路径(即“/Users/user/Desktop/datafile.csv”)中删除驱动器,该操作是否有效?不确定u+202A
是如何进入的。这是剪贴的吗?如果是,请手动删除并重新输入。系统上的默认语言是什么?如果是从右向左写的,那么这很有趣!我有点惊讶,这个字符没有在文件系统中被过滤掉。最可能的原因似乎是您使用的编码有问题。我刚刚得到了
data = pd.read_csv('C:\\Users\username\Python\mydata.csv')