全部版块 我的主页
论坛 计量经济学与统计论坛 五区 计量经济学与统计软件 Stata专版
2847 3
2011-07-13
我从datastream里下了数据 在execl里排列如下
table 1
mv
mv
mv
cf
cf
cf

2004

2005

2006

2004

2005

2006

aa com

1

2

3

4

5

6

bb com

7

8

9

10

11

12



但是我是需要用stata去测试time series的回归,只有转换成以下的排列才可以用stata
table 2
group
year
mv
cf
aa com

1

2004

1

4

aa com

1

2005

2

5

aa com

1

2006

3

6

bb com

2

2004

7

10

bb com

2

2005

8

11

bb com

2

2006

9

12

由于我的公司有1000家,如果一个一个复制粘贴会很浪费时间.
我试过粘贴里的转换,还是不能达到table2的效果

请问下有没有快速的转化方式? 只要把table 1变成table 2的排列就可以了
二维码

扫码加我 拉你入群

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

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

全部回复
2011-7-13 03:09:59
建议您用excel把年和mv及cf变数弄成
mv 2004  mv2005  mv2006  cf2004  cf2005  cf2006

然后参考陈传波的STATA十八讲中的 4.4.2 【利用指令reshape,您将轻松愉快得到想要的】

input str10 table1 mv2004 mv2005 mv2006 cf2004 cf2005 cf2006
aacom 1 2 3 4 5 6
bbcom 7 8 9 10 11 12
end

egen id=group(table1)
reshape long mv cf,i(id) j(year)
二维码

扫码加我 拉你入群

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

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

2011-7-14 01:32:42
谢谢, 但是我按照你的方法去做 stata出现了问题:显示为size2005 type mismatch with other size variables。  我的数据是直接从excel里粘贴过去的,然后再stata中显示是 size2004  float %0.8g
size2005 str14 %14s
size2006 str14 %14s
求助下 我接下去要怎么操作阿?谢谢
二维码

扫码加我 拉你入群

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

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

2011-7-14 02:31:48
主要的原因是,您在黏贴的过程里,导致变数变成字符型变量的缘故。
两个处理方式:
1.请您自己在excel处理好再黏贴过去,务必在stata里的数据呈现非红色或蓝色的字符型变量,而是黑色的。
2.在stata里,把字符型变量变成数值型变量。

*利用先前您给的例子,假设mv2005与mv2006为字符型变量
input str10 table1 mv2004 str14 mv2005 str14 mv2006 cf2004 cf2005 cf2006
aacom 1 2 3 4 5 6
bbcom 7 8 9 10 11 12
end

destring mv2005,replace
destring mv2006,replace
egen id=group(table1)
reshape long mv cf,i(id) j(year)
二维码

扫码加我 拉你入群

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

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

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

说点什么

分享

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