我编写了以下代码,其中包含
等警告NOTE: Invalid numeric data, secdiags='V4975' , at line 68 column 6.
NOTE: Invalid numeric data, secdiags='V4589' , at line 68 column 6.
NOTE: Invalid numeric data, secdiags='V146' , at line 68 column 6"
由于这些警告,具有这些值的记录将从最终输出中删除。 我应该怎么做才能保留这些值?
Diag1,diag2,diag3 ... diagN列是char列,其值为 V4965 V4966 V4967 V520 3536 9059 99760 99761 99762
Data work.temp1 ;
set work.nocabg;
array secdiaggg {*} diag: ;
array diag{*} diag:;
LENGTH j 3.;
j = 1;
/* put diag1= diag2 = diag3= diag[n]= into 1 code per line.*/
do until ( j > dim(secdiaggg));
secdiags = diag[j]; /* Creates new CHAR column name secdiags */
j = j + 1;
IF secdiags NE . THEN OUTPUT;; /* This put each Diag code on a separate line for the patient. */
end;
掉落j; 运行;
答案 0 :(得分:1)
我不知道为什么你有两个相同变量的数组(secdiaggg
和diag
),但你可能会遇到这一行的问题:
IF secdiags NE . THEN OUTPUT;;
.
缺少数字。 secdiags
是个性格。所以你想要
IF secdiags NE ' ' THEN OUTPUT;
或者,更好:
if not missing(secdiags) then output;
因为missing
函数同等地测试。