如何避免R中使用read_excel时出现normalizePath错误?
R导入Excel时"Access is denied"错误的原因与解决方法
错误信息
Warning message: In normalizePath(path.expand(path), winslash, mustWork) : path[1]="Data_202310.xlsx": Access is denied
使用的导入代码
read_excel("Data_202310.xlsx")
产生原因
- 文件权限不足:当前运行R的用户没有读取该Excel文件的权限
- 文件被锁定:目标Excel文件正被其他程序(比如桌面Excel软件)打开,导致R无法访问
- 路径解析错误:文件不在R的当前工作目录,仅传入文件名导致R找不到文件,错误提示表现为权限被拒
解决方法
- 检查并调整文件权限:右键文件→属性→安全选项卡,确保当前用户拥有"读取"权限,若没有则添加对应权限
- 关闭占用文件:关闭正在打开该Excel文件的所有程序,解除文件锁定
- 确认文件路径:
- 执行
getwd()查看R当前工作目录,确认文件是否在该目录下 - 若文件不在工作目录,传入完整路径,例如:
read_excel("C:/Users/YourName/Desktop/Data_202310.xlsx")(路径用正斜杠或双反斜杠)
- 执行
- 转移文件:将文件复制到权限明确的目录(如桌面、R工作目录)后再尝试导入
内容的提问来源于stack exchange,提问作者Kyoto
相关产品推荐
相关产品推荐

