Hi,
I am doing project about how affect meals on blood glucose.
I have following code:
DATA glucose;
infile 'E:\GLUCOSE.DAT' EXPANDTABS;
input id g1-g10;
tm=int((_n_-1)/6)+1;
run;
DATA missqlucose;
SET glucose;
if g9=-1 then g9=.;
if g10=-1 then g10=.;
run;
PROC plot data=missqlucose (firstobs = 1 obs = 6);
run;
DATA glucose1;
set missqlucose (firstobs = 1 obs = 6);
run;
PROC TRANSPOSE data=glucose1 out=gtrans1 name=time prefix=p;
VAR g1-g10;
run;
PROC PRINT DATA= gtrans1;
run;
Now i need to make one plot of the separate tm class means across gk, where k is from 1:10 (in other words, for g1 g2 g3....g10)
P.S. i attached fili that in infile (see above), just change *.txt to *.dat
Hello,
If you just want the mean then you can use the vbar statement in Proc SGPLOT. Below is the code that you can use to get this. I wasn't sure if you wanted means of g1-g10 or means of p1-p6, but you can adjust the code accordingly.
PS, it may be useful to see the variation in the data, so you could also look at doing a boxplot. or plotting the mean and confidence intervals.
proc sort data = gtrans1;
by time;
run;
proc transpose data = gtrans1 out = gtrans_stacked;
var p1 - p6;
by time;
run;
proc sgplot data = gtrans_stacked;
vbar _NAME_ / response = COL1 stat= mean;
run;
Hi,
Thank you for code. How to put values of means next to each bar on that graph?
Don’t miss the livestream kicking off May 7. It’s free. It’s easy. And it’s the best seat in the house.
Join us virtually with our complimentary SAS Innovate Digital Pass. Watch live or on-demand in multiple languages, with translations available to help you get the most out of every session.
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.
Ready to level-up your skills? Choose your own adventure.