You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

R语言中如何基于共有Area字段合并多个tibble数据表

错误原因

  • 基础R的merge()函数单次仅支持合并2个数据对象,且你写的by "Area"缺少等号赋值,属于语法错误
  • dplyr包的full_join()函数单次同样仅支持两个表的关联操作,不能直接传入3个表作为参数

修正方案

方案1:逐次关联(易理解)

用dplyr的管道操作逐次拼接三个表,全连接会保留所有非关联列、以及所有表中出现过的Area对应的行:

library(dplyr)
Testertable <- A %>% 
  full_join(B, by = "Area") %>% 
  full_join(C, by = "Area")

如果只需要保留三个表共有的Area对应的行,把full_join替换为inner_join即可。

方案2:批量关联(适合表数量多的场景)

借助purrr的reduce()函数批量完成多表合并:

library(dplyr)
library(purrr)
Testertable <- list(A, B, C) %>% 
  reduce(full_join, by = "Area")

内容的提问来源于stack exchange,提问作者JeffWithpetersen

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.30 00:48:06