我有2个dataframes其中即时试图值在一个与另一 如果该值在这两个表1和2相匹配进行比较,然后,从表2的第三值被插入到表一。R:ifelse语句:比较data.frames
例表我的DF
words number
1 it 1
2 was 2
3 the 3
4 LTD QTY 4
5 end 5
6 of 6
7 winter 7
表x.sub
lev_dist Var1 Var2
31 1 LTD QTY LTD QTY
我想说的是,如果在VAR1是x.sub等于在myDF上,然后插入X的话是什么.sub.lev_dist在mydf中的单词旁边的第三列
我的尝试在下方,但在结果中保持生成3而不是lev_value
个mydf$lev_dist <- ifelse(test = (mydf$words == x.sub$Var1),x.sub$Var1,0)
结果:
words number lev_dist
1 it 1 0
2 was 2 0
3 the 3 0
4 LTD QTY 4 3
5 end 5 0
6 of 6 0
7 winter 7 0
谁能帮
检查x.sub $ Var1为因素。在这种情况下,尝试'as.character(x.sub $ VAR1),0)' – akrun 2015-03-19 13:06:41
你是绝对正确的...这是一个非常严重的错误,使但是谢谢你捡起来......最后的答案是: mydf $ lev_dist < - ifelse(test =(mydf $ words == as.character(x.sub $ Var1)),x.sub $ lev_dist,0) 如果你能告诉我如何标记你的答案,我会做它 – 2015-03-19 13:11:56
您也可以尝试解决它*有效利用*了'data.table'包,其二进制加盟,这些方针的东西'库(data.table); temp < - setkey(setDT(x.sub [1:2]),Var1);温度[是myDF]' – 2015-03-19 13:16:47