Online File
Rick Aster: Professional SAS Programming Shortcuts: Contents
PROC SORT DATA=COUNTY NODUPKEY; BY COUNTY; RUN; * Create control dataset for value informat $COUNTY *; DATA CNTL1; LENGTH TYPE $ 1 FMTNAME $ 8 START $ 10 LABEL $ 8 HLO $ 4; RETAIN TYPE 'J' FMTNAME '$COUNTY' HLO 'UJ '; SET COUNTY (KEEP=COUNTY RENAME=(COUNTY=START)) END=LAST; START = UPCASE(START); LABEL = PUT(_N_, S370FPIB1.); OUTPUT; IF LAST THEN DO; * Missing value. ; START = ' '; LABEL = '00'X; OUTPUT; * Invalid value. ; START = ' '; LABEL = 'FF'X; HLO = 'UJO '; OUTPUT; END; RUN; * Create control dataset for value format $COUNTY *; DATA CNTL2; LENGTH TYPE $ 1 FMTNAME $ 8 START $ 1 LABEL $ 10 HLO $ 1; RETAIN TYPE 'C' FMTNAME '$COUNTY'; SET COUNTY (KEEP=COUNTY RENAME=(COUNTY=LABEL)) END=LAST; START = PUT(_N_, S370FPIB1.); OUTPUT; IF LAST THEN DO; * Missing value. ; START = '00'X; LABEL = ' '; OUTPUT; * Invalid value. ; START = ' '; LABEL = '(|$HEX2.|)'; HLO = 'O'; OUTPUT; END; RUN; * Create value informat $COUNTY from control dataset *; PROC FORMAT CNTLIN=CNTL1 LIBRARY=LIBRARY; RUN; * Create value format $COUNTY from control dataset *; PROC FORMAT CNTLIN=CNTL2 LIBRARY=LIBRARY; RUN;