How do I program to use the field value as column heading, instead of decoded value?
Code below makes columns with FATESTCD DECODED values as its column heading:
PROC TRANSPOSE DATA=JR.CTYPE OUT=JR.CTYPE_TR(DROP=_NAME_ _LABEL_);
BY USUBJID;
ID C_TYPE;
VAR FATESTCD;
RUN;
How do I change the program, so the column headings take on the field value, instead of the decoded value?
Thank you very much in advance!
zz
ID is what's used to specify the variable name. I'm not sure what you mean about coded and decoded value.
You can also use IDLABEL to specify a label.
It would help to provide some example input data and what you expect.
Since what you are looking at are not "headers" but variable names you may not be able to have the value as a variable name unless the value follows the SAS rules for variable names: starts with a letter or _ character, contains only letters, digits and _, and the length is 32 or fewer characters. Or you get to play around with nonstanrd varaible names that means you spend a lot of time adding ' 'n to most if not all of the variable names when used in code.
There are ways to get close but everything not a numeral, letter or _ will become _.
Are you ready for the spotlight? We're accepting content ideas for SAS Innovate 2025 to be held May 6-9 in Orlando, FL. The call is open until September 25. Read more here about why you should contribute and what is in it for you!
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.