BookmarkSubscribeRSS Feed
🔒 This topic is solved and locked. Need further help from the community? Please sign in and ask a new question.
Luigim
Calcite | Level 5
Hi everybody,
I have a data set containing 35 categorical variable that I want to test with other 33 dichotomous variables using chi squred test. If I run
Proc freq data=mydata;
Table = c_: * d_: / chisq;
Run;
It works but i was struggling how to create a simple output data set with just three information: the two variables used in every test and the pchi.

Thanks everybody in advance
1 ACCEPTED SOLUTION

Accepted Solutions
PGStats
Opal | Level 21

Use ODS OUTPUT to get the table :

 

ods listing select none;
proc freq data=sashelp.heart;
table (status sex) * (chol_status bp_status weight_status) / chisq;
ods output ChiSq=outChiSq;
run;
ods listing;

proc sql;
create table myChiSq as
select 
    scan(Table,2) as v1 length=32, 
    scan(Table,3) as v2 length=32, 
    df, 
    value, 
    prob
from outChiSq
where statistic="Chi-Square"
order by v1, v2;
select * from myChiSq;
quit;

Note : You need parentheses around the variable lists in the TABLES statement.

PG

View solution in original post

3 REPLIES 3
PGStats
Opal | Level 21

Use ODS OUTPUT to get the table :

 

ods listing select none;
proc freq data=sashelp.heart;
table (status sex) * (chol_status bp_status weight_status) / chisq;
ods output ChiSq=outChiSq;
run;
ods listing;

proc sql;
create table myChiSq as
select 
    scan(Table,2) as v1 length=32, 
    scan(Table,3) as v2 length=32, 
    df, 
    value, 
    prob
from outChiSq
where statistic="Chi-Square"
order by v1, v2;
select * from myChiSq;
quit;

Note : You need parentheses around the variable lists in the TABLES statement.

PG
Luigim
Calcite | Level 5

This is great! Thank you so much!

PGStats
Opal | Level 21

You are welcome. Please mark answer as accepted solution.

PG

Ready to join fellow brilliant minds for the SAS Hackathon?

Build your skills. Make connections. Enjoy creative freedom. Maybe change the world. Registration is now open through August 30th. Visit the SAS Hackathon homepage.

Register today!
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
  • 3 replies
  • 972 views
  • 1 like
  • 2 in conversation