前言:我习惯了熊猫,但我是R的新手。我相信这个问题涵盖了非常基本的R.我有一个小小的想法,我甚至不确定要搜索什么这很可能是重复的 - 请让我知道,我很乐意删除并找到答案。
我知道旁边没有"你在这里试过了什么"。如果您甚至能够指出我的某些文档,我将删除它并继续阅读。
非常感谢你的帮助:)。
我有两个数据帧:
key=
letter id
A 0
B 1
C 2
和
data=
name value
A 24
C 46
B 36
C 5
我想编写一个匹配并找到data$name == key$letter
的函数,并在key$id
的新列中的data
中返回相应的值。
输出数据框看起来如此:
data
name value id
A 24 0
C 46 2
B 36 1
C 5 2
基本上我想使用key
作为参考数据框。
我可以使用np.where
apply
match
和loc
在Python中轻松完成这项工作,但在R中,我不知道从哪里开始。
我已在which
apply
和index
以及compare
上阅读了以下问题,但我一直无法弄清楚如何撰写此声明。
Return indices of rows whose elements (columns) all match a reference vector Finding the index inside a vector satisfying a condition How to find the indices of an R list meeting multiple criteria Is there an R function for finding the index of an element in a vector? Compare two data.frames to find the rows in data.frame 1 that are not present in data.frame 2
你能帮忙吗?
答案 0 :(得分:0)
tt <- match(data$name, key$letter)
data$id <- key$id[tt]