我想使用功能将名称批量分配给csv数据文件,我已经测试了将Map
,mapply
,lapply
和功能assign
替换为{ {1}},但是所有这些功能都不起作用,只有传统的for循环起作用,有人可以解释吗?预先感谢!
这是我的代码:
<-
答案 0 :(得分:3)
有两种基本的R方式:
junk <- Map("assign", nameList, csvs, MoreArgs = list(.GlobalEnv))
list2env(setNames(csvs, nameList), .GlobalEnv)
答案 1 :(得分:3)
更典型的R惯用法是从这里开始:
csvs <- lapply(allData, read.csv)
,此时您的数据已很好地存储在列表中。如果要命名列表,只需执行以下操作:
nameList <- c("Actinomyces", "Bacteria", "COD", "Fungi", "NH3", "NO2", "NO3", "TN", "TP")
csvs <- setNames(csvs, nameList)
然后,您可以通过csvs[["COD"]]
通过名称引用任何数据集,例如。