hello
code:
data data_in;
length Name $10;
/* without the line above, Name has length 8 */
set sashelp.class;
/* Name has length 10 - as expected */
run;
proc format ;
value $Name (multilabel)
"Alfred" = "Alfred"
"Alice" = "Alice"
"Alice" = "Aggr"
"Alfred" = "Aggr"
other = "other"
;
run;
proc summary nway data = data_in completetypes;
class Name / preloadfmt mlf;
var Weight;
format Name $Name.;
output out = data_out ( DROP = _TYPE_ _FREQ_) sum = ;
/* in data_out, Name has length 6, and NOT 10 ! */
run;
in data_in, Name has length 10. In data_out, Name has length 6.
Is there a way to force proc summary to MAINTAIN the length of the class variable?
thx
Create the format with a default length of 10.
Create the format with a default length of 10.
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!
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.