SAS中文论坛

标题: [转] SAS中利用Array填补缺失值 [打印本页]

作者: shiyiming    时间: 2013-8-1 14:36
标题: [转] SAS中利用Array填补缺失值
在做数据分析、建模之前,数据处理过程中都会碰到的一个问题,就是对缺失值的处理,有时候我们不可能都把缺失值给丢掉,可能通过填补的方式尽可能的补充基础数据,常用的方式有用均值填补、用中间值填补、用众数填补、用回归模型预测填补等等。

下面介绍SAS中利用Array进行简单的缺失值填补

其中分为对数值型和字符型的缺失值进行赋值

全部都放在macro里面好了

代码示例如下所示:

%macro missing(data);
data &data;
set &data;
array TEMP _numeric_;
do over TEMP;
if missing(TEMP) then TEMP=0;
end;
run;
data &data;
set &data;
array TEMP _character_;
do over TEMP;
if missing(TEMP) then TEMP=0;
end;
run;
%mend;

编译的宏代码调用
%missing(数据集);

这样就可以把数据集中的字符型、数值型的缺失值进行填补,搞定~

原帖:http://www.itongji.cn/article/062c1R012.html




欢迎光临 SAS中文论坛 (http://www.mysas.net/forum/) Powered by Discuz! X3.2