vincent829 发表于 2009-7-5 18:56 
谢谢两位,sungmoo和voodoo
我用两位的方法对样本都进行了分组,结果是对于一个接近60k观测值的样本来说,出现不一样的分组情况只有168例,应该在接受范围之内吧
先验相同的方法却带来不同的结果,这事实上也是问题,而且是大问题。我个人能想到的原因有两个:
1. voodoo的方法并未忽略missing values,而sungmoo的cumul命令则忽略;
2. 更可能的原因是由于sort命令对相同mv公司排序的随机性导致(见如下程序示例,也可参见help sort),进而在不同情况下将相同mv的公司分入不同但相邻的group。sort命令有个stabe选项可以避免这一问题,但由于sungmoo的cumul命令中也暗含一个sort `by' `varlists'语句(viewsource cumul.ado),就不知该如何解决了。
clear
set obs 10
gen id = _n
gen mv = 1 in 1/5
replace mv = _n in 6/10
gen rnd = uniform()
sort rnd
list id mv // 1st before sorting
preserve
sort mv
list id mv // 1st after sorting
restore
list id mv // 2nd before sorting
sort mv
list id mv // 2nd after sorting