全部版块 我的主页
论坛 计量经济学与统计论坛 五区 计量经济学与统计软件 Stata专版
3412 4
2008-11-25

我有个文件:

company   year return

a     1998    0.5

a     2000    0.8

b     1981     0.2

a      1998   0.5

a     2000  0.8

b    1981  0.2

我想将产生一列数ID如下:

company   year return id

a     1998    0.5       1

a     2000    0.8       1

b     1981     0.2      2

a      1998   0.5       3

a     2000  0.8         3

b    1981  0.2          4

我用了egen id=group(comp year)

结果出现的是:

company   year return id

a     1998    0.5       1

a     2000    0.8       1

b     1981     0.2      2

a      1998   0.5       1

a     2000  0.8         1

b    1981  0.2          2

请问各位大侠女侠如何解决这个问题?如何可以得出我想要的答案呢?跪谢。。。

[此贴子已经被作者于2008-11-25 0:59:29编辑过]

二维码

扫码加我 拉你入群

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

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

全部回复
2008-11-25 18:52:00
观测值只有6行?
二维码

扫码加我 拉你入群

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

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

2008-11-25 22:47:00

回楼上的,这个只是个假设的情况。实际的数据比这个复杂。

我只是想找个思路。。谢谢。。继续等待解答。。

二维码

扫码加我 拉你入群

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

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

2008-11-26 08:24:00
只有6行观测值恐怕看不出赋ID的规则
二维码

扫码加我 拉你入群

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

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

2008-11-26 10:06:00

encode company, gen(cid)

egen id = group(cid)

*==============详细说明===============


     ********* 计量分析与STATA应用 *********          
     *              ::高级部分::
     *          计量分析与Stata应用
     *       ==========================
     *          第七讲  面板数据模型 
     *       ==========================
         

  *== 得到连续的公司编号
  *- 问题:在使用循环命令(如forvalues)时,需要公司编号是连续的,
  *        此时可采用 egen 命令提供的 group() 函数。
  *       
     use xtcs.dta, clear
     tsset code year
     list code year tl if code<20
    egen code_new = group(code)
     list code code_new year tl if code<20
     tsset code_new year
     xtdes
    
     * 启示:采用同样的方法,可以针对任何类别变量生成连续编号

http://baoming.pinggu.org/Default.aspx?id=25

二维码

扫码加我 拉你入群

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

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

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

说点什么

分享

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