SAS中文论坛

 找回密码
 立即注册

扫一扫,访问微社区

查看: 2569|回复: 0
打印 上一主题 下一主题

[转] SAS中利用Array填补缺失值

[复制链接]

49

主题

76

帖子

1462

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1462
楼主
 楼主| 发表于 2013-8-1 14:36:39 | 只看该作者

[转] 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
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-5-2 07:02 , Processed in 0.243298 second(s), 22 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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