I need to change non missing observations into "X" and keep missing as '.'
I used the below code
data fin(drop=i);
set qs2;
array nvar(i) _numeric_;
do i= 1 to dim(nvar);
if nvar(i) ne . then nvar(i)= 'X';
end;
run;
But as the values are numeric and i am converting them as character i get an error.
Can there be any other way in arrays to do
Hello,
You can use a format :
proc format;
value X .='.'
other='X';
run;
proc print data=sashelp.class;
var _NUMERIC_;
format _NUMERIC_ X.;
run;
Hello,
You can use a format :
proc format;
value X .='.'
other='X';
run;
proc print data=sashelp.class;
var _NUMERIC_;
format _NUMERIC_ X.;
run;
Do not however, that doesn't "change" the results, only displays them differently. If you really want to "change" the data, then convert the column to character and then the replace should work fine
It's finally time to hack! Remember to visit the SAS Hacker's Hub regularly for news and updates.
Learn how use the CAT functions in SAS to join values from multiple variables into a single value.
Find more tutorials on the SAS Users YouTube channel.
Ready to level-up your skills? Choose your own adventure.