2008-08-17 Jason H Stover * linreg.c (post_sweep_computations): New function to re-use the re-usable. New function cache_init() to re-use the re-usable. pspp_linreg_with_cov() now estimates parameters via reg_sweep(). 2008-08-16 Jason H Stover * linreg.c (pspp_linreg_with_cov): New function to estimate parameters directly from covariance matrix instead of using the entire data set. * linreg.c (rearrange_covariance_matrix): New function to ensure the columns of the covariance matrix correspond to the variables in the model. 2008-07-24 John Darrington * merge.c merge.h sort.c sort.h: Removed the value_cnt associated with case ordering. This ensures that the casereader returned by sort_execute now has the same dimensions as the casereader passed in. 2008-07-24 Jason H Stover * covariance-matrix.c (covariance_pass_two): Dropped weight argument. Corrected update of the entries of the covariance matrix. * covariance-matrix.c (column_iterate): Dropped weight argument. Corrected update of the entries of the covariance matrix. * covariance-matrix.c (covariance_update_categorical_numeric): Dropped weight argument. Corrected update of the entries of the covariance matrix. 2008-07-17 Jason H Stover * covariance-matrix.c (covariance_update_categorical_numeric): Altered to match new code in covariance_pass_two(); * covariance-matrix.h: Fix declaration of covariance_pass_two. * covariance-matrix.c (covariance_pass_two): Moved numeric and categorical scopes of V2 inside for loop. If V1 is not categorical, but V2 is, recurse with the order of the variables reversed to use the code in the previous "if" scope. 2008-07-16 Jason Stover * covariance-matrix.c (covariance_pass_two): Renamed covariance_pass_one. Fixed update of covariance matrix when both variables are categorical. (column_iterate): New function. 2008-07-15 Jason Stover * covariance-matrix.c (covariance_pass_one): New file, new function. 2008-06-21 Jason Stover * linreg.c (pspp_linreg): Accept a struct design_matrix. Use new accessor functions pspp_coeff_get_mean, pspp_coeff_get_sd. New functions pspp_linreg_get_indep_variable_mean, pspp_linreg_set_indep_variable_mean, pspp_linreg_get_indep_variable_sd, pspp_linreg_set_indep_variable_sd. Altered pspp_linreg_get_coeff to use accessor function pspp_coeff_var_to_coeff. * coefficient.c: New functions pspp_coeff_get_mean, pspp_coeff_set_mean, pspp_coeff_get_sd, pspp_coeff_set_sd, pspp_coeff_var_to_coeff. Added doubles to hold mean and standard deviation in struct varinfo. 2008-06-14 Jason Stover * linreg/: moved linreg.[ch] to src/math. 2008-05-15 Ben Pfaff Patch #6512. * moments.c (calc_moments): Use gsl_finite instead of finite, as a stopgap measure for portability until appropriate gnulib modules are available. 2008-03-10 Jason Stover * coefficient.c (pspp_linreg_get_coeff): Removed use of coefficient 0 as intercept. 2008-03-01 Jason Stover * coefficient.c (pspp_coeff_init): Ensure first arg is not a null pointer. * coefficient.c (pspp_linreg_get_coeff): Make sure we don't return a result beyond the last coefficient, or start with a coefficient beyond the last one if there is only one. 2007-06-06 Ben Pfaff Adapt case sources, sinks, and clients of procedure code to the new infrastructure. * automake.mk: Add new files. * levene.c: Adapt to new casereaders. Abstract better. * merge.c: New file. * merge.h: New file. * sort.c: Rewrite in terms of case_ordering, merger. 2007-05-31 Jason Stover * interaction.c: New file. * interaction.h : New file. Mon Feb 5 15:42:14 2007 Ben Pfaff * moments.c (moments_pass_two): Reduce number of multiplications. Thu Dec 7 15:27:49 WST 2006 John Darrington * factor-stats.c factor-stats.h: Changed independent values to be pointers rather than copies. Wed Dec 6 21:14:59 2006 Ben Pfaff * coefficient.c: (pspp_coeff_get_value) Compare variable pointers instead of variable indexes. (pspp_linreg_get_coeff) Ditto. (design_matrix_col_to_var_index) Removed. (design_matrix_col_to_var) Compare variable pointers instead of variable indexes. (cmp_dm_var_index) Ditto. (design_matrix_var_to_column) Ditto. (dm_var_to_last_column) Ditto. Sun Nov 5 08:30:32 WST 2006 John Darrington * levene.c levene.h Changed to use the new casefilter structure. 2006-07-15 Jason Stover * coefficient.c (pspp_coeff_init): Make design_matrix arg const. 2006-07-14 Jason Stover * coefficient.c (pspp_coeff_init): Removed use of pspp_linreg_cache to make the routines more generally useful. 2006-05-19 Jason Stover * coefficient.h: Renamed pspp_linreg_coeff to pspp_coeff. * coefficient.c: Moved to src/math. * coefficient.h: Moved to src/math. Tue May 9 21:09:37 2006 Ben Pfaff * sort.c (sort_active_file_to_casefile): Check return value of multipass_procedure(). Wed May 3 23:06:43 2006 Ben Pfaff Continue reforming procedure execution. In this phase, get rid of many global variables, consolidating procedure execution in procedure.c. Encapsulate transformations in new "struct trns_chain". Also, change implementation of N OF CASES, FILTER, and PROCESS IF from special cases to transformations. * sort.c: (prepare_to_sort_active_file) Don't run a procedure here. (sort_active_file_in_place) Rewrite to run a procedure, capture the output, sort the output, and set that as the source for the next procedure. (struct sort_to_casefile_cb_data) New structure. (sort_to_casefile_callback) New function. (sort_active_file_to_casefile) Rewrite to use multipass_procedure(). Sat Apr 29 11:09:33 WST 2006 John Darrington * removed unused variable. Sat Apr 15 18:01:22 2006 Ben Pfaff * factor-stats.c (metrics_postcalc): Add casts to fix warnings. Thu Mar 2 08:40:33 WST 2006 John Darrington * Moved files from src directory