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

I have been implementing several techniques to address this issue, but I need some help. I am trying to predict students success based on the number of years in high school.  Please see below clarification of my initial post. Number of years is dichotomized 1 = 3years and 2= 4 years. The response variable is ordered based on the 1 to 5, with 5 being the highest level of success. I also have type of school attended which is dichotomized top tier = 1 and lower tier = 2. I also have gender, male and female. The sample size is 56000 representing 24 schools, which randomly selected from 400 schools. So this is what I have:

 

Predictor = number of years (coded 1 and 2)

Outcome = Admissibility to university (coded 1 – 5)

Gender = (female and Male, coded 1 and 2)

School Type (A and B, coded 1 and 2)

 

Run Ordinal Logistics see SAS code and output below:

 

 

ODS LISTING CLOSE;

  ods graphics on;

  ODS RTF FILE = '\\Client\C$\SHS_DATA_CURRENT\LOGIT_YEARS.RTF';

   proc logistic data=SHS plots(only)=(effect(polybar)oddsratio(range=clip))DESCENDING;

      class YEARS(param=ref ref= "4YEARS");

           WHERE YEARS NE ('3N4YEARS');

      model ACCEPT=YEARS / SCALE=NONE AGGREGATE covb;

      oddsratio YEARS ;

           ODDSRATIO ACCEPT; 

           OUTPUT OUT=PREDICTED2 PRED=PRED;

      title PREDICTING STUDENT ADMISSIBILITY TO UNIV. BASED ON YEARS IN HIGH SCHOOL;

   run;

   ods rtf close;

   ods graphics off;

   ods listing;

 

The Problem I am having is the PO assumption is not held ---please see my print out.

 

I have also tried other suggested techniques such as empirical test of parallelism of my variables – see sample code below and out on document

 

proc freq data=SHS;

     table ACCEPT*YEARS / out=os;

WHERE NOT MISSING(ACCEPT);

     run;

 

 PROC SORT DATA = OS; 

BY YEARS;

RUN;

   proc transpose data=os(WHERE=(YEARS NE '3N4YEARS')) out=tran;

     by YEARS; var count;

     run;

 

   data a; set tran;

     const=0;

     c1=log((sum(of col1-col1)+const)/(sum(of col2-col5)+const));

     c2=log((sum(of col1-col2)+const)/(sum(of col3-col5)+const));

     c3=log((sum(of col1-col3)+const)/(sum(of col4-col5)+const));

     c4=log((sum(of col1-col4)+const)/(sum(of col5-col5)+const));

   run;

 

     ODS RTF FILE = '\\Client\C$\SHS_DATA_CURRENT\LOGIT_YEARS.RTF';

   TITLE 'EMPIRACAL PLOTS OF ACCEPT ON YEARS';

   proc sgplot;

     series y=c1 x=YEARS; 

     series y=c2 x=YEARS;

     series y=c3 x=YEARS;

     series y=c4 x=YEARS;

     yaxis values=(-6 to 6);

     xaxis integer;

     run;

 

My question what do I do next. Is this the end of my analysis. Should I continue interpreting my results based on the fact that the lines are parallel?

 

Any help will  be appreciated.

 

 

 


 

 

1 ACCEPTED SOLUTION

Accepted Solutions
mkeintz
PROC Star

Instead of "follow-up to previous question", how about making a subject line that actually describes the question?

--------------------------
The hash OUTPUT method will overwrite a SAS data set, but not append. That can be costly. Consider voting for Add a HASH object method which would append a hash object to an existing SAS data set

Would enabling PROC SORT to simultaneously output multiple datasets be useful? Then vote for
Allow PROC SORT to output multiple datasets

--------------------------

View solution in original post

1 REPLY 1
mkeintz
PROC Star

Instead of "follow-up to previous question", how about making a subject line that actually describes the question?

--------------------------
The hash OUTPUT method will overwrite a SAS data set, but not append. That can be costly. Consider voting for Add a HASH object method which would append a hash object to an existing SAS data set

Would enabling PROC SORT to simultaneously output multiple datasets be useful? Then vote for
Allow PROC SORT to output multiple datasets

--------------------------

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!

What is ANOVA?

ANOVA, or Analysis Of Variance, is used to compare the averages or means of two or more populations to better understand how they differ. Watch this tutorial for more.

Find more tutorials on the SAS Users YouTube channel.

Discussion stats
  • 1 reply
  • 1198 views
  • 0 likes
  • 2 in conversation