楼主: sdsfmff
773 6

[实际应用] 补充缺失值 [推广有奖]

  • 0关注
  • 0粉丝

本科生

63%

还不是VIP/贵宾

-

威望
0
论坛币
9 个
学术水平
8 点
热心指数
13 点
信用等级
5 点
经验
2135 点
帖子
55
精华
0
在线时间
138 小时
注册时间
2013-7-11
最后登录
2018-12-6

sdsfmff 发表于 2018-10-11 16:42:07 |显示全部楼层
怎么实现如图所示的效果,即一个变量var从第n行开始出现值,那么怎么变成新变量New_var 即第n行之前的记录仍为空值,第n后出现的空值变为字符串"缺失".
关键词:字符串 新变量

补充缺失值.jpg
stata SPSS
sdsfmff 发表于 2018-10-11 16:43:17 |显示全部楼层
补充 用SAS软件实现
回复

使用道具 举报

l1i2n3i4n5g 在职认证  发表于 2018-10-12 10:02:55 |显示全部楼层
本帖最后由 l1i2n3i4n5g 于 2018-10-12 10:04 编辑
  1. data test;
  2.    infile cards missover;
  3.    input
  4. id $
  5. var $;
  6. cards;
  7. 1  
  8. 1 A
  9. 1  
  10. 1 B
  11. ;
  12. run;

  13. data want;
  14.    set test;
  15.    retain temp;
  16.    if not missing(var) then temp=1;
  17.    new_var=ifc(temp=1 and missing(var),'缺失',var);
  18.    drop temp;
  19. run;
复制代码

已有 1 人评分论坛币 学术水平 热心指数 信用等级 收起 理由
sdsfmff + 1 + 1 + 1 + 1 精彩帖子

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

回复

使用道具 举报

sdsfmff 发表于 2018-10-12 14:20:07 |显示全部楼层
l1i2n3i4n5g 发表于 2018-10-12 10:02
谢谢
回复

使用道具 举报

sdsfmff 发表于 2018-10-12 14:34:33 |显示全部楼层
l1i2n3i4n5g 发表于 2018-10-12 10:02
在此处我只列了一个ID,如果有不同的ID且按ID分组的话,有怎么做呢?谢谢
回复

使用道具 举报

l1i2n3i4n5g 在职认证  发表于 2018-10-12 14:55:17 |显示全部楼层
sdsfmff 发表于 2018-10-12 14:34
在此处我只列了一个ID,如果有不同的ID且按ID分组的话,有怎么做呢?谢谢
  1. data test;
  2.    infile cards missover;
  3.    input
  4. id $
  5. var $;
  6. cards;
  7. 1  
  8. 1 A
  9. 1  
  10. 1 B
  11. 2  
  12. 2 A
  13. 2  
  14. 2 B
  15. ;
  16. run;

  17. data want;
  18.    set test;
  19.    by id;
  20.    retain temp;
  21.    if first.id then call missing(temp);
  22.    if not missing(var) then temp=1;
  23.    new_var=ifc(temp=1 and missing(var),'缺失',var);
  24.    drop temp;
  25. run;

  26. proc print;
  27. run;
复制代码
回复

使用道具 举报

sdsfmff 发表于 2018-10-12 15:54:52 |显示全部楼层
l1i2n3i4n5g 发表于 2018-10-12 14:55
谢谢了,又学到了
回复

使用道具 举报

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

GMT+8, 2018-12-11 04:54