我用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
,以便它可以动态读取它们)
答案 0 :(得分:0)
使用paste0
或sprintf
调用构建文件名应该是最简单的。例如
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()