我是R的新手并尝试在R中使用文件名作为变量名。
基本上,我有一个包含文件列表的文件夹 我想将所有文件加载到R中并将其名称用于变量名称
for(i in list.files()) {
loaddata(i,i)
}
这不起作用,我也尝试as.name
和paste
,两者都不起作用。
有人可以帮忙吗?
答案 0 :(得分:0)
这是一个可以帮到你的方式:
sapply(list.files("~/r"), FUN = function(X) assign(X, rnorm(1)))
这会为全局环境中的对象分配一个随机数,每个对象的名称来自我~/r/
目录中的文件。
举一个具体的例子,假设我们有一个目录~/r
,我们希望阅读这些文件并将它们作为环境中的单独项目 - 然后我们会做以下事情:
list2env(sapply(list.files("~/r"), FUN = function(X) read.csv(X)), globalenv())
这是两个命令的组合,其优点是不使包含所有文件的列表混乱全局环境。
我们将采取以下步骤:
inList <- sapply(list.files("~/r"), FUN = function(X) read.csv(X))
list2env(inList, globalenv())