创造最高和最高Stata变量的最低四分位数

时间:2015-02-12 23:00:32

标签: stata

这是我用来分割Winsorised&的Stata代码。基于4个四分位数的中心变量(num_exp,表示经验丰富的经理人数)此后产生最高&最低四分位数假人:

 egen quartile_num_exp = xtile(WC_num_exp), n(4)
    gen high_quartile_numexp = 1 if quartile_num_exp==4
    (1433 missing values generated);
    gen low_quartile_num_exp = 1 if quartile_num_intlexp==1
    (1062 missing values generated);

谢谢大家 - 这里是链接

https://dl.dropboxusercontent.com/u/64545449/No%20of%20expeienced%20managers.dta

我确实尝试了Aspen Chen& Sons&罗伯托的建议 - 陈的创造高四分位假人的方法给出了与我之前相同的结果。罗伯托 - 两个四分位数显示同一行的1 - 这可能是怎么回事?

我忘了在这里提到确实有很多关系 - 原始变量W_num_exp的范围是从0到7,平均值是2.126618,我从W_num_exp的每次观察中减去得到WC_num_exp。

tab high_quartile_numexp shows the same problem I originally had
  le_numexp |      Freq.     Percent        Cum.
------------+-----------------------------------
          0 |      1,433       80.64       80.64
          1 |        344       19.36      100.00
------------+-----------------------------------
      Total |      1,777      100.00

另外,我检查了我的Stata版本13.1中已安装egenmore

我无法理解为什么基于最高四分位数的虚拟变量没有低于它的75%的观测值(我总共有1777个观测值):据我所知,这个虚拟变量应该是截止点正好超过总数的25%。观察应该存在(因为我们可以看到它只包含19.3%的观察结果)。

在为high_quartile low_quartile虚拟变量编写正确的Stata代码时,我是否做错了什么?

2 个答案:

答案 0 :(得分:2)

请考虑以下代码:

clear
set more off

sysuse auto
keep make mpg

*-----

// your way (kind of)
egen mpg4 = xtile(mpg), nq(4)

gen lowq = mpg4 == 1
gen highq = mpg4 == 4

*-----

// what you want
summarize mpg, detail
gen lowq2 = mpg < r(p25)
gen highq2 = mpg < r(p75)

*-----

summarize high* low*
list

现在查看商家信息,看看发生了什么。

请参阅help stored results

答案 1 :(得分:1)

提供的数据集回答了问题。考虑制表:

. tab W_num_exp

num_execs_i |
   ntl_exp, |
 Winsorized |
   fraction |
        .01 |      Freq.     Percent        Cum.
------------+-----------------------------------
          0 |        297       16.71       16.71
          1 |        418       23.52       40.24
          2 |        436       24.54       64.77
          3 |        282       15.87       80.64
          4 |        171        9.62       90.26
          5 |        109        6.13       96.40
          6 |         34        1.91       98.31
          7 |         30        1.69      100.00
------------+-----------------------------------
      Total |      1,777      100.00

如果且仅当存在具有累积百分比25,50,75的值时,可以提供4个基于四分位数的区间中的每一个的完全相等的数字。不存在这样的值。你必须用近似值来做。近似可能是糟糕的,但是唯一的选择,任意地将具有相同值的观测值分配给不同的频率到均匀的频率,在统计上是不可理解的。

(对于完全相同的频率,需要为4个箱的4的倍数的观测数等,也是一个复杂因素,这对于小型数据集来说很难,但这不是主要问题。)