全文阅读:Stata数据处理:模糊匹配-reclink2-matchit-strgroup| 连享会主页
目录
1. 模糊匹配简介
通常你可以使用或构造唯一的 ID 变量来合并两个或多个数据集,比如同一家企业在不同年份的企业代码是一致的,则可以通过企业代码合并不同年份的海关数据。但是对于海关数据和工业企业数据的合并,两个数据库中的企业代码设置是完全独立的,因此无法找到唯一标识符合并工企和海关数据。
通常情况下,我们尝试匹配企业名称或其他字符串变量 (例如联系人、电话、邮编等)。但是,企业名称的记录不规范 (例如 “XXX 有限公司” 会被记录为 “XXX 股份有限公司” 或 “XXXX 公司”)、企业名称中存在错别字或空格等问题都会导致两个数据集中的同一家企业无法匹配,大大降低了匹配的完整度。
通过合并前的数据清理,例如剔除企业名称中的空格、将企业名称中所有字母统一以大写或小写的形式存储可以提高匹配过程中的完整度。另外,当数据量较少的时候,手动匹配能够完全解决上述问题。但在绝大多数研究中,我们面临的数据量较大,且用于匹配的字符串变量无法彻底清理,此时模糊匹配 (fuzzy merging/fuzzy matching) 可以作为一种解决方案。
模糊匹配是指在比较中找到近似匹配或最为相似的字符串的技术 (区别于完全匹配/精确匹配),使用这种算法类型的命令通常会给出匹配的概率。模糊匹配,顾名思义,其合并数据的匹配准确度会低于精确匹配。
因此,我们给出的应用建议是:匹配数据时,首选精确匹配,若不同数据集无法构造唯一匹配符时,可考虑模糊匹配。
本文是在模糊匹配相关推文「Stata:模糊匹配之 matchit」和「Stata:模糊匹配-matchit-reclink」的基础上增加了 Stata 命令 strgroup
用法以及 strgroup
、reclink2
和 matchit
的注意事项和应用实例,以帮助大家更好地理解和应用模糊匹配的相关命令。