如何在 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,如下所示:
data myData;
set myData;
array a(*) _numeric_;
do i=1 to dim(a);
if a(i) = . then a(i) = 0;
end;
drop i;
这将转换任何数字“。” 为 0
另外一个选项:
proc stdize data=mydata reponly missing=0 out=newdata;
var _numeric_;
run;
如果您有 SAS/STAT,可能比大型数据集的 datastep 选项更快。