当两个 id 相互匹配时,如何创建一个等于 1 的虚拟变量?

How do I create a dummy variable that equals 1 when two id's match each other?

这可能真的很基础,但我是 R 的新手。

我有两个数据集,如下所示:

# A tibble: 7 x 1
  municipality_code
              <dbl>
1              1001
2              1005
3              1021
# A tibble: 10 x 1
   municipality_code
               <dbl>
 1              1001
 2              1001
 3              1003
 4              1003
 5              1021

我正在尝试使用第一个 tibble 上的 municipality_code 在第二个 tibble 上添加一个虚拟,当代码匹配时它等于 1。这是最终结果的示例:

# A tibble: 4 x 2
  municiplity_code dummy
             <dbl> <dbl>
1             1001     1
2             1001     1
3             1003     0
4             1003     0
5             1021     1

我认为这可行...

first_municipalities<-data.frame("municipality_code"=c(1001,1005,10021))
second_municipalities<-data.frame("municipality_code"=c(1001,1001,1003,1003,10021))

df<-second_municipalities %>%
  mutate(dummy=(municipality_code %in% first_municipalities$municipality_code) %>% as.integer)