%let digit=1; data digits; input x1 x10 digit; digit_&digit = (digit ne &digit); id=1; ** Using ne helps because LOGISTIC gives Pr{Y=0}; ** Thus we really get Pr{digit=&digit} on the graph; datalines; 70 49 1 3 78 7 79 66 9 92 78 9 58 65 9 91 75 9 5 79 7 0 0 7 27 14 1 77 50 9 0 74 1 2 25 1 79 61 9 0 9 7 0 0 7 0 75 1 96 56 9 22 12 1 88 47 1 70 83 9 88 67 9 53 11 1 0 35 1 100 62 9 76 74 9 100 43 1 27 9 1 95 80 9 0 0 7 99 57 9 0 0 7 8 0 7 15 24 1 0 0 7 80 54 9 45 9 1 100 43 1 100 43 1 0 0 7 0 0 7 8 0 7 23 0 7 7 1 1 0 3 7 18 20 1 0 79 7 9 74 1 0 41 7 0 32 1 0 62 1 87 54 9 0 72 1 87 50 9 62 53 9 0 68 1 64 71 9 100 44 1 0 27 1 0 0 7 18 0 1 100 63 9 0 75 1 0 6 7 100 45 1 12 78 7 73 60 9 0 35 1 0 0 7 0 0 7 2 81 9 0 0 7 1 66 9 23 66 9 100 48 1 0 8 7 0 81 9 88 64 9 0 29 1 7 0 7 79 50 1 0 30 1 95 55 9 0 29 1 0 0 7 0 0 7 4 6 1 0 6 7 100 45 1 0 0 7 30 68 9 0 36 7 31 52 9 0 0 7 32 0 7 0 0 7 0 0 7 0 0 7 81 59 9 0 0 7 0 7 7 4 8 1 0 70 9 0 0 7 0 66 1 100 85 9 21 18 1 78 60 9 0 25 7 12 0 7 0 0 7 0 75 1 6 0 7 87 80 9 0 0 7 0 76 1 0 7 7 5 0 1 0 71 1 19 0 7 0 96 1 13 78 9 0 75 1 0 38 7 0 0 7 6 79 9 0 30 7 0 13 7 23 12 1 0 27 7 97 91 9 30 75 9 0 0 7 72 83 9 0 13 7 72 79 9 0 0 7 100 43 1 91 77 9 6 73 7 30 23 1 84 81 9 0 69 9 0 0 7 0 27 1 0 13 1 0 0 7 0 33 7 44 58 9 0 73 1 0 75 1 67 66 9 100 47 1 0 28 1 100 80 9 0 10 7 0 74 1 72 57 9 0 0 7 75 84 9 83 58 9 0 0 7 84 55 9 2 79 7 0 0 7 0 83 7 4 8 1 100 76 9 0 0 7 0 6 7 58 70 9 0 0 7 92 75 9 28 0 7 0 0 7 42 73 9 0 52 1 75 64 9 27 3 1 6 74 7 80 77 9 100 81 9 85 69 9 14 97 7 17 0 7 51 70 9 0 0 7 0 5 7 0 60 1 72 72 9 67 97 9 76 46 1 0 0 7 0 78 1 85 71 9 0 0 7 0 27 1 0 76 7 0 25 7 12 0 7 0 0 7 70 50 9 0 17 7 0 32 1 6 0 7 0 0 7 0 0 7 0 25 1 0 0 7 2 0 7 0 0 7 8 75 7 12 77 7 0 37 7 13 60 1 0 0 7 14 0 1 27 12 1 0 73 7 0 13 1 0 93 1 0 75 1 0 0 7 74 70 9 76 74 9 79 61 9 100 79 9 63 52 1 0 0 7 100 72 9 0 74 1 0 34 1 0 0 7 83 76 9 0 0 7 0 0 7 22 63 9 44 51 1 27 0 7 100 41 1 11 78 7 100 43 1 0 75 1 13 3 1 55 10 1 0 0 7 0 70 7 0 100 1 71 60 9 90 61 9 0 34 7 93 56 9 100 45 1 62 64 9 0 75 1 28 71 9 11 0 7 0 97 1 0 74 1 3 0 7 15 95 7 0 0 7 100 84 9 100 74 9 12 19 1 84 86 9 0 0 7 0 71 1 17 0 1 2 0 7 0 24 1 42 87 9 70 52 9 0 72 9 23 93 7 77 56 9 13 88 7 0 32 1 0 32 1 54 55 9 0 75 1 0 61 1 27 6 1 0 79 1 0 60 1 77 63 9 100 50 1 0 75 1 20 0 1 53 67 9 100 44 1 0 74 1 28 0 7 0 27 1 78 80 9 6 0 7 97 68 9 0 77 9 38 7 1 0 75 1 0 23 1 97 86 9 8 11 1 65 72 9 0 75 1 0 73 9 86 62 9 0 75 1 9 21 1 0 74 1 0 0 7 25 100 7 0 0 7 0 63 1 12 74 9 70 68 9 0 0 7 0 68 1 0 0 7 8 0 7 23 86 1 41 79 9 90 80 9 0 25 1 0 0 7 0 88 1 0 5 7 73 81 9 0 0 7 100 64 9 0 0 7 0 64 1 2 0 7 0 41 7 100 58 1 100 47 1 100 71 9 100 80 9 0 74 1 0 27 1 0 74 1 0 43 1 0 0 7 76 69 9 0 73 7 54 53 9 100 86 9 50 60 9 0 35 7 0 0 7 2 0 7 18 69 9 0 0 7 0 59 1 0 75 1 0 77 1 90 62 9 0 0 7 0 0 7 55 74 9 7 45 7 5 0 7 0 0 7 0 28 1 0 61 1 100 42 9 0 23 7 53 60 9 1 26 1 0 19 7 0 25 7 0 75 1 14 2 1 6 26 1 81 65 9 0 23 1 33 19 1 0 13 7 68 43 9 76 55 9 25 0 7 100 40 9 25 5 1 0 4 7 100 46 1 0 32 7 0 0 7 100 45 1 1 1 1 0 0 7 0 0 7 0 0 7 0 10 7 16 89 7 0 26 7 100 67 9 8 70 7 0 0 7 42 69 9 15 7 1 13 24 1 12 60 1 6 76 7 80 52 9 0 27 1 0 7 7 24 76 1 0 0 7 48 53 9 78 73 9 0 19 7 65 70 9 23 26 1 22 83 7 23 0 1 0 6 7 0 100 1 0 75 1 0 0 7 100 73 9 74 68 9 5 0 7 3 0 7 100 45 1 100 85 9 0 0 7 25 43 9 0 35 7 12 0 7 0 40 7 0 100 1 21 11 1 81 71 9 37 85 9 100 49 1 0 0 7 0 29 1 61 67 9 5 0 7 0 77 1 72 83 9 99 68 9 0 0 7 74 84 9 82 79 9 0 99 1 67 50 1 59 59 9 0 8 1 0 34 1 6 0 7 4 15 1 56 91 9 98 70 9 66 64 9 0 75 1 0 0 7 24 13 1 18 0 7 0 0 7 93 75 9 0 28 7 20 25 1 11 39 7 94 82 9 81 70 9 10 0 7 0 8 7 0 11 7 0 0 7 100 69 9 3 22 1 77 52 9 96 56 9 96 64 9 78 80 9 15 0 7 0 0 7 93 62 9 22 10 1 93 63 9 4 23 1 5 91 7 0 22 7 0 78 1 0 0 7 97 67 9 91 47 9 0 91 1 14 22 1 0 68 1 0 67 9 0 68 1 38 7 1 0 10 1 12 60 1 4 0 7 0 55 1 0 61 1 30 12 1 46 62 9 21 2 1 0 2 7 4 88 7 17 98 7 6 0 7 0 20 7 100 50 1 0 63 1 92 74 9 20 49 1 100 46 1 39 31 1 6 0 7 31 41 9 0 0 7 0 0 7 0 74 9 99 84 9 0 0 7 100 67 9 0 74 1 0 74 1 4 22 1 0 73 1 0 0 7 46 81 9 0 0 7 0 5 7 0 75 1 80 65 9 80 50 1 40 14 1 93 73 9 11 75 7 100 82 9 0 63 1 96 71 9 83 53 9 0 22 1 0 0 7 0 7 7 64 66 9 0 75 1 0 86 1 77 65 9 46 0 1 49 0 7 100 90 9 0 75 1 0 31 1 0 0 7 8 77 7 6 0 7 0 7 7 0 0 7 0 6 7 0 75 1 82 44 1 25 4 1 90 75 9 0 24 1 0 0 7 75 52 9 0 0 7 0 75 1 7 20 1 100 45 1 0 37 7 0 19 1 82 52 9 36 0 7 0 0 7 0 27 7 92 86 9 0 82 1 81 74 9 100 45 1 0 0 7 0 64 1 99 59 9 81 66 9 0 0 7 0 75 1 7 90 7 46 100 9 0 75 1 9 22 1 0 34 1 0 0 7 94 47 1 18 79 7 10 0 7 0 45 1 0 100 1 0 0 7 94 66 9 77 65 9 0 74 1 0 29 1 0 69 9 60 76 9 0 0 7 0 0 7 100 75 9 88 63 9 51 83 9 88 67 9 0 0 7 9 74 9 0 100 1 87 74 9 100 78 9 0 90 1 13 13 1 100 51 9 6 0 7 0 22 1 0 4 7 92 67 9 52 73 9 90 66 9 0 2 7 100 45 1 96 71 9 2 67 7 90 84 9 0 6 7 25 3 1 0 74 9 0 0 7 1 62 9 78 68 9 0 60 1 50 2 1 74 66 9 15 100 7 0 0 7 15 0 7 0 0 7 8 0 7 0 0 7 92 63 9 0 23 7 0 60 1 91 76 9 0 75 1 0 76 1 0 0 7 13 3 1 0 0 7 0 0 7 0 0 7 0 0 7 26 0 9 0 41 7 100 71 9 0 0 7 54 71 9 100 83 9 0 69 1 0 71 7 0 70 7 86 51 1 100 65 9 0 8 7 4 74 1 0 77 9 0 60 1 0 31 1 93 44 9 83 45 1 20 24 1 100 57 9 0 0 1 0 74 1 41 64 9 0 60 1 33 17 1 100 42 1 93 77 9 0 24 1 8 9 1 7 24 1 15 96 7 95 60 9 16 17 1 0 0 7 80 92 9 69 75 9 75 64 9 100 54 9 0 26 1 0 0 7 0 16 7 1 98 7 69 74 9 0 81 1 56 70 9 39 92 9 0 75 1 16 36 1 92 74 9 55 69 9 10 17 1 100 45 1 64 66 9 36 13 1 9 5 1 0 0 7 5 14 7 100 44 9 0 29 1 0 74 7 0 74 1 99 58 9 87 70 9 0 37 1 0 0 7 0 0 7 17 0 7 56 72 9 98 69 9 95 75 9 0 79 9 0 88 1 83 78 9 100 65 9 0 60 1 72 65 9 22 0 7 100 44 1 6 0 7 0 27 1 1 90 7 33 0 1 11 87 7 8 77 7 0 75 1 100 68 9 17 0 7 100 54 9 70 51 9 0 75 1 0 19 7 0 75 1 0 33 7 100 46 1 0 0 7 75 65 9 69 85 9 0 0 7 71 74 9 0 77 1 0 83 1 100 65 9 0 72 9 100 44 1 75 40 9 21 17 1 0 26 7 74 48 1 60 55 1 12 0 7 0 37 1 0 73 7 60 48 9 28 0 7 12 0 7 0 76 1 0 0 7 0 25 1 0 0 7 91 78 9 100 44 1 0 82 1 6 0 7 0 18 7 0 75 1 0 1 7 58 63 9 25 7 1 32 66 9 80 72 9 80 78 9 2 0 7 100 46 1 0 71 1 0 91 1 25 0 7 14 0 7 4 21 1 90 59 9 100 43 1 73 64 9 0 72 7 96 72 9 23 0 7 75 46 9 3 27 1 97 64 9 0 76 1 94 49 1 88 63 9 0 0 7 0 32 7 100 95 9 78 53 9 14 70 9 0 36 7 0 75 7 100 50 1 55 82 9 3 73 7 0 7 7 32 0 7 0 0 7 15 72 7 0 75 1 10 78 7 40 89 9 0 68 7 80 48 9 100 50 1 0 11 7 69 77 9 0 20 7 0 75 1 80 55 9 0 69 1 0 15 7 83 79 9 0 0 7 93 78 9 0 70 1 0 19 7 73 61 9 69 96 9 0 100 1 0 0 7 100 71 9 13 59 1 0 79 1 0 0 7 29 12 1 9 0 7 0 73 9 23 15 1 0 0 7 0 14 7 0 64 1 0 0 7 1 0 7 50 55 1 9 31 7 23 16 1 24 6 1 100 46 1 10 89 7 90 73 9 0 63 1 0 20 1 0 74 9 76 78 9 80 73 9 14 0 7 47 90 9 92 78 9 0 70 9 100 43 1 13 0 7 90 79 9 13 66 9 53 48 1 13 7 1 78 72 9 91 57 9 100 92 9 0 0 7 0 75 1 3 3 1 93 81 9 67 81 9 8 0 7 0 0 7 46 51 1 1 0 7 7 11 1 100 77 9 72 69 9 28 68 9 0 0 7 0 91 7 100 65 9 0 84 1 0 83 7 49 83 9 0 74 1 100 66 9 49 62 9 40 68 9 91 76 9 83 67 9 31 40 1 0 0 7 22 71 9 0 37 7 0 18 1 95 66 9 0 77 1 60 65 9 100 78 9 17 3 1 0 0 7 84 92 9 0 0 7 82 76 9 95 72 9 0 36 1 0 24 1 0 47 1 72 74 9 100 79 9 0 0 7 71 48 9 0 0 7 97 79 9 100 63 9 27 0 7 88 58 9 0 0 7 0 0 7 0 27 1 89 74 9 0 76 1 0 80 1 59 67 9 7 18 1 69 68 9 86 44 9 0 21 7 77 62 9 100 49 1 8 45 1 96 73 9 0 0 7 83 55 9 100 43 1 86 60 9 8 90 7 0 32 7 0 87 1 76 73 9 79 69 9 0 0 7 0 75 1 0 0 7 70 70 9 65 59 9 0 79 1 100 43 1 21 0 7 81 77 9 100 44 1 59 56 9 100 92 9 81 75 9 0 28 7 99 70 9 26 0 7 0 32 1 0 100 1 0 3 7 0 0 7 0 27 1 0 21 7 0 0 7 100 54 9 14 43 1 90 53 9 0 0 7 3 20 1 100 45 1 0 34 7 0 0 7 7 0 7 65 68 9 0 76 1 18 7 1 100 43 1 0 29 1 19 7 1 0 60 1 0 36 1 0 0 7 100 60 9 0 0 7 0 75 1 0 75 1 0 35 7 0 0 7 10 19 1 9 0 7 7 84 1 0 76 1 1 20 1 15 25 1 100 49 1 0 41 1 0 69 1 0 0 7 100 36 9 21 0 7 16 0 7 0 0 7 19 68 9 18 97 7 25 90 9 0 0 7 63 58 9 0 75 1 61 58 9 0 5 7 0 9 7 92 71 9 0 74 1 0 33 7 42 57 9 22 0 7 0 25 1 0 100 1 0 16 7 100 44 1 15 0 7 82 79 9 0 81 1 0 75 1 100 81 9 0 0 7 0 0 7 0 0 7 26 11 1 99 83 9 0 18 1 63 61 9 86 66 9 8 82 7 23 24 1 0 100 1 100 49 1 6 81 9 6 4 7 100 78 9 83 75 9 0 65 1 0 0 7 100 85 9 19 0 7 0 20 1 0 0 7 56 61 9 100 77 9 0 40 7 ; proc gplot; plot x1*x10 = digit; symbol1 v="1" c=black; symbol2 v="7" c=red; symbol3 v="9" c=cyan; run; data score; do x1 = 0 to 100; do x10=0 to 100; id=2; output; end;end; data both; set digits score; proc print data=both (firstobs=1000 obs=1500); run; proc logistic data=both; model digit_&digit = x1 x10 x1*x10 x1*x10 x10*x10 x1*x10*x10 x1*x1*x10 x1*x1*x10*X10; output out=out1 predicted=p; proc g3d; plot x1*x10=p; where id=2; title "Pr{digit = &digit}"; run; *** Cumulative Logit; proc logistic data=both; model digit = x1 x10 x1*x10 x1*x10 x10*x10 x1*x10*x10 x1*x1*x10 x1*x1*x10*X10; output out=out2 predicted=p; run; proc print data=out2(obs=10); data one; set out2; if id=2 and _Level_="1"; p_1 = p; proc sort; by x1 x10; ** just to be sure; data seven; set out2; if id=2 and _LEVEL_="7"; p_7=p; proc sort; by x1 x10; data all3; merge one seven; p_9 = 1 - p_7; p_7=p_7-p_1; ** cumulative logit; keep x1 x10 p_9 p_1 p_7 choice; choice = "9"; if p_1=max(p_1,p_7,p_9) then choice = "1"; if p_7=max(p_1,p_7,p_9) then choice = "7"; run; proc print;where p_1>.9; run; proc gplot; plot x1*x10=choice/legend; symbol1 i=none; run;