BookmarkSubscribeRSS Feed
🔒 This topic is solved and locked. Need further help from the community? Please sign in and ask a new question.
majdi_ka
Obsidian | Level 7

Hi,

 

with proc tabulate I have this output :

 

  mean median
Age 30 25
Revenue 2700 2600

 

and what I want to have is this form :

Age mean 30
  median 25
Revenue mean 2700
  median 2600

 

Is this possible? 

 

Thanks

1 ACCEPTED SOLUTION

Accepted Solutions
majdi_ka
Obsidian | Level 7

Based on your previous post, I edited the code because I have only numeric variables :

 

PROC TABULATE
DATA=SASHELP.CLASS
	
	;
	VAR Height Age;
	TABLE 
		/* ROW Statement */
		Height * Mean={LABEL="Mean"} Height={LABEL=""} * Median={LABEL="Median"} 
		Age * Mean={LABEL="Mean"} Age={LABEL=""} * Median={LABEL="Median"} ,
		/* COLUMN statement */
		ALL=' ' 		;
	;

RUN;

And I have the result that I want Man Very Happy :

 

Height Mean 62.34
  Median 62.80
Age Mean 13.32
  Median 13.00

 

What I looked for is the " , ALL=' '  " 

 

Thanks a lot @Reeza!

View solution in original post

6 REPLIES 6
Reeza
Super User
Yes, change your table statement. If you post your code, someone can suggest the change from the current code.
majdi_ka
Obsidian | Level 7

@Reeza,

OK, it's a simple code:

 

proc tabulate data=have;
  var age revenue;
  tables
     /*line*/
     age
     revenue,

     /*column*/
     (mean median);
run;

      

 

MK

Reeza
Super User
What does the following give you:

tables (age revenue)*(mean median);
majdi_ka
Obsidian | Level 7

it gives a vertical summary table like this :

 

Age Revenue
mean median mean median
Reeza
Super User
PROC TABULATE
DATA=SASHELP.CLASS
	
	;
	
	VAR Height;
	CLASS Sex /	ORDER=UNFORMATTED MISSING;
	CLASS Age /	ORDER=UNFORMATTED MISSING;
	TABLE 
		/* ROW Statement */
		Sex *Age  *(Height * Mean={LABEL="Average"} Height * Median={LABEL="Median"} ),
		/* COLUMN statement */
		ALL=' ' 		;
	;

RUN;
majdi_ka
Obsidian | Level 7

Based on your previous post, I edited the code because I have only numeric variables :

 

PROC TABULATE
DATA=SASHELP.CLASS
	
	;
	VAR Height Age;
	TABLE 
		/* ROW Statement */
		Height * Mean={LABEL="Mean"} Height={LABEL=""} * Median={LABEL="Median"} 
		Age * Mean={LABEL="Mean"} Age={LABEL=""} * Median={LABEL="Median"} ,
		/* COLUMN statement */
		ALL=' ' 		;
	;

RUN;

And I have the result that I want Man Very Happy :

 

Height Mean 62.34
  Median 62.80
Age Mean 13.32
  Median 13.00

 

What I looked for is the " , ALL=' '  " 

 

Thanks a lot @Reeza!

sas-innovate-2024.png

Join us for SAS Innovate April 16-19 at the Aria in Las Vegas. Bring the team and save big with our group pricing for a limited time only.

Pre-conference courses and tutorials are filling up fast and are always a sellout. Register today to reserve your seat.

 

Register now!

How to Concatenate Values

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.

Click image to register for webinarClick image to register for webinar

Classroom Training Available!

Select SAS Training centers are offering in-person courses. View upcoming courses for:

View all other training opportunities.

Discussion stats
  • 6 replies
  • 1225 views
  • 2 likes
  • 2 in conversation