将.csv文件导入SAS,清除NULL

时间:2015-10-15 04:55:27

标签: sql csv import sas

我使用PROC IMPORT将.csv文件导入SAS,工作正常。但是,由于我通过从SQL导出生成.csv文件,因此我的一些定量列具有NULL。当SAS浏览列时,即使1000个条目中只有1个为NULL(SAS认为是字符串),他也会将这些列分类为字符。

有没有办法告诉SAS,NULL代表缺失值,应该相应地处理?

由于

2 个答案:

答案 0 :(得分:0)

不使用PROC IMPORT。 您可以预处理文件并转换字符串' NULL'进入实际的空白空间。

data _null_;
   infile 'my.csv' dsd truncover length=ll column=cc ;
   outfile 'new.csv' dsd ;
   length cell $5000 ;
   do while (cc < ll);
     input cell @;
     if cell='NULL' then cell=' ';
     put cell @;
   end;
   put;
run;

或者您可以使用数据步骤读取文件并创建用户定义的信息,以转换&#39; NULL&#39;失踪。

proc format ;
  invalue nulls 'NULL'=. ;
run;
data _null_ ;
   infile 'my.csv' dsd ;
   informat mynumber nulls. ;
   input mynumber ;
run;

答案 1 :(得分:0)

感谢您的反馈。我最终使用了以下内容:

data lib.project;
set lib.project;
array change _character_;
do over change;
if change="NULL" then change=.;
end;
run;