Thank you everyone @Reeza @Tom @ballardw @yabwon @PaigeMiller , I generated the following to achieve my goal.
data exdata;
input sex drug $;
datalines;
0 A
1 B
1 C
0 A
1 B
0 C
;
run;
proc contents data=exdata; run;
proc format;
value sex 0='Male' 1='Female';
run;
proc format;
value $drug 'A'='Drug A' 'B'='Drug B' 'C'='Drug C';
run;
data exdata_label; set exdata;
format sex sex. drug $drug.;
label sex = 'gender' drug = 'Type of Medication';
run;
proc sql;
create table part1 as
select name, label as label_var, type, format
from sashelp.vcolumn
where libname='WORK' and memname='EXDATA_LABEL';
quit;
proc format cntlout = format_data (keep=fmtname start label);
select sex $drug;
run;
data value; set format_data; name = lowcase(fmtname); drop fmtname; run;
proc sql;
create table var_info as
select a.name, b.label_var, a.start, a.label, b.type, b.format
from value as a
left join part1 as b
on a.name = b.name
order by name, start
;
quit;
... View more