gpt4 book ai didi

r - 如果表的长度不同,如何对几个表中的列的值求和?

转载 作者:行者123 更新时间:2023-12-04 05:17:32 25 4
gpt4 key购买 nike

好的,这应该很容易,但是我正在寻找一种尽可能快的解决方案。

假设我有3个表(表的数量会大很多):

tab1 <- table(c(1, 1, 1, 2, 2, 3, 3, 3))
tab2 <- table(c(1, 1, 4, 4, 4))
tab3 <- table(c(1, 1, 2, 3, 5))

这是我们得到的:
> tab1
1 2 3
3 2 3
> tab2
1 4
2 3
> tab3
1 2 3 5
2 1 1 1

我想以一种快速的方式来使它与许多大表一起工作的是这样的:
1 2 3 4 5
7 3 4 3 1

因此,基本上,表是在所有 names上聚合的。有没有我缺少的基本功能?谢谢你的帮助!

最佳答案

我们将c输出连接起来(tab)以创建“v1”,使用tapply获取由该对象的sum分组的元素的names

v1 <- c(tab1, tab2, tab3)
tapply(v1, names(v1), FUN=sum)
#1 2 3 4 5
#7 3 4 3 1

关于r - 如果表的长度不同,如何对几个表中的列的值求和?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30892120/

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