全部版块 我的主页
论坛 计量经济学与统计论坛 五区 计量经济学与统计软件 Stata专版
12967 28
2013-01-30
悬赏 10000 个论坛币 已解决
有如下面板数据:
ID      group    year        MV             MB       MV_Deciles     MB_quintiles     R
1           N       2001       689            0.6            1                      1              886
1           N       2002       886            3               1                      2              333
...
6           N       2008       10369        9               10                    9              217
...
66         Q       2003       987            3.6             .                      .
...
88         A        2001       682           0.596          .                      .
...
99         A        2007       369            1.2             .                      .
...
目前只有group为N的数据每year依据MV数值大小分为10组(MV_Deciles),并在每MV分组中按MB大小分为5组(MB_quintiles)。其他group(Q、A等)均未分组,因此MV_Decile和MB_quintiles位置均显示为缺失值。现要求其它group的数据要按照MV和MB数值大小和已有group N的MV和MB近似程度进行分组标记,并将该组对应的RE值(每年每MV,MB分组都有一R值)填入本行R对应位置。例如:在以上示例中ID为88,group为A,year为2001这个观察值应标记为:MV_Deciles为1, MB_quintiles为1,R为886


示例文件如下:
example.rar
大小:(721.16 KB)

 马上下载

本附件包括:

  • example.dta


最佳答案

sungmoo 查看完整内容

/*重新总结一下楼主的原数据中的问题: (1)原数据并非panel data (2)原分组(N组)中,当year相同时,MV_、MB_并未按MV、MB的大小生成 (3)原分组(N组)中,当数组(year, MV_, MB_)相同时,R未必相同*/ *如果,当group="N"时,MV_=1组内的MV的最大值a小于MV_=2组内的MV的最小值b,而group!="N"时,MV存在介于a与b之间的值,这样的MV值归入哪组? ********** *针对楼主的原数据库,先做以下预处理(可产生p ...
二维码

扫码加我 拉你入群

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

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

全部回复
2013-1-30 01:14:38
/*重新总结一下楼主的原数据中的问题:

(1)原数据并非panel data

(2)原分组(N组)中,当year相同时,MV_、MB_并未按MV、MB的大小生成

(3)原分组(N组)中,当数组(year, MV_, MB_)相同时,R未必相同
*/

*如果,当group="N"时,MV_=1组内的MV的最大值a小于MV_=2组内的MV的最小值b,而group!="N"时,MV存在介于a与b之间的值,这样的MV值归入哪组?

**********

*针对楼主的原数据库,先做以下预处理(可产生panel data;且当year相同时,MV_按MV大小得出;当数组(year, MV_)相同时,MB_按MB大小得出):

duplicates drop ID year,force
drop MV_ MB_
bys year: cumul MV if group=="N",eq g(MV_)
replace MV_=ceil(10*MV_)
bys year MV_: cumul MB if group=="N",eq g(MB_)
replace MB_=ceil(5*MB_)


*以下忽略各原分组的上临界值(只采用下临界值),对非N组观测值分组(以p与q标识):

sort year MV MV_
egen t=tag(year MV_) if MV_>1
by year: g p=sum(t)+1
sort year MV_ MB MB_
egen s=tag(year MV_ MB_) if MB_>1
by year MV_: g q=sum(s)+1
drop t s


*若R严格代表组共值(即当数组(year, MV_, MB)相同时,R也相同),可接着:
bys year p q: egen r=min(R)


*本题其实并不是很复杂的问题,关键在于原始数据以及处理规则是否清晰。
二维码

扫码加我 拉你入群

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

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

2013-1-30 23:59:20
请问:数据相似度那个R是怎么定义的,如何计算得到的,请提供算法、公式、函数,多谢
二维码

扫码加我 拉你入群

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

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

2013-1-31 01:51:09
monstersivle 发表于 2013-1-30 23:59
请问:数据相似度那个R是怎么定义的,如何计算得到的,请提供算法、公式、函数,多谢
R不是什么计算得到的,对于已经分好的组,每一组有一个R值对应。数据相似度,就是说一个未分组的观察值,先看其MV值应该在哪个MV_Decile里面,确定好这个MV_Decile分组后,再看MB值与这个MV_Decile中的哪组MB分组相似,从而确定其MB_quintile分组。每个MV_Decile,MB_quintiles组合都有一个对应的R值,只要能确定分组,那R值自然也就确定了。
二维码

扫码加我 拉你入群

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

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

2013-1-31 02:29:12
xingxf 发表于 2013-1-31 01:51
R不是什么计算得到的,对于已经分好的组,每一组有一个R值对应。数据相似度,就是说一个未分组的观察值, ...
这个R的值稀奇古怪的(跟观测值的其它变量值都沾不上边),
不知道是怎么来的 (而且A组、Q组的R还要单独生成,有必要知道其算法),
上面给的解释还在琢磨,
楼主可以进一步用以下这个数据样本举例说明么?先表示感谢(这是跟聚类分析这个领域有关么?以前没有接触过,或者接触过基础的,但是不知道专业叫法):
IDgroupyearMVMBMV_DecilesMB_QuintilesR

83335

N

2001

477

6.558141

1

3

22.29092

83334

N

2001

700.89

0.052175

1

1

-1.27571

88393

N

2001

828

6.522094

1

3

22.29092

80859

N

2001

2527.84

16.8

1

4

43.50494

86366

N

2001

2706

4.918033

1

2

14.32766

85777

N

2001

3306

7.962617

1

3

22.29092

88483

N

2001

3442.775

0.315788

1

1

-1.27571

85254

N

2001

3630.5

10.66667

1

4

43.50494

59256

N

2001

3874.05

36

1

5

150.2128

84782

N

2001

4064

20

1

4

43.50494

79655

N

2001

4545.84

133.3714

1

5

150.2128

86750

N

2001

5759.05

9.031803

1

3

22.29092

84164

N

2001

5877.08

11.04

1

4

43.50494

81031

N

2001

6599.85

9.000001

1

3

22.29092

10753

N

2001

6662.72

27.77143

1

5

150.2128

87444

N

2001

6772.5

1.268291

1

1

-1.27571

79059

N

2001

6870.5

37.5

1

5

150.2128

77162

N

2001

6920.85

46.56

1

5

150.2128



二维码

扫码加我 拉你入群

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

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

2013-1-31 08:02:38
monstersivle 发表于 2013-1-31 02:29
这个R的值稀奇古怪的(跟观测值的其它变量值都沾不上边),
不知道是怎么来的 (而且A组、Q组的R还要单独 ...
这个不用管R是怎么来的,R是对于每一个MV_deciles和MB_quintiles分组,都有一个R值对应。比如你看第一行数据和第三行数据,这两个观察值的MV_Deciles均为是1,MB_Quintiles均为3,他们的R值就一样。我不知道解释清楚没有,这个R是每一个MV,MB分组的一个共有特性。找到合适的分组,也就找到了R值。
二维码

扫码加我 拉你入群

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

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

点击查看更多内容…
相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

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