Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/72.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/oop/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在R中将多个数据帧迁移到一个数据帧中_R_Dataframe - Fatal编程技术网

如何在R中将多个数据帧迁移到一个数据帧中

如何在R中将多个数据帧迁移到一个数据帧中,r,dataframe,R,Dataframe,我有多个数据帧,例如: 数据帧1 V1 V2 1 Charlie 30 2 Tom 50 3 Anna 20 数据帧2 V1 V2 1 Tom 30 2 Anna 10 3 Julia 60 如果第一列值相同,如何将这些数据帧迁移到同一个数据帧并添加第二列: V1 V2 1 Charlie 30 2 Tom 80 3 Anna 30 4 Julia 60 我们可以使用tidyverse。我们使用bind_rows将多个数据集绑定在一起,然后按“V1”分组,得到“V2”的sum

我有多个数据帧,例如: 数据帧1

  V1 V2
1 Charlie 30
2 Tom 50
3 Anna 20
数据帧2

  V1 V2
1 Tom 30
2 Anna 10
3 Julia 60
如果第一列值相同,如何将这些数据帧迁移到同一个数据帧并添加第二列:

  V1 V2
1 Charlie 30
2 Tom 80
3 Anna 30
4 Julia 60

我们可以使用
tidyverse
。我们使用
bind_rows
将多个数据集绑定在一起,然后按“V1”分组,得到“V2”的
sum

library(tidyverse)
bind_rows(df1,df2) %>%
        group_by(V1) %>% 
        summarise(V2 = sum(V2))
library(data.table)
rbindlist(list(df1, df2))[, .(V2 = sum(V2)), by = V1]

或者使用
data.table
,我们可以将数据集放在
列表中,使用
rbindlist
绑定
列表中的数据集,然后按“V1”分组,得到“V2”的

library(tidyverse)
bind_rows(df1,df2) %>%
        group_by(V1) %>% 
        summarise(V2 = sum(V2))
library(data.table)
rbindlist(list(df1, df2))[, .(V2 = sum(V2)), by = V1]

或者使用
base R
,通过
rbind
ing数据集,使用
aggregate
获得按“V1”分组的“V2”的
sum

aggregate(V2 ~V1, rbind(df1, df2), FUN = sum)
#       V1 V2
#1    Anna 30
#2 Charlie 30
#3   Julia 60
#4     Tom 80

我们可以使用
tidyverse
。我们使用
bind_rows
将多个数据集绑定在一起,然后按“V1”分组,得到“V2”的
sum

library(tidyverse)
bind_rows(df1,df2) %>%
        group_by(V1) %>% 
        summarise(V2 = sum(V2))
library(data.table)
rbindlist(list(df1, df2))[, .(V2 = sum(V2)), by = V1]

或者使用
data.table
,我们可以将数据集放在
列表中,使用
rbindlist
绑定
列表中的数据集,然后按“V1”分组,得到“V2”的

library(tidyverse)
bind_rows(df1,df2) %>%
        group_by(V1) %>% 
        summarise(V2 = sum(V2))
library(data.table)
rbindlist(list(df1, df2))[, .(V2 = sum(V2)), by = V1]

或者使用
base R
,通过
rbind
ing数据集,使用
aggregate
获得按“V1”分组的“V2”的
sum

aggregate(V2 ~V1, rbind(df1, df2), FUN = sum)
#       V1 V2
#1    Anna 30
#2 Charlie 30
#3   Julia 60
#4     Tom 80
类似的问题:类似的问题: