gpt4 book ai didi

R:添加两个数据帧(不同的行数)

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

我有一个数据框(df1):

Type     CA     AR     Total
alpha 2 3 5
beta 1 5 6
gamma 6 2 8
delta 8 1 9

我有另一个数据框(df2)
Type     CA     AR     Total
alpha 3 4 7
beta 2 6 8
delta 4 1 5

如何添加上述两个数据框以获得以下输出:
Type     CA     AR     Total
alpha 5 7 12
beta 3 11 14
gamma 6 2 8
delta 12 2 14

如果我沿这条线使用代码:
new_df = df1 + df2

我收到以下错误:
‘+’ only defined for equally-sized data frames

如何添加两个数据框,也许是通过匹配“类型”列下的名称?

提前致谢!!

最佳答案

(由于 aggregate() 按分组列对输出进行排序的行为,行稍微乱序,但数据是正确的。)

df1 <- data.frame(Type=c('alpha','beta', 'gamma','delta'), CA=c(2,1,6,8), AR=c(3,5,2,1), Total=c(5,6,8,9) );
df2 <- data.frame(Type=c('alpha','beta','delta'), AR=c(3,2,4), CA=c(4,6,1), Total=c(7,8,5) );
aggregate(.~Type,rbind(df1,setNames(df2,names(df1))),sum);
## Type CA AR Total
## 1 alpha 5 7 12
## 2 beta 3 11 14
## 3 delta 12 2 14
## 4 gamma 6 2 8

关于R:添加两个数据帧(不同的行数),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30552507/

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