【发布时间】:2017-08-15 22:19:27
【问题描述】:
我有很多文本文件
fr.txt
no.txt
sta.txt
sto.txt
我创建了一个文件名作为字符串的向量
string <- c("fr","no","sta","sto")
我想在 R 中使用 for 循环来使用字符串作为变量名并读取相应的文件。
for (type in c("fr","no","sta","sto")){type <- read.table(sprintf("%s.txt", type),header=TRUE)}
例如
fr <- read.table("fr.txt",header=TRUE)
no <- read.table("no.txt",header=TRUE)
sta <- read.table("sta.txt",header=TRUE)
我应该如何开始?上面的 for 循环没有做我想做的事。
【问题讨论】:
-
“上面的 for 循环没有做我想要的。” -- 这意味着什么具体?此外,您在
read.table(sprintf("%s.txt", type) header=TRUE)中的header = TRUE之前缺少一个逗号。 -
查看 gregor 对this post 的回答,了解一些可能有帮助的提示。
-
不要使用不同的变量名,使用列表。
-
L <- lapply(paste0(type,".txt"), read.table, header=TRUE)给出数据帧列表。names(L) <- type设置名称。