如何根据两列获取因子变量。 [R

时间:2019-01-19 16:20:55

标签: r dataframe

我需要在此data.frame中创建一个新列v4

v1<-c(1,2,4,7,9,12,34,56,43)
v2<-c(4,4,9,56,73,457,12,12,5585)
v3<-c(7,7,43,124,415,552,552,12525,99)
df<- data.frame(v1,v2,v3)

诀窍在于,在v1 v2中存在任何v4值的情况下,必须{{1}成为1

所以结果将是这样的:

v4

2 个答案:

答案 0 :(得分:2)

这是一个简单的答案,但是您的逻辑和预期结果不匹配:

在建议的修改和OP的评论之后,

最终答案

 library(dplyr)
   df %>% 
  mutate(V4=ifelse(v1%in%v2,1,2))

答案 1 :(得分:2)

使用基数R

df$v4 <- ifelse(df$v1 %in% df$v2, 1, 2)

编辑:在@NelsonGon的答案中的注释之后修改答案