首页 > 解决方案 > R:查找向量中没有出现在另一个向量中的每个元素并将其设置为零

问题描述

我有两个数字向量:

a <- c(1,2,3,4,5,6,7,8)
b <- c(4,2,2,3,9,10,7,7,10,14)

我想将任何b不出现的数字设置a为零。我想要的结果是:

c <- c(4,2,2,3,0,0,7,7,0,0)

谁可以优雅地做到这一点?

(我想使用 left_join 但我认为必须有一些更优雅的方法)

标签: rvector

解决方案


使用%in%条件的否定:

b[!b %in% a] <- 0

推荐阅读