I exported a data set to SPSS. Had to change
proc format; value degree 1=GOOD 2-5=POOR; run;
into
proc format; value degree 1=GOOD 2=POOR 3=POOR 4=POOR 5=POOR; run;
in order to get the formatted variable displayed correctly in SPSS. Any clue why ?
I used
proc export data=sasuser.hernior(keep=(patient age PSTAT LOS)) outfile='p:\public_html\SPSS\hernior.sav' dbms=spss replace; run;
(dbms=sav does not change results).
I think that PROC EXPORT does not know how to translate ranges of values into the individual records. Either SPSS does not support applying the same "label" (decode) to multiple values, or PROC EXPORT doesn't know how to generate that syntax.
Part of the problem is that to SAS 2-5 includes ALL values from 2 to 5, not just the integer values you used in your second format. So a value like 2.5 or 4.3 would also be displayed as POOR.
You can save yourself some typing:
proc format;
value degree 1='GOOD' 2,3,4,5='POOR';
run;
I think that PROC EXPORT does not know how to translate ranges of values into the individual records. Either SPSS does not support applying the same "label" (decode) to multiple values, or PROC EXPORT doesn't know how to generate that syntax.
Part of the problem is that to SAS 2-5 includes ALL values from 2 to 5, not just the integer values you used in your second format. So a value like 2.5 or 4.3 would also be displayed as POOR.
You can save yourself some typing:
proc format;
value degree 1='GOOD' 2,3,4,5='POOR';
run;
Thank you for the reply
SAS Innovate 2025 is scheduled for May 6-9 in Orlando, FL. Sign up to be first to learn about the agenda and registration!
Learn the difference between classical and Bayesian statistical approaches and see a few PROC examples to perform Bayesian analysis in this video.
Find more tutorials on the SAS Users YouTube channel.
Ready to level-up your skills? Choose your own adventure.