在R语言中列出TIF文件的正确方法?解决返回character(0)问题
解决list.files返回character(0)的问题
你的问题核心是list.files的pattern参数默认使用正则表达式,而你写的.TIF里的.是正则的特殊字符(匹配任意单个字符),不是匹配文件名里的点,另外还可能存在大小写匹配或者工作目录不对的问题,按以下步骤排查:
- 修正正则表达式:要匹配文件名里的
.,需要用双反斜杠转义,把代码改成:tifs <- list.files(".", pattern="\\.TIF") - 兼容大小写的文件后缀:如果你的文件是小写
.tif,加上ignore.case=TRUE参数来忽略大小写:tifs <- list.files(".", pattern="\\.TIF", ignore.case=TRUE) # 或者更严谨地匹配后缀结尾: tifs <- list.files(".", pattern="\\.tif$", ignore.case=TRUE) - 确认当前工作目录:先运行
getwd()查看R的当前工作目录,确认这个目录下确实有TIF文件。如果不对,用setwd("你的TIF文件所在文件夹路径")切换目录,或者直接在list.files里指定完整路径:tifs <- list.files("D:/你的TIF文件夹路径", pattern="\\.tif$", ignore.case=TRUE) - 检查目录内文件:先运行
list.files(".")列出当前目录所有文件,确认有没有你要找的TIF文件,以及文件名后缀是否正确(比如有没有写成.TIF.或者带空格的情况)
内容的提问来源于stack exchange,提问作者ajwgis
相关产品推荐
相关产品推荐

