Windows10环境下R的file.exists()返回false但目标文件实际存在问题
Windows 10 R语言路径匹配失败解决方案
问题复现
你提供的运行代码如下:
setwd("C:/Users/ronyj/R_projects/itro_to_bioinformatics/tut_3_fasta") getwd() #> "C:/Users/ronyj/R_projects/itro_to_bioinformatics/tut_3_fasta" file.exists("wuhan_covid_genome.fasta") #> FALSE file.exists("C:/Users/ronyj/R_projects/itro_to_bioinformatics/tut_3_fasta/wuhan_covid_genome.fasta") #> FALSE
你确认文件存放在对应文件夹,截图如下:
排查步骤按优先级执行:
- 解决Windows扩展名隐藏问题
Windows默认隐藏已知文件的扩展名,你看到的.fasta大概率是文件名的一部分,真实文件后缀可能是.fasta.txt,导致路径不匹配:- 打开文件资源管理器顶部「查看」标签,勾选「文件扩展名」选项
- 查看目标文件的真实全名,修正代码中的文件名即可
- 列出R可识别的目录文件
运行以下代码输出当前工作目录下R能读取到的所有文件,直接核对是否有目标文件,同时可以复制输出的文件名避免拼写错误:
list.files()
- 检查路径拼写错误
注意你代码中路径的itro_to_bioinformatics字段,大概率是将正确的intro_to_bioinformatics少写了首字母n,核对每个文件夹的真实名称,避免拼写偏差。 - 验证文件夹读取权限
右键点击目标文件夹,选择「属性」-「安全」,确认当前运行R的Windows账户拥有「读取、列出文件夹内容」权限,无权限的话修改对应权限配置即可。
内容的提问来源于stack exchange,提问作者Rony Juliusburger
相关产品推荐
相关产品推荐

