gpt4 book ai didi

R:如何根据列表中的列条件汇总(聚合)dfs 的值?

转载 作者:行者123 更新时间:2023-12-02 06:54:52 25 4
gpt4 key购买 nike

我想在 dfs 列表中汇总来自同一国家/地区的所有值(df-wise!)。这里有一些示例数据:

df1 <- data.frame(CNTRY = c("A", "B", "C"), Value=c(3,1,4))
df2 <- data.frame(CNTRY = c("A", "B", "C", "C"),Value=c(3,5,8,7))
dfList <- list(df1, df2)
names(dfList) <- c("111.2000", "112.2000")

我的列表由具有不同行号的 dfs(仅 dfs)组成,但所有 df 的列结构相同。列表名称是文章 ID 和年份的混合,这超过 1000 个 dfs。现在我的问题是:如何总结或汇总所有 df 中的国家/地区值?我的预期结果是:

$`111.2000`
CNTRY Value
1 A 3
2 B 1
3 C 4

$`112.2000`
CNTRY Value
1 A 3
2 B 5
3 C 15

我尝试了 aggregate(Value ~ CNTRY, data=dfList,FUN=sum) 将错误消息传递为 CNTRYVALUE不是对象,而是对象中的列。有任何想法吗?提前致谢。

最佳答案

使用 lapply()dfList 上应用 aggregate() 函数。

lapply(dfList, function(x) aggregate(Value ~ CNTRY, x, sum))
# $`111.2000`
# CNTRY Value
# 1 A 3
# 2 B 1
# 3 C 4
#
# $`112.2000`
# CNTRY Value
# 1 A 3
# 2 B 5
# 3 C 15

关于R:如何根据列表中的列条件汇总(聚合)dfs 的值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33377444/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com