全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
2351 4
2012-06-19
悬赏 20 个论坛币 已解决
各位大侠,我有一个数据文件,包含若干变量,其中很多变量具有数据遗失。比如下面这个包含4个变量的例子:

DATA Test;
INPUT age income education weight;
DATALINES;
1 2 4
. 5 . .
. 8 5 2
6 7 . .
9 . . 3
1 2 3 .
4 . . 5
;
RUN;

请教各位大侠,如何使用SAS DATA或者PROC SQL依次进行如下两步操作:

第一步: 如果一个变量超过20%数据遗失,那么就把这个变量从数据文件中删除。通俗一点,我想检查包含数据遗失情况,如果一个变量数据遗失情况严重,则将这个变量删除。

第二步:如果一行数据中任意一个变量具有数据遗失,则将这行数据删除。

如果我的问题没有完全描述清楚,那么尽情按照您的理解提供相应答案。无论大侠提供SAS CODE给第一步,或第二步,鄙人感激不尽。

如果变量数目很多,需要进行重复操作。这可能会要用到宏。如有可能,如能将如上两步程序用宏进行封装更佳,但是,并不奢求。

最佳答案

可~乐 查看完整内容

嗯,你看看下面这个能否满足。。。
二维码

扫码加我 拉你入群

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

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

全部回复
2012-6-19 16:28:53
嗯,你看看下面这个能否满足。。。
复制代码
二维码

扫码加我 拉你入群

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

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

2012-6-22 03:14:38
thanks, good to know.
二维码

扫码加我 拉你入群

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

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

2012-7-10 17:53:05
不需要这么麻烦,用proc timeseries第一步可以轻松搞定。
二维码

扫码加我 拉你入群

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

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

2012-7-10 18:28:43
第二步用do over + 数组可以搞定.
data demo;
set your_data;
array var{*} 8 var1-varN;
flag = 0;
do over var;
  if missing(var) then flag = 1;
end;
if flag ne 1;
run;
二维码

扫码加我 拉你入群

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

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

相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群