Fix bug 25677
authorJason Stover <jhs@math.gcsu.edu>
Mon, 23 Feb 2009 16:14:45 +0000 (11:14 -0500)
committerJason Stover <jhs@math.gcsu.edu>
Mon, 23 Feb 2009 16:14:45 +0000 (11:14 -0500)
src/language/stats/regression.q
src/math/linreg.c
src/math/linreg.h
tests/command/regression-qr.sh
tests/command/regression.sh

index 1d31d1845e02e20064610bf3886cd8d11c71f5a0..19aa0ee35c67a86a20846469783b71eae0d84136 100644 (file)
@@ -148,7 +148,7 @@ reg_stats_r (pspp_linreg_cache * c)
   assert (c != NULL);
   rsq = c->ssm / c->sst;
   adjrsq = 1.0 - (1.0 - rsq) * (c->n_obs - 1.0) / (c->n_obs - c->n_indeps);
-  std_error = sqrt ((c->n_indeps - 1.0) / (c->n_obs - 1.0));
+  std_error = sqrt (pspp_linreg_mse (c));
   t = tab_create (n_cols, n_rows, 0);
   tab_dim (t, tab_natural_dimensions);
   tab_box (t, TAL_2, TAL_2, -1, TAL_1, 0, 0, n_cols - 1, n_rows - 1);
@@ -281,7 +281,7 @@ reg_stats_anova (pspp_linreg_cache * c)
   int n_cols = 7;
   int n_rows = 4;
   const double msm = c->ssm / c->dfm;
-  const double mse = c->sse / c->dfe;
+  const double mse = pspp_linreg_mse (c);
   const double F = msm / mse;
   const double pval = gsl_cdf_fdist_Q (F, c->dfm, c->dfe);
 
index 2fb98cf76822d020c4369d31acdf8ce0a91b1457..609a78b6dc9cd98a1d228110e533c396578d996d 100644 (file)
@@ -741,3 +741,8 @@ pspp_linreg_with_cov (const struct design_matrix *full_cov,
   covariance_matrix_destroy (cov);
 }
 
+double pspp_linreg_mse (const pspp_linreg_cache *c)
+{
+  assert (c != NULL);
+  return (c->sse / c->dfe);
+}
index 05c8159630d8aa8da3467148a72e6d7a2da95218..3b19e53a260ff5aa740d69e130200b9e43ac055c 100644 (file)
@@ -214,4 +214,5 @@ void pspp_linreg_set_indep_variable_sd (pspp_linreg_cache *, const struct variab
  */
 double pspp_linreg_get_indep_variable_mean (pspp_linreg_cache *, const struct variable *);
 void pspp_linreg_set_indep_variable_mean (pspp_linreg_cache *, const struct variable *, double);
+double pspp_linreg_mse (const pspp_linreg_cache *);
 #endif
index b90402d718aa6b6a2b6a5fdbf91fa3df68187640..5f4936d81b6cdf8ba06d4f60848cdedc4e678736 100755 (executable)
@@ -1582,7 +1582,7 @@ diff -b  $TEMPDIR/pspp.list - << EOF
 #============#========#=================#==========================#
 #          R #R Square|Adjusted R Square|Std. Error of the Estimate#
 #========#===#========#=================#==========================#
-#        |.05#     .00|              .00|                       .00#
+#        |.05#     .00|              .00|                      8.11#
 #========#===#========#=================#==========================#
 2.2 REGRESSION.  ANOVA
 #===================#==============#====#===========#=====#============#
index db33445e65e75ffec91960868e64ee3d7e099291..a8e1942e5326143c9f7d2fdd5a40ae820b33f52e 100755 (executable)
@@ -95,7 +95,7 @@ diff -b  $TEMPDIR/pspp.list - << EOF
 #============#========#=================#==========================#
 #          R #R Square|Adjusted R Square|Std. Error of the Estimate#
 #========#===#========#=================#==========================#
-#        |.97#     .94|              .93|                       .33#
+#        |.97#     .94|              .93|                      1.34#
 #========#===#========#=================#==========================#
 2.2 REGRESSION.  ANOVA
 #===================#==============#==#===========#======#============#