如何用SAS中的零替换所有缺失值?我有一个文本文件,我转储到SAS处理一些地理数据,但每当它有一个缺失的值,它会打破操作。有没有办法在不指定每个字段的情况下改变它?我有200多个。
我的方式是:
data geo_cali_north;
set geo_cali_north;
if polar_data eq . then 0;
if lat_xvar eq . then 0;
run;
我怎样才能避免在每个领域都这样做?
答案 0 :(得分:16)
您可以将所有缺失值设置为0,如下所示:
data myData;
set myData;
array a(*) _numeric_;
do i=1 to dim(a);
if a(i) = . then a(i) = 0;
end;
drop i;
这将转换任何数字“。”到0
答案 1 :(得分:7)
另一种选择:
proc stdize data=mydata reponly missing=0 out=newdata;
var _numeric_;
run;
如果您有SAS / STAT,可能比大数据集的datastep选项更快。