I have an interesting case where all values of -5 in my dataset should be set to missing. I don't want to have to do this for every variable separately, is there way to recode all instances of -5 in the dataset as missing or .S? Any help would be greatly appreciated. This came about from the way a QDS interview was programmed for skipped questions. Thank you in advance!
At this point you may want something like:
data want;
set have;
array n _numeric-;
do _i_=1 to dim(n);
if n[_i_] = -5 then n[_i_] = .;
end;
run;
At this point you may want something like:
data want;
set have;
array n _numeric-;
do _i_=1 to dim(n);
if n[_i_] = -5 then n[_i_] = .;
end;
run;
Do I have to assign the array for all of my variables? I am a little confused by your code, whar does the n_numeric refer to? I was able to get the code to run but it did not do anything to the -5. Thank you for your reply!
looks like just a typo in ballardw's suggestion.
It should be:
array n _numeric_ ;
n is the name of the array.
_numeric_ is a special name meaning "all numeric variables".
I think your initial thought to use .S intead of . also has merit.
I just noticed the typo and got it to run, I used .S and everything seemed to work correctly. Thank you all for your suggestions.
April 27 – 30 | Gaylord Texan | Grapevine, Texas
Walk in ready to learn. Walk out ready to deliver. This is the data and AI conference you can't afford to miss.
Register now and lock in 2025 pricing—just $495!
Still thinking about your presentation idea? The submission deadline has been extended to Friday, Nov. 14, at 11:59 p.m. ET.
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.