SAS中文论坛

 找回密码
 立即注册

扫一扫,访问微社区

查看: 3026|回复: 1
打印 上一主题 下一主题

如何发现缺失值变量并填充?

[复制链接]

49

主题

76

帖子

1462

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1462
楼主
 楼主| 发表于 2013-7-18 10:21:32 | 只看该作者

如何发现缺失值变量并填充?

比如有个测试数据集如下:
data test;
input x y z m;
cards;
1 . 2 .
2 3 4 5
;
run;

1)想得到所有缺失值的变量的list,上面的数据集应该是y和m;2)对y和m进行均值填充。

如何实现?感谢大侠!
回复 支持 反对

使用道具 举报

49

主题

76

帖子

1462

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1462
沙发
 楼主| 发表于 2013-8-9 08:12:08 | 只看该作者

Re: 如何发现缺失值变量并填充?

[code:o8ljcuhy]data test;
input x y z m;
cards;
1 . 2 .
2 3 4 5
;
run;
proc sql noprint; select name into :var separated by ' ' from dictionary.columns where libname='WORK' and memname='TEST' ;quit;
%macro mm;
data a; set test;
length m_var $ 10;
array aa(4) x y z m;
  %do i=1 %to 4;
  if missing(aa(&i.)) then m_var=catx(' ',m_var,"%scan(&var.,&i.)")        ;
  if missing(aa(&i.)) then aa(&i.)=0;
%end;
run;
%mend;
%mm[/code:o8ljcuhy]
回复 支持 反对

使用道具 举报

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

本版积分规则

QQ|小黑屋|手机版|Archiver|SAS中文论坛  

GMT+8, 2025-5-2 07:04 , Processed in 0.070452 second(s), 20 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表