【发布时间】:2020-08-01 09:37:51
【问题描述】:
按照 Andrew Gustar 在lapply aggregate columns in multiple dataframes R 的建议,我汇总了输入列表中的多个数据框。
这里是从上面提到的页面复制的代码。
数据框的创建:
df1 <- data.frame(Count = c(1,2,3), ID = c("A","A","C"))
df2 <- data.frame(Count = c(1,1,2), ID = c("C","B","C"))
dfList <- list(df1,df2)
> head(dfList)
[[1]]
Count ID
1 1 A
2 2 A
3 3 C
[[2]]
Count ID
1 1 C
2 1 B
3 2 C
按“ID”列聚合(由 Andrew Gustar 建议)
dfList_agg<-lapply(dfList, function(i) {
aggregate(i[,1], by=list(i[,2]), FUN=sum)
})
dflist_agg
[[1]]
Group.1 x
1 A 3
2 C 3
[[2]]
Group.1 x
1 B 1
2 C 3
正如您在上面看到的,输出列表中的每个数据框都有一个名为“Group.1”的列(包含 BY 列),另一个名为“x”(包含汇总数据)。
相反,我需要为每个“x”列分配其对应数据框的名称。参考示例,我希望名为“x”的两个列都在输出列表中获取不同的名称“df1”和“df2”。
谁能帮忙?
提前致谢,
法比奥
【问题讨论】:
-
请提供您的数据和所需输出的可重复的小示例
标签: r list variables aggregate rename