STATA joinby命令

joinby。当我们进行数据的横向合并时,经常会用到merge命令,但是在使用merge命令进行一对一合并、一对多合并、多对一合并和多对多合并都不是我们想要的结果时,可以考虑使用joinby组内交叉合并。老规矩,还是先上命令语法和选项介绍。

一、命令介绍

1、命令语法 

joinby [varlist] using filename [, options] 

2、选项介绍

update:当master数据集中存在缺失值时,指定此选项可以使得using数据集中的非缺失值对其进行更新覆盖。

replace:这个选项只能与update一起使用。当指定此选项时,master数据集中的非缺失值将被using数据集的相应值替换。但是一个非缺失的观测值不会被一个缺失的观测值替换。

unmatched():当观测值不匹配时,指定此选项可以保留一个数据集的观测值。unmatched(none)表示忽略所有不匹配的观测值;unmatched(both)表示同时保留master和using数据集的不匹配的观测值;unmatched(master)表示仅保留master数据集中不匹配的观测值;unmatched(using)表示仅保留using数据集中不匹配的观测值。

_merge(varname):使用此选项可以标记合并结果中观测值的来源,默认为_merge。

nolabel:这个选项可以防止Stata直接从using数据集复制值标签到master数据集。

posted @ 2023-05-12 21:15  myrj  阅读(1041)  评论(0编辑  收藏  举报