Transcription of Some Tips and Examples for Using PROC TABULATE
1 A,2= B RUN;/*Combinetreatmentname(A/B)withtreat menttotal(N=)*//* ,theyarenotincludedintheotherexamples.* ;BYtitsuhj;RUN;DATA tmtf( );SETds_demo;BYtmtsuhj;LENGTSLABEL$8; ;tmtot+l;IFLJ+ ;START=tmt;LABEL=PUT(tmt,trot.)II~=:.#jM t!jTR~(LEFT(~tot))II,),;OUTPUT;FND;RUN;I *CreatetreatmentformatTMTFf4T*IPROCFOFJI ATCNTLIN=tmtf;RUN;TITLE1 ;TITLE2 UseN,MEAN,STD,MIN,andMAXS tatistics,;TITLE3 inPROCTABULATE,;PROCTABULATEDATA=ds_demo FOFJ4 CSAR= FABFACCCBCEB8 FECABCBBB X;/* ,consultSASmanual,2nded.,page134.*/CLASS trnt;VARagewt;TABLES(age=,Age(years),wt= Weight,)l(N=INI*F= Mean * SD *F= ,Min,*F= ,Max,* ),hnt= Treatment,/RTS=3o;RUN;output:TableExampl e1 UseN,MEAN,STD,MIN,andNAXS tatisticsinPROCTABULATET reatmentA(N=1O)B(N=1O)(years) :UsePROCUNIVARIATEforPre-ProcessingtoCal culateSummaryStatisticsTableShellforExam ple2:ITreatmentIIA(N=)]B(N=)1 Lge(years) #eightN9999\ ,thisexamplealsoaddsafewdatastepsandPROC FORMAT tolineupthestatisticsbythedecimalpoints, :PROCFORMAT;valuecollfmt21=IAge(Years)2= ,Weight,;valuec012fmt1= N 2=,Mean,3= SD 4.
2 ,MedianI5= Min 6= Max ;VALUE tint1=,A,2=,B,RUN;/*SeeExamle1forhowtocr eateformatTMTFMT*/%MACRO univs(var=);/*CalCulateUWIVAKIATE statistics*/PROCUNIVARIATEDATA=ds_demoNO PRINT;BYtmt;VAKwar;OUTPUTOUT= ;RUN;I*CreatevariableLABEL tolineUPdecimalpoints*lDATA&var(KEEp=c01 2tmtlabel);SETuniv;LENGTHLABEL$8;ARRAY sumnarynmeanstdmedianminmax;DOOVERSW?Z ;C012=_I_jIFC012in(1,5,6)TKBNLABEL=PwP( , );*N,Min,Max;ELSEIFC012in(2,4)TSBNLASEL. ~(summdry, );*Mean,Median; (sunrmmy, );*SD;ouTPuT;FND;RUN;%MFND univs;%univs(var=age)%univs(var=wt)DATA final;SETage(IN=a)Wt(IM=b);IFaTSEWCO1l=l ;*Age(Years); ;*Weight;START+l;FSTmME=IValuafI;RUN;/*C reatefonMtVALUEF* ( );RUM; ; ;RUN:TITLE1,TableExample2,;TITLE2 UsePROCUWIVARIATBforPre-Processing,;TITL E3,toCalculateN,MEAN,STD,MEDIAN,MIN,andM AX,; ,FABFACCCBCBB8 FECABCBBB,X;CLASSCoilC012trot; ;TAELBSCO1l= *c012=,,,tMt.
3 TTeatJIent *St~rt. L*SUM.,,* ,/RTS=32;RUN; ,pleasenotetheformatVALUEF1 OisusedtodisplayformatVALUEF using10characterspacesDataSetUsedinPROCT ABULATE:QBsTMTCOL1 COL211:11;;::. :102;14 ; ;61813:117.! +26:;792:::22:::::. :TableSxample2 UsePROCUNIVARIATEforPre-ProcessingtOCalC ulateN,MSAN,STD,MEDIAN,MIN,andMAXAge(Yea rs) :UsePROCUNIVARIATEandPROCFREQforPre-Proc essingtoCalculateSummaryStatistics,Inclu dingConfidenceIntervalsandP-ValuesTableS hellforExample3:TreatmentA(N=)B(N=)Age(Y ears) ( , )( , ) # $ ( , )( , ) # $ #p-valuewithintreatmentgroup.$ :PROCFORWAT;VALUS collfmt1=,Age(Years),2=,Weight, Nn2.
4 ,Mean,3= SD 4=5=6=7=8=9=,95%CI,,Median, Min8 Max P-Value#, P-ValueS SetUsedinPROCTABULATE:QBsTMTCOL1 COL2 PIC~Epvalue(ROUND)=,,(NOEDIT)Low-<.Ool=, < (NOEDIT).001-HIGH=, , A 2=,B,RUN;/*SeeExample1forhowtocreateform atTMTFNT*/%macrounivs(var=); ;BYtmt:VARWar;OUTPUTOUT= ! ;RUN;/*Getthe95%ConfidentIntervalofpopul ationmean*IDATA univl;SETuniv; + *(std/SQRT(n));ci_low= *(std/sqrt(n));RUN;IlGetbetweentreatment groupp-valuewiththevdnElterentest*IPROCF REQDATA=ds_demoNOPRINT;TABLEStmt*& ;OUTPUTOUT=Va(KEEP=P_CMHRMSRENAME=(p_CMh Y711S=CRlh))CMSPJfS; ;SETV~;tmt=l;*Placeallbetweengroupp-valu esundertreatmentgroupAcolumn;RUN;DATAall ;NERGE univlvanl;BYtmt;RUN;/*CreatevariableLASE L tolineupdecimalpoints*/DATA&var( );SETall;LENGTSLABEL$14ci8;ARRAY summarynmeanstdcimedianminmixpvalcmh;ci_ label=,(,I\PUT(ci_10w, )]] ,,IIPUT(ci_high, )[[),;COOVERS-IW:C012=_I_.
5 IFC012If4(1,6,7)TSENLABEL=PVT(sunmIary,7 .);*N,Min,Max;ELSEIFC012IN(2,5)TSBNLASEL =PUT(summary, );*Mean,Median;ELSEIFC012=3 THENLABEL=PUT(SDn unary, );*SD; ;*95%CI;ELSEIFC012IN(8,9) (summary,pvaluell.);*P valuewithinandbetweengroups;OUTPUT;END;R UN;%mendunivs;%univs( )%mivs( )DATA final;SETage(IN=a)wt(IN=b);IFaTSENCO1l=l ;*Age(Years); ;*Weight;START+l;mms.,valuef,;RON; (keep=STARTLABELFMTNAME); ;BYtmtCO1lC012;RUN;TITLE1,TableRxample,; TITLE3,UsePROCUNIVARIATEandPROCFREQforPr e-Processing,;TITLE4,toCalculateSummaryS tatisticsandP-Valuesi;FOOTNOTE1 #p-valuewithintreatmentgroup.,;FOOTNOTE2 ,$ ;1234567a1:11121314:;1718::2122232425262 7;::!
6 323334353611111111;2222222211i1111122222 2222:345;81;;:2223242526274:::14151617; ( , ) ( , ) ;:. ( , ) ( , ) StatisticsandP-valuesITreatmentA(N=1 OIB(N=1O)Age(Years) [II95%C1( , )( , ) # eightEEEsE!IMin6341 Max8575P-value# *p-valuewithintreatmentgroup.$ FABFACCCBCEB8 FECASCBBB)X;CLASSCoilC012tint;VARstart; ;TABLESCO1l=,,*c012=S,trot= Treatment!*start.,,*BUN=,,* :RUN;4 ReviewFortablesinvolvingonlysummarystati stics, ,thestatisticswithinPROCTABULATE wouldsuffice(seeExamples1and2).Todisplay otherstatistics( ,p-values,etc)ortoimprovetableappearance ,appropriateformatstatementsshouldbeused (seeExamples2and3).]
7 ExerciseTableShellforExercise:TreatmentA (N=)B(N=)ge(Years)N9999<189(99%)9(99%)18-649(99%)9(99%)>649(99%)9(99%) (99%)99(99%)IFemaleI99(99%)199(99%)1 igh E+%=&= :SASCode:PROCFORMAT;VALUE collfmt1=,Age(Years)2=,Sex,3= Weight ;VALUEc012fmt~=,;18,3=,18-644=a>64~5=,Ma le 6= Female 11= Me?.n~12= SD 13= Median 14= Min 15= Max ;VALVE agegrp0-<18=218-64=364<-high=4;VALUSsex1 =52=6;VALUStmt1= A 2=,B,;RON;/*SeeFz@ %),;LABEL=PUT(count, )II,(,ICO1l=l;*Age(Years);co12=INPUT(PIJ T(age,agegrp.), );RUN;/ Getthecountsofmale/femalebytreatment*IDA TAsex_m_f;MERGE sextottmtot(RENAMB.( ));BYtat;LENG IliLABEL$11;PUT((cmmt/denm)*100, )I[%),;LABEL=PuT(c0unt, )II,(,\C011=2;*sex; (PUT(sex,sex.))]
8 , );*Male/Female;RUN;PROCFREQDATA=ds_demo( WHERE=[SSSISNOTMISSING))NOPRINT; (DROp=pERcENT);RUN;/*Gettotalnumberofmal eandfmalebytreatment*IDATAsex_tot; ;LENGTHLABEL$11;LABEL=put(count, );C011=2;*sex;C012=1:*N:RUN;/*CalculateU NIVARIATE statistics*/%NACRO univs(var.);PROCUNIVARIATEDATA=ds_demoNO PRINT;BYtmt;VAR OUTPUTOUT=univN= ;RUN;DATA&var( );SETuniv;LBNGTSLABEL$11;ARRAY sunnnarynmeanstdmedianminmax;LX3 OVRRSUU ; ;*N; +9;*Mean,SD,Median,Min,Max;IFC012IN(1,14 ,15)TSEWLABEL=PUT(Summary, );*N,Min,Max;RLSEIFC012IN(11,13)TSSNLAEE L=PUT(sununary, );*Mean,Median;ELSEIFC012=12 TSSNLABEL=PUT(sunumarv, ),*SD,OUTPUT;END;RUN;%NBND univs;%univs( )%univs( )DATA univs;SETage( )Wt(IN=b);IFaTHENCO1l=l;*Age(Years); ;*Weight;RUN;DATA final;SETage_grpSeX_tOtSeX_m_fSTART+1;FM TNAMB.]
9 ,valuef,;RUN;..univs; (KEEP=STARTLABELFNTNAME); ;BYtintCO1lC012;RUN;TITLE1 TableExercise,;TITLE3,UsePROCUNIVARIATEa ndPROCFREQforPre-Processing,;TITLE4,toCa lculateSummaryStatistics,CountsandPercen tages8; ,FABFACCCBCEB8 FECABCBBB,X;CLASSCoilC012tmt;W+Rstart; ;TABLESCO1l=,~*c012=,,,trot= Treatment *Start. *BUM. *F=valuef11,/RTS=32;RUN;5 DataSetUsedinPROCTABULATE:!)ssTNTCOL1 COL21:4567:10i:131415161718H21;:24252627 282930313233343536output:1131;13$111:Ii1 121511316114171518;72:9263H31;2631227313 2831429315301191:435:11:2 :261233131;32312333133 43143531536 TableSxercise101(lo%)7(70%)2(20%) (40%)6(60%) (lo%)7(70%)2(20%) (30%)7(70%) maryStatistics,CountsandPercentagesTreat mentA(N=1O)B(N=1O)Age(Years)N1010<181(10%)1(lo%)18-647(70%)7(70%)>642(20%)2(20%)