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

R语言如何匹配partner_id对应的value生成新列partner_value

R实现配对id匹配取值的方法

下面给两种常用的实现方案:

方法1:基础R实现(无需加载额外包)

核心逻辑是用match()函数找到每行partner_id对应的行位置,直接提取对应value赋值即可:

df$partner_value <- df$value[match(df$partner_id, df$id)]

运行后直接得到目标数据集,适合不想加载额外依赖的场景。

方法2:dplyr关联实现(适合tidyverse生态用户)

通过左连接的方式把对应partner的value匹配进来,逻辑更直观:

library(dplyr)

df <- df %>% 
  left_join(
    # 提取id和对应value,重命名为partner_value
    df %>% select(id, partner_value = value),
    # 关联规则:原数据的partner_id 对应 匹配表的id
    by = c("partner_id" = "id")
  )

两种方法运行后都可以得到你给出的预期结果,你可以根据自己的使用习惯选择。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.04 22:54:03