X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=tests%2Flanguage%2Fstats%2Flogistic.at;h=5f6232f7ca3fbd2b2c2a71f3f51224f0ac8c77c5;hb=f7bdeb7b76a65cb2da2dd0bceea30a526dba84da;hp=7db121338b9c2ac5741b3f892ad38af2d4572610;hpb=3cd65292e3cc6bd6532214dcc8c8ddc65bdc2972;p=pspp diff --git a/tests/language/stats/logistic.at b/tests/language/stats/logistic.at index 7db121338b..5f6232f7ca 100644 --- a/tests/language/stats/logistic.at +++ b/tests/language/stats/logistic.at @@ -1,4 +1,3 @@ - AT_BANNER([LOGISTIC REGRESSION]) dnl These examples are adapted from @@ -113,6 +112,15 @@ Table: Model Summary Step 1,-2 Log likelihood,Cox & Snell R Square,Nagelkerke R Square ,37.323,.455,.659 +Table: Classification Table +,,,Predicted,, +,,,outcome,,"Percentage +Correct" +,Observed,,1.000,2.000, +Step 1,outcome,1.000,43,5,89.583 +,,2.000,4,14,77.778 +,Overall Percentage,,,,86.364 + Table: Variables in the Equation ,,B,S.E.,Wald,df,Sig.,Exp(B) Step 1,survrate,-.081,.019,17.756,1,.000,.922 @@ -214,6 +222,12 @@ AT_CHECK([diff unweighted-result weighted-result], [1], [dnl < Total,66,100.000 --- > Total,63,100.000 +23,24c23,24 +< Step 1,outcome,1.000,43,5,89.583 +< ,,2.000,4,14,77.778 +--- +> Step 1,outcome,1.000,43.000,5.000,89.583 +> ,,2.000,4.000,14.000,77.778 ]) @@ -260,6 +274,15 @@ Table: Model Summary Step 1,-2 Log likelihood,Cox & Snell R Square,Nagelkerke R Square ,275.637,.008,.011 +Table: Classification Table +,,,Predicted,, +,,,female,,"Percentage +Correct" +,Observed,,.00,1.00, +Step 1,female,.00,0,91,.000 +,,1.00,0,109,100.000 +,Overall Percentage,,,,54.500 + Table: Variables in the Equation ,,B,S.E.,Wald,df,Sig.,Exp(B) Step 1,constant,.180,.142,1.616,1,.204,1.198 @@ -739,6 +762,15 @@ bcat,1.000,61,1,0,0 ,3.000,121,0,0,1 ,4.000,67,0,0,0 +Table: Classification Table +,,,Predicted,, +,,,y,,"Percentage +Correct" +,Observed,,4.000,9.000, +Step 1,y,4.000,254,19,93.040 +,,9.000,97,30,23.622 +,Overall Percentage,,,,71.000 + Table: Variables in the Equation ,,B,S.E.,Wald,df,Sig.,Exp(B) Step 1,b1,.002,.001,4.284,1,.038,1.002 @@ -998,6 +1030,15 @@ ses,a,47,1,0 ,b,95,0,1 ,c,58,0,0 +Table: Classification Table +,,,Predicted,, +,,,honcomp,,"Percentage +Correct" +,Observed,,.000,1.000, +Step 1,honcomp,.000,132,15,89.796 +,,1.000,26,27,50.943 +,Overall Percentage,,,,79.500 + Table: Variables in the Equation ,,B,S.E.,Wald,df,Sig.,Exp(B) Step 1,read,.098,.025,15.199,1,.000,1.103 @@ -1009,3 +1050,159 @@ Step 1,read,.098,.025,15.199,1,.000,1.103 ]) AT_CLEANUP + + +dnl Check that it doesn't crash if a categorical variable +dnl has only one distinct value +AT_SETUP([LOGISTIC REGRESSION identical categories]) + +AT_DATA([crash.sps], [dnl +data list notable list /y x1 x2*. +begin data +0 1 1 +1 2 1 +end data. + +logistic regression y with x1 x2 + /categorical = x2. +]) + +AT_CHECK([pspp -O format=csv crash.sps], [1], [ignore]) + +AT_CLEANUP + + +dnl Test that missing values on the categorical predictors are treated +dnl properly. +AT_SETUP([LOGISTIC REGRESSION missing categoricals]) + +AT_DATA([data.txt], [dnl + .00 3.69 .00 + .00 1.16 1.00 + 1.00 -12.99 .00 + .00 2.97 1.00 + .00 20.48 .00 + .00 4.90 .00 + 1.00 -4.38 .00 + .00 -1.69 1.00 + 1.00 -5.71 .00 + 1.00 -14.28 .00 + .00 9.00 .00 + .00 2.89 1.00 + .00 13.51 1.00 + .00 23.32 1.00 + .00 2.31 1.00 + .00 -2.07 1.00 + 1.00 -4.52 1.00 + 1.00 -5.83 .00 + 1.00 -1.91 .00 + 1.00 -11.12 1.00 + .00 -1.51 .00 + .00 6.59 1.00 + .00 19.28 1.00 + .00 5.94 .00 + .00 8.21 1.00 + .00 8.11 1.00 + .00 2.49 .00 + .00 9.62 .00 + 1.00 -20.74 1.00 + .00 -1.41 1.00 + .00 15.15 1.00 + .00 9.39 .00 + 1.00 -15.14 1.00 + 1.00 -5.86 .00 + 1.00 -11.64 1.00 + 1.00 -14.36 .00 + 1.00 -8.95 1.00 + 1.00 -16.42 1.00 + 1.00 -1.04 1.00 + .00 12.89 1.00 + .00 -7.08 1.00 + .00 4.87 1.00 + .00 11.53 1.00 + 1.00 -6.24 1.00 + .00 1.25 1.00 + .00 4.39 1.00 + .00 3.17 .00 + .00 19.39 1.00 + .00 13.03 1.00 + .00 2.43 .00 + 1.00 -14.73 1.00 + .00 8.25 1.00 + 1.00 -13.28 1.00 + .00 5.27 1.00 + 1.00 -3.46 1.00 + .00 13.81 1.00 + .00 1.35 1.00 + 1.00 -3.94 1.00 + .00 20.73 1.00 + 1.00 -15.40 .00 + 1.00 -11.01 1.00 + .00 4.56 .00 + 1.00 -15.35 1.00 + .00 15.21 .00 + .00 5.34 1.00 + 1.00 -21.55 1.00 + .00 10.12 1.00 + .00 -.73 1.00 + .00 15.28 1.00 + .00 11.08 1.00 + 1.00 -8.24 .00 + .00 2.46 .00 + .00 9.60 .00 + .00 11.24 .00 + .00 14.13 1.00 + .00 19.72 1.00 + .00 5.58 .00 + .00 26.23 1.00 + .00 7.25 .00 + 1.00 -.79 .00 + .00 6.24 .00 + 1.00 1.16 .00 + 1.00 -7.89 1.00 + 1.00 -1.86 1.00 + 1.00 -10.80 1.00 + 1.00 -5.51 .00 + .00 7.51 .00 + .00 11.18 .00 + .00 8.73 .00 + 1.00 -11.21 1.00 + 1.00 -13.24 .00 + .00 19.34 .00 + .00 9.32 1.00 + .00 17.97 1.00 + 1.00 -1.56 1.00 + 1.00 -3.13 .00 + .00 3.98 .00 + .00 -1.21 1.00 + .00 2.37 .00 + 1.00 -18.03 1.00 +]) + +AT_DATA([miss.sps], [dnl +data list notable file='data.txt' list /y x1 cat0*. + +logistic regression y with x1 cat0 + /categorical = cat0. +]) + +AT_CHECK([pspp -O format=csv miss.sps > file1], [0], [ignore]) + +dnl Append a case with a missing categorical. +AT_CHECK([echo '1 34 .' >> data.txt], [0], [ignore]) + +AT_CHECK([pspp -O format=csv miss.sps > file2], [0], [ignore]) + +AT_CHECK([diff file1 file2], [1], [dnl +8,10c8,10 +< Included in Analysis,100,100.00 +< Missing Cases,0,.00 +< Total,100,100.00 +--- +> Included in Analysis,100,99.01 +> Missing Cases,1,.99 +> Total,101,100.00 +]) + +AT_CLEANUP +