打开具有可变文件名的文件

时间:2014-10-23 19:16:26

标签: r file arguments

我用R.matlab包读取了一个matlab文件,并从中获取一个数字作为列表。我把它变成了数字:

library(R.matlab)

# simple case: static filename

setwd("C:/Files/Fold")
nc <- readMat('passvar1.mat')

nC <- as.numeric(nc)
nC
## 10

更复杂的演员:我需要在名为nC

C:/Files/Coordinates/CoordsRS%nC%.md.txt的R中的文件夹中打开文件

除了数字之外,所有文件都具有相同的名称,例如:

 C:/Files/Coordinates/CoordsR4.md.txt
 C:/Files/Coordinates/CoordsR10.md.txt

并且,我需要对此文件内容应用操作(即将参数传递给readMat,以便它可以动态读取它们)

1 个答案:

答案 0 :(得分:0)

使用paste0sprintf调用构建文件名应该是最简单的。例如

nC <- 10
paste0("C:/Files/Coordinates/CoordsR", nC, ".md.txt")
# [1] "C:/Files/Coordinates/CoordsR10.md.txt"
sprintf("C:/Files/Coordinates/CoordsR%d.md.txt",nC)
# [1] "C:/Files/Coordinates/CoordsR10.md.txt"

sprintf()在填充前导零或在插入字符串之前格式化数字时有更多选项。然后,您可以将这些文件名传递给readMat()