0
$\begingroup$

I recently saw a question on cross-validated which I wanted to double-check. The statement said that the following two outputs should be equal:

  1. Running a multivariate regression on non-standardised data and saving the standardised beta coefficients using the STB command

  2. Running a multivariate regression on standardised data (mean = 0 and std. deviation = 1) and saving the beta coefficients as normal.

I ran the following code and found the following results

DATA baseball_1;
     SET sashelp.baseball;

     IF logsalary > 6.5 THEN flag = 1;
     ELSE flag = 0;

     KEEP flag CrAtBat CrBB CrHits CrHome;
RUN;

PROC STDIZE
     DATA=baseball_1
     OUT=baseball_1_n
     ;
     VAR cr:;
RUN;

     PROC LOGISTIC DESCENDING
           DATA=baseball_1_n
           PLOTS(ONLY)=NONE;
           MODEL FLAG (Event = '1') = cr:
           /
           SELECTION=NONE
                CTABLE
                PPROB=(0.01 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 0.99)
                LINK=LOGIT
           ;
           OUTPUT OUT = FITTED_MODEL_0           
           PREDICTED  = Y_HAT_0
           PREDPROBS  = INDIVIDUAL;
     RUN;
     QUIT;

DATA baseball_2;
     SET sashelp.baseball;

     IF logsalary > 6.5 THEN flag = 1;
     ELSE flag = 0;

     KEEP flag CrAtBat CrBB CrHits CrHome;
RUN;

     PROC LOGISTIC DESCENDING
           DATA=baseball_2
           PLOTS(ONLY)=NONE;
           MODEL FLAG (Event = '1') = cr:
           /
           STB
           SELECTION=NONE
                CTABLE
                PPROB=(0.01 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 0.99)
                LINK=LOGIT
           ;
           OUTPUT OUT = FITTED_MODEL_0           
           PREDICTED  = Y_HAT_0
           PREDPROBS  = INDIVIDUAL;
     RUN;
     QUIT;

Output from baseball_1_s

    Intercept    (Blank - No result)
    CrAtBat      -3.3483
    CrHits       3.8968
    CrHome       0.0816
    CrBB         0.0254

Output from baseball_2

    Intercept    -2.2857
    CrAtBat      -36.2205
    CrHits       45.5733
    CrHome       0.9003
    CrBB         0.2619

My questions are:

1). Why are the outputs not the same 2). Why don't the coefficients add up to 1?

$\endgroup$
  • $\begingroup$ It's usually a good idea to provide access to your input datasets. Also, I don't see anywhere in your code where you are running "multivariate regression" as you indicated in your question text. Nor do I see "output from baseball_2." $\endgroup$ – StatsStudent Feb 24 at 20:47
  • $\begingroup$ I use the sashelp baseball dataset to make an example The output from baseball_2 must have slipped out, that was an accident $\endgroup$ – user235111 Feb 25 at 8:06
  • $\begingroup$ @statsstudent I have corrected the output $\endgroup$ – user235111 Feb 27 at 8:25

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.