The SAS Output Delivery System and reporting techniques

Printing var name & label w Proc Print

Reply
Occasional Contributor
Posts: 5

Printing var name & label w Proc Print

Hi!

Is it possible to print variable names and labels at the same time in Proc Print? I have lots and lots of variables to print.

Thank you!
Regular Contributor
Posts: 236

Re: Printing var name & label w Proc Print

Occasional Contributor
Posts: 5

Re: Printing var name & label w Proc Print

Does this solution requires that I name every variable?  Or is the "name" in your example a dictionary lookup keyword?  ie How do I get this to work on all my variables in the dataset (1743 of them).

 

Thank you!

Joyce

Grand Advisor
Posts: 10,211

Re: Printing var name & label w Proc Print

"Name" and "Label" are variables in the dictionary.columns table.

Note the the Libname and Memname are all uppercase in the dictionary table. If you use Libname='Work' it fails as the libname is "WORK" in the table.

SAS Super FREQ
Posts: 8,720

Re: Printing var name & label w Proc Print

Hi:
A PROC PRINT on 1743 variables is going to be VERY, VERY wide output. What is your destination of interest. This is going to be too wide for the LISTING window and PDF and RTF outputs will both "wrap" if you are going to use ODS. It is likely that ODS HTML is going to be the only destination to handle this many variables on a report.

(My .02)
cynthia
Regular Contributor
Posts: 236

Re: Printing var name & label w Proc Print

[ Edited ]

It is not necessary that all variables in dataset should have label. This solution would print label if available.

 

In the below table, provide libname and table to the macro variables and rest of the code should work itself.

 

%let _libname=;
%let _table=;

proc sql noprint;
select catt( name,'=',quote( catt(label,' (',name,')') ) )
into : embed_names_into_labels separated by ' '
from dictionary.columns
where libname="&_libname" and memname="&_table" and not missing(label);
quit;

 

But above reply has a point that saying why do you need such a wide report.

data temp / view = temp;
set &_libname..&_table;
label &embed_names_into_labels;
run;

proc print data=temp label; run;

Occasional Contributor
Posts: 5

Re: Printing var name & label w Proc Print

Yes. That would be a hard output to use! I am printing groups of variables. Similar to survey the data is gathered from into an excel spreadsheet; not all at one time! It's formatted and grouped as the survey. Thank you!
Ask a Question
Discussion stats
  • 6 replies
  • 362 views
  • 0 likes
  • 4 in conversation