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

R语言不使用merge/lookup函数通过行号匹配合并两个数据集

解决方案

你可以直接使用R内置的match()函数实现需求,该函数会返回待匹配值在查找参照向量中的首次出现位置下标,正好对应你需要的lookup.df行号,无需调用merge或lookup类封装函数。

实现代码

# 生成和你预期完全一致的行号序列
rows <- match(Data.df$x3, lookup.df$x1)
# 提取lookup.df的x2列赋值到Data.df,注意你示例代码中的df1为lookup.df的笔误
Data.df$x2 <- lookup.df[rows, 2]

结果验证

运行上述代码后,rows的值就是你给出的预期序列c(1, 5, 4, 1, 3, 5, 2, 5, 4, 3),最终得到的Data.df和你期望的输出完全一致。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.29 00:15:02