如何根据Stata中的某个变量拆分样本?

时间:2012-09-25 16:20:45

标签: stata sample

我想根据特定变量分割样本,创建4个子样本,每个子样本与变量分布的四分位数相关。目的是证明这个变量的不同水平的存在会影响回归的结果,使其变得重要或不重要。

2 个答案:

答案 0 :(得分:6)

最简单的方法是使用egen命令将变量切换为四个等距间隔。

示例:

. sysuse auto, clear
(1978 Automobile Data)

. sum price, detail

                            Price
-------------------------------------------------------------
      Percentiles      Smallest
 1%         3291           3291
 5%         3748           3299
10%         3895           3667       Obs                  74
25%         4195           3748       Sum of Wgt.          74

50%       5006.5                      Mean           6165.257
                        Largest       Std. Dev.      2949.496
75%         6342          13466
90%        11385          13594       Variance        8699526
95%        13466          14500       Skewness       1.653434
99%        15906          15906       Kurtosis       4.819188

. egen price_cut = cut(price), group(4)

. table price_cut, contents(n price min price max price)

----------------------------------------------
price_cut |   N(price)  min(price)  max(price)
----------+-----------------------------------
        0 |         18       3,291       4,187
        1 |         19       4,195       4,934
        2 |         18       5,079       6,303
        3 |         19       6,342      15,906
----------------------------------------------

我希望这会对你有所帮助。

答案 1 :(得分:0)

这是最简单的方法:

xtile xx=yourvariable, nq(4) 

我希望这会有所帮助。