>= 1 变量的精确匹配和 >=1 变量的模糊匹配

Exact matching on >= 1 variable and fuzzy matching on >=1 variable stata

在Stata中,如何对至少一个变量进行精确匹配以及对至少一个变量进行模糊匹配?

比如我要对orgyear进行精确匹配,对firstnamelastname进行模糊匹配。换句话说,为了让它甚至考虑 firstnamelastname 上的模糊匹配,orgyear 必须是精确匹配。

这是一个示例数据集:

*dataset a
clear all
input str1 org year str10 firstname str12 lastname
"A" 2010 "susan" "robertson"
"A" 2011 "bob" "miller"
"B" 2010 "albert" "smith"
"B" 2011 "sue" "washington"
end
tempfile a
save `a'

还有一个,待合并:

*dataset b
clear all
input str1 org year str10 firstname str12 lastname
"A" 2010 "Susan A" "Robertson"
"A" 2011 "bob" "Miller"
"A" 2012 "francisco" "ramirez"
"B" 2010 "mike" "doorpen"
"B" 2011 "sue h" "washnngton"
end
tempfile b
save `b'

我怎样才能完成我想要的?

我能想到的最好的办法是把firstnamelastname合并成一个变量后使用matchit,比如name。然后,对于具有相同 orgyear 的观察结果,仅将模糊匹配结果保持在某个阈值以上。但这看起来很笨重。有没有更好的办法?对所有方法开放。

有人在 Twitter 上告诉我答案:使用 reclink (https://fmwww.bc.edu/repec/bocode/r/reclink.html) 和 required 选项。