[SAS]易錯例子之數值型轉字符型


/*
   數值型缺失,可賦值點號(.),data步可以用 var = . 或 missing(var)判斷
   字符型缺失,可賦值0個或多個空格('' 或' '等), data步可以用var = '' 或missing(var)判斷
   以下是數值型缺失轉字符型的例子,但缺失轉換后不缺失,易做錯。
*/

data test;
input var;
datalines;
1
.
;
run;

/* 錯誤轉換*/
data test2;
    set test;
    
	var2 = compress(put(var, 8.));
run;

proc sql;
    select count(*) as miss_n
	from test2
	where var2 is missing;
quit;

/* 正確轉換*/
data test3;
    set test;
 
    if missing(var) then var2 = '';
    else var2 = compress(put(var, 8.));
run;

proc sql;
    select count(*) as miss_n
	from test3
	where var2 is missing;
quit;

  


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM