首次在Python中导入CSV文件遇错求助
Python导入CSV文件的错误修复方案
第一个错误:Unicode转义语法错误
你写的路径字符串'C:\Users\me\OneDrive\Documents\my_file.csv'里,\U会被Python识别为Unicode转义字符的起始,导致解码失败。解决路径问题有三种常用方法:
- 给字符串加
r前缀(原始字符串,忽略转义规则):r"C:\Users\me\OneDrive\Documents\my_file.csv" - 把路径里的
\换成/:"C:/Users/me/OneDrive/Documents/my_file.csv"(和你R里的路径写法完全一致) - 用双反斜杠转义单个反斜杠:
"C:\\Users\\me\\OneDrive\\Documents\\my_file.csv"
第二个错误:名称未定义
你导入pandas时用了别名pd:import pandas as pd,但调用读取函数时却写了pandas.read_csv——Python找不到pandas这个名称,因为你已经用别名把它重命名为pd了。解决方法二选一:
- 调用时用别名:
pd.read_csv() - 导入时不用别名:
import pandas(之后可以用pandas.read_csv())
完整正确代码示例
方式1:使用绝对路径
import pandas as pd # 三种路径写法任选其一 df = pd.read_csv(r"C:\Users\me\OneDrive\Documents\my_file.csv") # 或者 df = pd.read_csv("C:/Users/me/OneDrive/Documents/my_file.csv") # 或者 df = pd.read_csv("C:\\Users\\me\\OneDrive\\Documents\\my_file.csv")
方式2:和R一样用相对路径(推荐)
如果你想复刻R里read.csv("my_file.csv")的简洁写法,可以先切换到文件所在目录,再用相对路径读取:
import pandas as pd import os # 切换到目标目录,对应R里的setwd() os.chdir("C:/Users/me/OneDrive/Documents") # 直接用文件名读取,和R写法一致 df = pd.read_csv("my_file.csv")
在Anaconda的Jupyter Notebooks里,还可以用魔法命令快速切换目录:
%cd C:/Users/me/OneDrive/Documents df = pd.read_csv("my_file.csv")
内容的提问来源于stack exchange,提问作者stats_noob
相关产品推荐
相关产品推荐

