全部版块 我的主页
论坛 计量经济学与统计论坛 五区 计量经济学与统计软件 Stata专版
1916 2
2013-01-03
x  group
a        1
a        1
a        2
b        1
b        2
c        1
c        1
c        1
c        1
c        1
d        1
d        1
f        2
f        2

.        tab        x if group==1

                x       Freq.        Percent        Cum.
                                
                a           2        20.00        20.00
                b           1        10.00        30.00
                c           5        50.00        80.00
                d           2        20.00        100.00
                                
                Total          10        100.00

如何根据group=1 中x取值的频率从大到小得到"c a d b f",放入local中。谢谢!
注意f不能漏掉啊



二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2013-1-5 14:55:06
tempfile dataset
save `dataset'

use `dataset', clear
contract x, freq(count)
drop count
tempfile x
save `x'

use `dataset', clear
contract group x if group == 1, freq(count)
merge 1:1 x using `x', keep(match using) nogenerate
mvencode count, mv(0) override
gsort -count

二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2013-1-5 14:56:20
forvalue i = 1 / `c(N)' {
local x`i' = x[`i']
local group`i' = group[`i']
}

use `dataset', clear
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群