Stata中二分法变量的编码

Stata中二分法变量的编码,stata,dummy-variable,Stata,Dummy Variable,我有一组关于公司规模的二分法变量: emp1_2(即有1或2名雇员的公司,包括所有者)、emp3_9、emp10_19、emp20_49、emp50_99、emp100_249、emp250_499、emp500,此外,我没有关于27家公司规模的信息,但我有一个有根据的猜测,他们是大型公司 我想为“小公司”的公司创建一个二分法变量;因此,当emp1_2==1 | emp3_9==1 | emp10_19==1等于1时,此变量等于1,否则为0 根据我对Stata的理解,我是Stata的裸用户,以下

我有一组关于公司规模的二分法变量: emp1_2(即有1或2名雇员的公司,包括所有者)、emp3_9、emp10_19、emp20_49、emp50_99、emp100_249、emp250_499、emp500,此外,我没有关于27家公司规模的信息,但我有一个有根据的猜测,他们是大型公司

我想为“小公司”的公司创建一个二分法变量;因此,当
emp1_2==1 | emp3_9==1 | emp10_19==1
等于1时,此变量等于1,否则为0

根据我对Stata的理解,我是Stata的裸用户,以下两种构造二分变量的方法应该是等价的

方法1)

方法2)

相反,我发现,对于emp1|U 2 | emp3|U 9 | emp10|U 19的公司和未进入任何类别(即emp1|U 2、emp3|U 9、emp10|U 19、emp20|U 49、emp50|U 99、emp100|U 499、emp500|U 499、emp500)的公司,使用方法2)时,lar|U公司等于1,但我有一个合理的猜测,他们是大公司

我想知道这两种方法之间是否有细微的区别。我认为它们应该带来平等的结果。

当你这样做的时候

gen lar_firm = emp1_2 | emp3_9 | emp10_19 
你在测试

(emp1_2 != 0) | (emp3_9 != 0) |(emp10_19 != 0)  
特别是,缺少的值
与0不同:它们实际上更大

有关更多信息:


请发布数据示例并输出,以便我们可以测试它。。用我制作的一个小数据集,我看不出有什么不同。你不需要
(…)
是方法2,尽管我不能发布这些数据,甚至不能发布其中的一部分,不幸的是,我是不被允许的。原则上,如果这两种方法的工作方式存在细微差异,更有经验的Stata用户现在可能不需要处理数据就可以了解它。例如,我认为方法1将值分配给所有观察单位,而方法2将值(1或0)排除在分配之外对于我建立的条件,缺少值的观察单位。我无法理解为什么它似乎将值1赋给了这样的观察单位。你可以随时发布假数据。。我为你解释的内容制作了假数据,我可以发布,你也一样..非常感谢!我怀疑是这样的,但我无法确定。简言之,这两种方法产生相同的结果,当且仅当所有值都是1或0时。也就是说,
为假
等于0
始终是等价的,但是
为真
并不意味着
等于1
,因为在逻辑比较中,任何非零值也被视为
为真
,因为所有Stata逻辑都是两值,真或假。
gen lar_firm = emp1_2 | emp3_9 | emp10_19 
(emp1_2 != 0) | (emp3_9 != 0) |(emp10_19 != 0)