有没有办法将文件读入R,我不知道完整的文件名。像。的东西。
read.csv("abc_*")
在这种情况下,我不知道abc_
答案 0 :(得分:6)
如果您只有一个符合条件的文件,则可以这样执行:
read.csv(dir(pattern='^abc_')[1])
如果有多个文件,这种方法只会使用第一个命中。在更详细的版本中,您可以遍历所有匹配并将它们附加到一个数据帧或类似的东西。
请注意,该模式使用正则表达式,因此与您的预期略有不同(以及我在第一次回答问题时错误地假设)。可以使用?regex
如果您有要提交的目录,则必须相应地修改dir
命令:
read.csv(dir('path/to/your/file', full.names=T, pattern="^abc"))
您的案例中提交的路径可能是c:\\users\\user\\desktop
,然后是上面的模式。 full.names=T
强制dir()
输出整个路径,而不仅仅是文件名。尝试在没有dir(...)
的情况下运行read.csv
,以了解其中发生的情况。
如果你想把你的路径作为一个完整的字符串,它又会变得有点复杂:
filepath <- 'path/to/your/file/abc_'
read.csv(dir(dirname(filepath), full.names=T, pattern=paste("^", basename(filepath), sep='')))
如果您的文件名包含任何正则表达式关键字,那么该过程将失败。您必须事先用相应的转义序列替换它们。但这又是另一个话题。