楼主: sophia5290
18908 12

[数据管理求助] stata如何实现将后几年的数据用某一年的数据代替 [推广有奖]

  • 0关注
  • 0粉丝

等待验证会员

小学生

78%

还不是VIP/贵宾

-

威望
0
论坛币
2 个
通用积分
0
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
46 点
帖子
4
精华
0
在线时间
11 小时
注册时间
2014-12-2
最后登录
2015-5-13

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
各位大神,本人stata菜鸟。现有09-13年的变量v1,但是仅能查到09年的v1数据,10-13年都是缺失值(但是股票代码一致)。现想用stata将10年到13年的数据用09年的代替,请问用stata的命令如何实现?
二维码

扫码加我 拉你入群

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

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

关键词:Stata tata 如何实现 股票代码 缺失值 stata

本帖被以下文库推荐

沙发
raiderqi 发表于 2014-12-19 19:18:30 |只看作者 |坛友微信交流群
怎么可能。 。

使用道具

藤椅
sophia5290 学生认证  发表于 2014-12-21 15:38:40 |只看作者 |坛友微信交流群
raiderqi 发表于 2014-12-19 19:18
怎么可能。 。
是用stata命令不能实现?只能在excel中完成?

使用道具

板凳
raiderqi 发表于 2014-12-21 16:45:09 |只看作者 |坛友微信交流群
sophia5290 发表于 2014-12-21 15:38
是用stata命令不能实现?只能在excel中完成?
你一年数据想变成5年数据。 。怎么可能啊

使用道具

报纸
sophia5290 学生认证  发表于 2014-12-21 16:50:39 |只看作者 |坛友微信交流群
raiderqi 发表于 2014-12-21 16:45
你一年数据想变成5年数据。 。怎么可能啊
excel中已完成,用merge加入到stata中了,还是谢谢啦!

使用道具

地板
bwhbwh 发表于 2014-12-21 21:08:48 |只看作者 |坛友微信交流群
用carryforward  
已有 2 人评分论坛币 热心指数 收起 理由
happy_287422301 + 40 热心帮助其他会员
SpencerMeng + 5 + 1 观点有启发

总评分: 论坛币 + 45  热心指数 + 1   查看全部评分

使用道具

7
arlionn 在职认证  发表于 2014-12-22 09:36:28 |只看作者 |坛友微信交流群
gen v1_2009 = v1 if year==2009
bysort stockid : egen v1_all = min(v1_2009)
已有 5 人评分论坛币 学术水平 热心指数 信用等级 收起 理由
绷场面4 + 1 精彩帖子
岸雨过城头9 + 1 + 1 + 1 精彩帖子
liuyangclick + 5 + 1 + 1 + 1 精彩帖子
happy_287422301 + 60 精彩帖子
SpencerMeng + 1 + 1 + 1 热心帮助其他会员

总评分: 论坛币 + 65  学术水平 + 4  热心指数 + 3  信用等级 + 3   查看全部评分

使用道具

8
”Bad_boy。 学生认证  发表于 2019-11-7 15:03:40 |只看作者 |坛友微信交流群
arlionn 发表于 2014-12-22 09:36
gen v1_2009 = v1 if year==2009
bysort stockid : egen v1_all = min(v1_2009)
连老师,你太牛了!!

使用道具

9
黃河泉 在职认证  发表于 2019-11-7 17:40:40 |只看作者 |坛友微信交流群
可试试 (两种方法)
  1. clear
  2. input float(id year v1)
  3. 1 2009 32
  4. 1 2010  .
  5. 1 2011  .
  6. 1 2012  .
  7. 1 2013  .
  8. 2 2009 24
  9. 2 2010 31
  10. 2 2011 65
  11. 2 2012 48
  12. 2 2013 93
  13. 3 2009 45
  14. 3 2010  .
  15. 3 2011  .
  16. 3 2012  .
  17. 3 2013  .
  18. end

  19. // Method 1:
  20. bys id (year): carryforward v1, gen(w1)
  21. // Method 2: ssc install mipolate
  22. bys id: mipolate v1 year, gen(w2) forward
复制代码

使用道具

10
zhangdiyuan 学生认证  发表于 2020-11-14 10:34:42 |只看作者 |坛友微信交流群
arlionn 发表于 2014-12-22 09:36
gen v1_2009 = v1 if year==2009
bysort stockid : egen v1_all = min(v1_2009)
如果填充的不是数据而是字符串该如何处理?

使用道具

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

本版微信群
加好友,备注jltj
拉您入交流群

京ICP备16021002-2号 京B2-20170662号 京公网安备 11010802022788号 论坛法律顾问:王进律师 知识产权保护声明   免责及隐私声明

GMT+8, 2024-5-1 11:19