如何用tidyverse按行数较多的表关联两个不同数据表?
解决方案:用tidyverse实现动态关联两个数据表
要实现无论哪个表行数更多,都保留所有行和列的关联需求,直接使用tidyverse中的full_join()函数即可,它会自动合并两个表的全部观测,匹配不上的字段用NA填充,完美适配你当前和未来的场景。
代码实现
# 加载tidyverse工具包 library(tidyverse) # 按app_name关联两个表,保留所有行和列 combined_table <- full_join( total_number_views_ndinstict, total_number_views_unique_na, by = "app_name" )
代码说明
full_join():会保留两个输入表的所有行,不管哪个表的行数更多,未来其中一个表行数超过另一个时,依然能自动包含所有观测by = "app_name":指定以app_name作为关联键,确保同名称的app数据能正确匹配- 关联结果会包含两个表的所有列:
app_name、n_distinct_users、users_na,仅在单个表中存在的app,对应缺失的列会填充NA
当前数据的关联结果示例
以你提供的两个表为例,关联后的表会包含10行(和当前行数多的表一致),其中dtp_browser_prod和flat的n_distinct_users列会显示为NA,其余app的两列数据都会正常匹配。
内容的提问来源于stack exchange,提问作者GaB
相关产品推荐
相关产品推荐

