comparison scripts/statistics/models/logistic_regression.m @ 10635:d1978e7364ad

Print name of function in error() string messages.
author Rik <octave@nomad.inbox5.com>
date Sun, 16 May 2010 22:26:54 -0700
parents 16f53d29049f
children 1740012184f9
comparison
equal deleted inserted replaced
10634:60542efcfa2c 10635:d1978e7364ad
94 if (nargin < 2) 94 if (nargin < 2)
95 x = zeros (my, 0); 95 x = zeros (my, 0);
96 endif; 96 endif;
97 [mx, nx] = size (x); 97 [mx, nx] = size (x);
98 if (mx != my) 98 if (mx != my)
99 error ("x and y must have the same number of observations"); 99 error ("logistic_regression: x and y must have the same number of observations");
100 endif 100 endif
101 101
102 ## initial calculations 102 ## initial calculations
103 x = -x; 103 x = -x;
104 tol = 1e-6; incr = 10; decr = 2; 104 tol = 1e-6; incr = 10; decr = 2;
139 epsilon = epsilon / decr; 139 epsilon = epsilon / decr;
140 else 140 else
141 while ((dev - devold) / (dl' * (tb - tbold)) > 0) 141 while ((dev - devold) / (dl' * (tb - tbold)) > 0)
142 epsilon = epsilon * incr; 142 epsilon = epsilon * incr;
143 if (epsilon > 1e+15) 143 if (epsilon > 1e+15)
144 error ("epsilon too large"); 144 error ("logistic_regression: epsilon too large");
145 endif 145 endif
146 tb = tbold - (d2l - epsilon * eye (size (d2l))) \ dl; 146 tb = tbold - (d2l - epsilon * eye (size (d2l))) \ dl;
147 [g, g1, p, dev] = logistic_regression_likelihood (y, x, tb, z, z1); 147 [g, g1, p, dev] = logistic_regression_likelihood (y, x, tb, z, z1);
148 disp ("epsilon"); disp (epsilon); 148 disp ("epsilon"); disp (epsilon);
149 endwhile 149 endwhile