作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我在处理这件事时遇到了一些麻烦。基本上,我想根据 2 个不同数据帧的 id 匹配的第一次出现从 MakeText 列中提取值。一个数据帧仅具有唯一的 ID,而另一个数据帧具有同一 ID 的多行,因此是第一次出现的子句。每个唯一 ID 都有唯一的 MakeText 列值。
我尝试在 r 中进行匹配和合并,但由于数据帧的行数不同,我不知道如何提取列值。
基于此 ID:
wb <- spread(data = newdata,
key = an,
value = av)
names(wb)[1] <- "ID"
wb <- as.data.frame(wb)
View(wb)
Id BodyColorText
1.0 blue
100.0 cyan
1001.0 red
1003.0 black
我想将其与此 ID 相匹配:
View(supplierdata)
Id MakeText
1.0 Mercedes
1.0 Mercedes
1001.0 Ferrari
1001.0 Ferrari
1003.0 Audi
并提取 MakeText 列值,将其连接到与该 ID 相关的 wb 数据框。
由于行数不相等 - wb 有 1103,而 sellerdata 有 20957 - 我发现很难做到这一点。
我正在寻找的最终输出是“wb”数据框,如下所示:
Id BodyColorText MakeText
1.0 blue Mercedes
100.0 cyan Porsch
1001.0 red Ferrari
1003.0 black Audi
我们将非常感谢您的帮助。
最佳答案
我相信您正在寻找left_join
。
library(dplyr)
left_join(wb, suplierdata)
关于r - 如何根据不同数据帧的两个 ID 列的匹配从数据帧列中提取值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56237857/
我是一名优秀的程序员,十分优秀!