如何解决R - 循环打开多个文件
我正在尝试将不同的循环合并为一个大的 for 循环。每个较小的循环都包括打开不同的文件。 我的问题是,如何在单个循环的每次迭代中打开不同的数据集?
我的第一个想法是创建一个文件,其中包含每次迭代要打开的数据集的名称,例如:
> datasets <- read.csv("dataset_info.csv",header=TRUE,sep=";")
> datasets
db_combination dataset1 dataset2 dataset3
1 dataA_1 dataA_2 dataA_3.csv
2 dataB_1 dataB_2 dataB_3.csv
3 dataC_1 dataC_2 dataC_3.csv
4 dataD_1 dataD_2 dataD_3.csv
(dataset1 和 dataset2 是环境中已经存在的数据库,而 dataset3 是存储在给定文件夹中的 csv 文件。)
然后我想我会开始循环打开每个文件,例如:
for (db in datasets$db_combination) {
print(db)
db_unique<- datasets[datasets$db_combination==db,] # this would give me the row with each dataset needed per iteration
db_1 <- db_unique$dataset1
db_2 <- db_unique$dataset2
db_3 <- read.csv(get(db_unique$dataset3[db]),header = TRUE,sep = ",")
# and then continue with the rest of the loop
}
但这不起作用,因为对于 db_1 和 db_2,它只是给我数据集的名称,作为一个字符,它并没有真正打开它,对于 db_3 我得到一个错误:
In file(file,"rt") :
cannot open file 'dataA_3.csv': No such file or directory
提前致谢。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。