I am importing some CSV sheets with 60+ variables and the author used ? for missing values so they are imported as ?. How can I simply set all ?s to missing without having to write 60 if-thens?
Something like this.
data want;
set have;
array num_vars _numeric_;
array char_vars _character_;
do over num_vars;
if num_vars=? then call missing(num_vars);
end;
do over char_vars;
if char_vars='?' then call missing(char_vars);
end;
run;
Something like this.
data want;
set have;
array num_vars _numeric_;
array char_vars _character_;
do over num_vars;
if num_vars=? then call missing(num_vars);
end;
do over char_vars;
if char_vars='?' then call missing(char_vars);
end;
run;
Thanks. That works. The only problem is that num vars are assumed to be character var during import because of instances of ? in them.
Any thoughts how to turn them back to num var after correction?
Good news: We've extended SAS Hackathon registration until Sept. 12, so you still have time to be part of our biggest event yet – our five-year anniversary!
Check out this tutorial series to learn how to build your own steps in SAS Studio.
Find more tutorials on the SAS Users YouTube channel.
Ready to level-up your skills? Choose your own adventure.