楼主: 姨姥姥206
1032 4

[数据管理求助] stata数据处理,谢谢回答~ [推广有奖]

  • 0关注
  • 0粉丝

硕士生

30%

还不是VIP/贵宾

-

威望
0
论坛币
3008 个
通用积分
31.0000
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
232 点
帖子
37
精华
0
在线时间
241 小时
注册时间
2017-4-22
最后登录
2024-8-20

楼主
姨姥姥206 发表于 2018-7-9 18:05:21 |AI写论文
10论坛币
数据结构如下:研究区间为05年到08年,数据可能有缺失。现假设实验组只有两只股票,控制组三只股票,需要实验组的每只股票和控制组三只股票分别匹配,计算一个均值,也就是变量v做差的平方再除以时间,以实验组第一只000001为例,与控制组000003匹配时,只有三年的数据,因此计算变量v的均值时只需要除以3,以此类推。如何编程能得到所有的均值,也就是6个值。希望大家能够帮忙解答下~万分感谢!
实验组

id

year

v

000001

2006

0.7

000001

2007

0.9

000001

2008

1.2

000002

2005

0.6

000002

2006

0.4

000002

2007

0.9

000002

2008

1.5


控制组

id

year

v

000003

2005

0.6

000003

2006

1.3

000003

2007

0.8

000003

2008

0.5

000004

2005

0.7

000004

2006

0.9

000004

2007

0.6

000004

2008

0.4

000005

2006

0.9

000005

2007

1.5

000005

2008

1.2


最佳答案

关键词:stata数据处理 STATA数据 Stata tata 数据处理

沙发
蓝色 发表于 2018-7-9 18:05:22
  1. clear
  2. input ///
  3. id1        year1        v1
  4. 1        2006        0.7
  5. 1        2007        0.9
  6. 1        2008        1.2
  7. 2        2005        0.6
  8. 2        2006        0.4
  9. 2        2007        0.9
  10. 2        2008        1.5
  11. end
  12. tempfile a  
  13. save "`a'"

  14. clear
  15. input ///
  16. id2        year2        v2
  17. 3        2005        0.6
  18. 3        2006        1.3
  19. 3        2007        0.8
  20. 3        2008        0.5
  21. 4        2005        0.7
  22. 4        2006        0.9
  23. 4        2007        0.6
  24. 4        2008        0.4
  25. 5        2006        0.9
  26. 5        2007        1.5
  27. 5        2008        1.2         
  28. end
  29. tempfile b  
  30. save "`b'"

  31. use "`a'",clear
  32. cross   using  "`b'"
  33. keep if year1==year2
  34. sort id1 id2 year1

  35. gen dv2=(v1-v2)^2
  36. collapse (mean) dv2,by(id1 id2)
  37. list
复制代码


已有 1 人评分论坛币 学术水平 热心指数 收起 理由
逐梦的太阳 + 5 + 5 + 5 热心帮助其他会员

总评分: 论坛币 + 5  学术水平 + 5  热心指数 + 5   查看全部评分

藤椅
hifinecon 发表于 2018-7-9 21:14:46
good answer

板凳
姨姥姥206 发表于 2018-7-10 09:39:15
蓝色 发表于 2018-7-9 20:25
你好,谢谢你的回答,想再问下,最后如果想得到按id1分组,均值最小的前两个值可以怎么做呢?

报纸
姨姥姥206 发表于 2018-7-10 12:56:45
hifinecon 发表于 2018-7-9 21:14
good answer
如果数据量太大,cross  using  运行特别慢  数据读不进来  怎么办?

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注jltj
拉您入交流群
GMT+8, 2025-12-31 11:48