In R, the function table
uses cross-classifying factors to construct a contingency table. Is there an equivalent SAS PROC that can reproduce the result of this R function?
Example:
x <- data.frame(x=rep(1:2,times=5),y=rep(1:2,each=5))
# output: x
# x y
#1 1 1
#2 2 1
#3 1 1
#4 2 1
#5 1 1
#6 2 2
#7 1 2
#8 2 2
#9 1 2
#10 2 2
table(x)
# output: table(x)
# y
#x 1 2
#1 3 2
#2 2 3
Yes,
You want to use Proc Freq.
Proc freq data=mydata;
table x; *gives table of single variable;
table x*y; *gives a crosstab;
by z; *will give multiple tables based on levels of z;
run;
3 examples.
Variables Diabetes_final and Diabetes where the second one was defined be a 1 if any of the subtypes of diabetes were defined.
PROC FREQ DATA=ADS_R;
TABLE DIABETES_FINAL;
TABLE DIABETES;
TABLE DIABETES_FINAL*DIABETES;
TABLE DIABETES_FINAL*DIABETES/MISSPRINT LIST MISSING; ***SYNTAX FOR STRIPPED DOWN TABLE;
RUN;