Macro for Proc Freq and Proc Means

Posts: 44

Macro for Proc Freq and Proc Means

[ Edited ]

I would like to efficiently output frequencies, percent, and cumulative time for a number of categorical variables. 


My dataset variables include:

ID number

Many variables for genes with the prefix "rs", with three possible categories per variable

Case (1 or 0)

Years of follow-up per case

Death (1 or 0)


I would like my final output to look like this for each gene:


rs#:                       Cases # (% of total cases):    PYears:   Deaths # (% of total deaths):





My program to calculate Years for each gene and category:


proc sort data=analytic; by case rs1; run;

PROC MEANS DATA=analytic NWAY noprint;
  VAR Years ;
  by case rs1;
  OUTPUT OUT=survival SUM=PYears;


I would be grateful if someone could post a macro to do this efficiently since I have many genes to consider. 

Super User
Posts: 6,781

Re: Macro for Proc Freq and Proc Means

If you have a program that is working for one gene, it's just a hop, skip, and a jump away.  Right now  you are sorting/processing:


by case rs1;


Instead,  you can process:


by gene case rs1;

Super User
Posts: 23,754

Re: Macro for Proc Freq and Proc Means

For pre written macros search and clinical reports or summary tables. 

You'll find a ton of papers with detailed explanations. 

There's one that's a great reference: Creating Complex Reports by Cynthia Zender. 


FYI - as phrased, your question isn't coming across as help me do something I can't do, but can you please do my work? Obviously this is up to people how they respond to questions of this nature.

Ask a Question
Discussion stats
  • 2 replies
  • 3 in conversation