
[英]Assign column names of data.frames in a list of data.frames to other (Spatial) data.frames in a list of data.frames in R
[英]Combine list elements (containing data.frames) based on element names in r
假设我有一个包含 26 个元素的列表,每个元素都被命名并包含一个 data.frame。
lst <- lapply(1:26, function(x) data.frame(AA = 1:5, BB = 1:5, CC = 1:5))
names(lst) <- letters
如何仅将此列表中的 select(指定)元素组合成新的组合 object(在本例中为 data.frame)?
例如:假设我只想将名为“m”和“o”的元素合并到一个 data.frame 中。
AA BB CC m 1 1 1 m 2 2 2 m 3 3 3 m 4 4 4 m 5 5 5 o 1 1 1 o 2 2 2 o 3 3 3 o 4 4 4 o 5 5 5
我知道有一种简单的方法可以使用rbind
和apply
函数之一或do.call
或类似函数来执行此操作,但是我的各种努力组合都失败了,而且我能够找到的类似帖子也没有帮助。
我们可以按命名对list
进行子集化,并将rbind
与do.call
一起使用
do.call(rbind, lst[c("m", "o")])
使用do.call
的基本 R 方法:
do.call(rbind, args = lst[names(lst) %in% c("m","o")])
虽然,它创建了一些混乱的编号行名称:
AA BB CC
m.1 1 1 1
m.2 2 2 2
m.3 3 3 3
m.4 4 4 4
m.5 5 5 5
o.1 1 1 1
o.2 2 2 2
o.3 3 3 3
o.4 4 4 4
o.5 5 5 5
这可以在第二步中使用row.names
进行清理
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.