楼主: 日复一日12
2264 6

[数据管理求助] 在stata里如何将观测用非缺失观测替代 [推广有奖]

  • 0关注
  • 1粉丝

已卖:133份资源

讲师

17%

还不是VIP/贵宾

-

威望
0
论坛币
1151 个
通用积分
43.6279
学术水平
10 点
热心指数
18 点
信用等级
11 点
经验
11224 点
帖子
155
精华
0
在线时间
685 小时
注册时间
2012-3-26
最后登录
2025-1-23

楼主
日复一日12 发表于 2014-5-11 00:13:33 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
情况是这样,假设变量X缺失比较多,我想把最后一个观测用前面的不是缺失的观测进行替代,我该怎么做?求问各位大神!~
比如:
        x
1      .
2      .
3     14
4     .
5     15
类似这样,想把15变成14 注意此时14不一定出现在第三个观测中,也有可能是1 或者2 或者4,;同时第五个观测可能会是缺失的。
该怎么做呢?
二维码

扫码加我 拉你入群

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

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

关键词:Stata tata 最后一个 怎么做 如何

沙发
日复一日12 发表于 2014-5-11 00:14:23
就是要往上找一条非缺失的观测替代最后一条观测 这样

藤椅
ywh19860616 发表于 2014-5-11 12:04:11
写了一个比较差的codes,楼主请试用
  1. clear
  2. input id x
  3. 1 .
  4. 2 .
  5. 3 14
  6. 4 .
  7. 5 15
  8. 6 .
  9. end

  10. preserve
  11. drop if missing(x)
  12. count
  13. replace x=x[`=_N'-1] in `=_N'
  14. save us.dta,replace
  15. restore,preserve


  16. preserve
  17. drop if !missing(x)
  18. count
  19. save us1.dta,replace
  20. restore,preserve

  21. clear
  22. use us1
  23. append using us
  24. sort id
  25. list
复制代码
已有 2 人评分经验 论坛币 学术水平 热心指数 信用等级 收起 理由
crystal8832 + 10 + 10 + 1 + 1 补偿
日复一日12 + 1 + 1 + 1 热心帮助其他会员

总评分: 经验 + 10  论坛币 + 10  学术水平 + 2  热心指数 + 2  信用等级 + 1   查看全部评分

一份耕耘,一份收获。

板凳
ywh19860616 发表于 2014-5-11 12:06:23
  1. clear

  2. . input id x

  3.              id           x
  4.   1. 1 .
  5.   2. 2 .
  6.   3. 3 14
  7.   4. 4 .
  8.   5. 5 15
  9.   6. 6 .
  10.   7. end

  11. .
  12. . preserve

  13. . drop if missing(x)
  14. (4 observations deleted)

  15. . count
  16.     2

  17. . replace x=x[`=_N'-1] in `=_N'
  18. (1 real change made)

  19. . save us.dta,replace
  20. file us.dta saved

  21. . restore,preserve

  22. .
  23. end of do-file

  24. . do "D:\Temp\STD00000000.tmp"

  25. . preserve

  26. . drop if !missing(x)
  27. (2 observations deleted)

  28. . count
  29.     4

  30. . save us1.dta,replace
  31. file us1.dta saved

  32. . restore,preserve

  33. .
  34. end of do-file

  35. . do "D:\Temp\STD00000000.tmp"

  36. . clear

  37. . use us1

  38. . append using us

  39. . sort id

  40. . list

  41.      +---------+
  42.      | id    x |
  43.      |---------|
  44.   1. |  1    . |
  45.   2. |  2    . |
  46.   3. |  3   14 |
  47.   4. |  4    . |
  48.   5. |  5   14 |
  49.      |---------|
  50.   6. |  6    . |
  51.      +---------+

  52. .
  53. end of do-file

  54. .
复制代码
已有 2 人评分学术水平 热心指数 信用等级 收起 理由
╰不滅信念 + 1 + 1 + 1 精彩帖子
日复一日12 + 1 + 1 + 1 精彩帖子

总评分: 学术水平 + 2  热心指数 + 2  信用等级 + 2   查看全部评分

一份耕耘,一份收获。

报纸
日复一日12 发表于 2014-5-12 11:22:53
ywh19860616 发表于 2014-5-11 12:06
哇 谢谢 辛苦了 先顶再看

地板
日复一日12 发表于 2014-5-12 11:24:07
ywh19860616 发表于 2014-5-11 12:04
写了一个比较差的codes,楼主请试用
辛苦啦 !

7
wangguoping2013 发表于 2014-5-27 08:31:39
提示: 该帖被管理员或版主屏蔽  crystal8832 违反论坛规定 2014-5-27 09:21

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

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