是否存在将每个data.frame
对象分配给单独变量的已有方法?
list(cyl4, cyl6, cyl8) <- split(mtcars, mtcars$cyl)
列表中的错误(x,y,z)&lt; - split(mtcars,mtcars $ cyl): 找不到功能&#34; list&lt; -
答案 0 :(得分:2)
您可以使用assign
为变量赋值。变量名是字符串。
在下面的代码中,我通过列表中的元素循环,并从向量names
中分配了名称。
l <- split(mtcars, mtcars$cyl)
names <- c('cyl4', 'cyl6', 'cyl8')
for (i in 1:length(names)) assign(names[i], l[[i]])
或@Roland(和其他人)指出的list2env
函数。 attach
函数执行类似的操作。
l <- split(mtcars, mtcars$cyl)
names(l) <- c('cyl4', 'cyl6', 'cyl8')
list2env(l, envir = .GlobalEnv)
或者
attach(l)
尽管如其他人所指出的那样。这可能不是最好的主意;跟踪列表中的内容更容易。您可以根据需要使用$
访问它们。
l$cyl4