我有一个包含2个不同长度数据帧的列表,我想将它们拆分回各个数据帧。我该怎么做呢?
我尝试使用unlist和
df <- ldply (filelist, data.frame)
但它没有创建两个单独的数据帧,而是将它全部放在一个数据帧中,也没有考虑到|分隔符。
答案 0 :(得分:1)
当你说分裂时,我假设你只是意味着将它们转换为全局环境中的对象,就像调用列表一样。如果这是你的意思,请告诉我:
somelist <- list(df1 = data.frame(woo = 1:4, waa = letters[1:4]),
df2 = data.frame(wee = 5:6, wii = letters[5:6]))
somelist
$df1
woo waa
1 1 a
2 2 b
3 3 c
4 4 d
$df2
wee wii
1 5 e
2 6 f
for(i in 1:length(somelist)){
assign(names(somelist[i]), somelist[[i]])
}
[1] "df1" "df2" "i" "somelist"