R-比较2个列表并提取相似的条目

时间:2018-06-20 14:08:24

标签: r list if-statement compare extract

我当前正在尝试比较2个列表,并在与List1匹配的List2中提取条目。到目前为止,这是我所拥有的:

List1 <- list(1,2,3)
List2 <- list(2,4,6)
is.element(List1[2],List2)
for(i in 1:length(List1)){
  if(is.element(List1[i],List2)){
    print(List2)
  }else{

  }
}

当i = 2时,它只打印整个List2,这不是我想要的,有人可以让我知道如何专门提取与List1 [i]相匹配的元素吗? 如果List1 [i]与List2不匹配,我什么也不想发生。

将来,我打算用它来比较职位列表和句子列表。如果出现职位名称,则整个句子将从句子列表中拉出。任何对此的建议将不胜感激

2 个答案:

答案 0 :(得分:1)

intersect(List1, List2)

[[1]]
[1] 2

答案 1 :(得分:0)

@Len的上述答案是最好的答案。您实际上不需要在这里循环。但是,以便您了解为什么您的功能无法正常工作。您可以按照以下步骤操作:

List1 <- list(1,2,3)
List2 <- list(2,4,6)

for (i in List1){
  if (i %in% List2){
    print(i)
  }
}  

[1] 2