Fix bug #18739.
[pspp-builds.git] / src / language / stats / ChangeLog
1 Tue Jan  9 19:16:11 2007  Ben Pfaff  <blp@gnu.org>
2
3         Fix bug #18739.
4         
5         * aggregate.c (parse_aggregate_functions) Initialize
6         function_name.
7
8 Fri Dec 22 14:04:09 2006  Ben Pfaff  <blp@gnu.org>
9
10         Simplify missing value handling.
11         
12         * aggregate.c (struct agr_var): Remove `bool include_missing', add
13         `enum mv_class exclude'.  Remove `int missing', add `bool
14         saw_missing'.  Update users.
15
16         * descriptives.c (struct dsc_trns): Removed `int
17         include_user_missing', add `enum mv_class exclude'.  Update users.
18         (struct dsc_proc): Ditto.
19
20         * examine.q: (static var value_is_missing): Rename
21         `exclude_values', change type to `enum mv_class'.  Update users.
22
23         * rank.q: Ditto.
24
25 Fri Dec 22 19:22:18 WST 2006 John Darrington <john@darrington.wattle.id.au>
26
27         * frequencies.q : Fixed bug #17420, where the table bounds were overun
28         when /FORMAT=nolabels was given.
29
30 Wed Dec 20 18:45:31 WST 2006 John Darrington <john@darrington.wattle.id.au>
31
32         * binomial.c binomial.h : New files.  Thanks to Jason Stover 
33           for assistance with these.
34
35         * chisquare.c chisquare.h freq.c freq.h npar-summary.c npar-summary.h 
36           npar.h npar.q: New files.  Implementing NPAR TESTS.
37
38         * frequencies.q  : Moved  structure definitions into freq.[ch]
39
40 Sat Dec 16 22:26:44 2006  Ben Pfaff  <blp@gnu.org>
41
42         Make it possible to pull cases from the active file with a
43         function call, instead of requiring indirection through a callback
44         function.
45
46         * aggregate.c (cmd_aggregate): Take advantage of new procedure
47         interface.
48         (agr_to_active_file): Removed.
49         (presorted_agr_to_sysfile): Removed.
50
51         * autorecode.c (cmd_autorecode): Take advantage of new procedure
52         interface.
53         (autorecode_proc_func): Removed.
54
55         * flip.c (struct flip_pgm): New members to allow conformance with
56         new case_source_class interface.
57         (cmd_flip): Adapt to new case_source_class interface.
58         (flip_source_read): Ditto.
59         (flip_source_destroy): Ditto.
60
61 Sat Dec 16 12:54:27 2006  Ben Pfaff  <blp@gnu.org>
62
63         * rank.q (rank_custom_variables): Allow grouping variables to be
64         strings.  Fixes bug #18533.  Thanks to John Darrington for review.
65
66 Sat Dec  9 18:47:51 2006  Ben Pfaff  <blp@gnu.org>
67
68         * regression.q (is_depvar): Compare variable pointers instead of
69         variable names.
70
71 Thu Dec  7 15:26:25 WST 2006 John Darrington <john@darrington.wattle.id.au>
72
73         * examine.q: Allocated the categorical values for the dependent and 
74         independent variables, on the heap.  Hence they can be of any width.
75
76 Wed Dec  6 21:14:26 2006  Ben Pfaff  <blp@gnu.org>
77
78         * regression.q (reg_inserted): Compare variable pointers instead
79         of variable indexes.
80
81 Mon Dec  4 22:33:46 2006  Ben Pfaff  <blp@gnu.org>
82
83         * crosstabs.q (insert_summary): Use var_to_string for labeling.
84         (output_pivot_table) Ditto.
85         (submit) Ditto.
86
87         * frequencies.q (setup_z_trns): Ditto.
88         (dump_full) Ditto.
89         (dump_condensed) Ditto.
90         (dump_statistics) Ditto.
91         
92
93 Sun Nov  5 08:31:42 WST 2006 John Darrington <john@darrington.wattle.id.au>
94
95         * t-test.q, oneway.q: Changed to use the new casefilter structure.
96
97 Sat Oct 14 16:52:28 2006  Ben Pfaff  <blp@gnu.org>
98
99         * rank.q: (rank_sorted_casefile) Add some missing case_destroy()
100         calls to fix a memory leak.
101
102 Sun Oct  8 09:45:40 WST 2006 John Darrington <john@darrington.wattle.id.au>
103
104         * rank.q: Plugged a small memory leak which occurred under error
105         conditions.
106         
107 Sat Oct  7 11:06:01 WST 2006 John Darrington <john@darrington.wattle.id.au>
108
109         * rank.q: Implemented most of the RANK command.
110
111 2006-07-14  Jason Stover  <jhs@math.gcsu.edu>
112
113         * regression.q (run_regression): New function to move knowledge of
114         pspp_linreg_cache out of math/coefficient.[ch].
115
116 Sat Jul  1 17:41:46 2006  Ben Pfaff  <blp@gnu.org>
117
118         Fix bug #11612, "q2c documentation does not agree with code".
119         
120         * examine.q: Audit use of q2c "+" prefixes that indicate that a
121         command may appear multiple times.
122
123         * frequencies.q: Ditto.
124
125         * oneway.q: Ditto.
126
127         * regression.q: Ditto.
128
129         * t-test.q: Ditto.
130
131 Fri Jun 23 14:18:22 2006  Ben Pfaff  <blp@gnu.org>
132
133         Support long string variables on FREQUENCIES, as
134         an extension when in enhanced algorithms mode.  For Greg Hunt
135         <greg@firmansyah.com>.
136         
137         * frequencies.q: (struct freq) Change `v' member from union value
138         to union value *.  Update all references.
139         (struct var_freqs) Add width, print members to represent effective
140         variable width and display format.
141         (calc) Copy entire long string value into the hash table.
142         (frq_custom_variables) Set new width, print members.
143         (hash_value_alpha) Get width from var_freqs.
144         (compare_value_alpha_a) Ditto.
145         (compare_freq_alpha_a) Ditto.
146         (compare_freq_alpha_d) Ditto.
147         (dump_full) Get display format from var_freqs.
148         (dump_condensed) Ditto.
149
150 Mon Jun 19 22:07:13 2006  Ben Pfaff  <blp@gnu.org>
151
152         * frequencies.q: (dump_full) Only put the first MAX_SHORT_STRING
153         bytes of string variables into the output cells, seeing as we only
154         copy that many.
155         (dump_condensed) Ditto.
156
157 Mon Jun 19 21:52:05 2006  Ben Pfaff  <blp@gnu.org>
158
159         Fixes a bug reported by Greg Hunt <greg@firmansyah.com>.
160         
161         * frequencies.q: (hsh_hash_bytes) We only copy the first
162         MAX_SHORT_STRING bytes of string variables, so we must only
163         compare that many bytes, even if the string variable is longer.
164         (compare_value_alpha_a) Ditto.
165         (compare_freq_alpha_a) Ditto.
166         (compare_freq_alpha_d) Ditto.
167
168 2006-05-11  Jason Stover  <jhs@math.gcsu.edu>
169
170         * regression.q: Adjusted code to account for cache->coeff being a
171         pspp_linreg_coeff **.
172
173 Sun May  7 18:31:25 2006  Ben Pfaff  <blp@gnu.org>
174
175         Fix memory leak.
176         
177         * aggregate.c (cmd_aggregate): Free default_dict before replacing
178         it.
179
180 Sun May  7 17:09:19 2006  Ben Pfaff  <blp@gnu.org>
181
182         * flip.c (flip_file): Check return value of pool_fclose().
183
184 Sat May  6 16:00:13 2006  Ben Pfaff  <blp@gnu.org>
185
186         Get rid of `char *c' member in union value, for cleanliness.
187         
188         * aggregate.c: (union agr_argument) New union.
189         (struct agr_var) Change element type of arg[] from union value to
190         union agr_argument.
191         (parse_aggregate_functions) Change local variable types likewise.
192
193         * autorecode.c: (union arc_value) New union.
194         (struct arc_item) Change "from" from union value to union
195         arc_value.
196         (recode) Change local variable from union value to union
197         arc_value.
198         (autorecode_trns_proc) Ditto.
199         (compare_alpha_value) Ditto.
200         (hash_alpha_value) Ditto.
201         (compare_numeric_value) Ditto.
202         (hash_numeric_value) Ditto.
203         (autorecode_proc_func) Ditto.
204
205 Sat May  6 10:43:33 2006  Ben Pfaff  <blp@gnu.org>
206
207         Continue reforming procedure execution.  In this phase, get rid of
208         the output code for SPLIT FILE groups in procedure.c, which really
209         shouldn't be doing any output.  Move it into the individual
210         procedures instead.  This also adds some flexibility.
211
212         * crosstabs.q (precalc): Call output_split_file_values().
213
214         * descriptives.c (calc_descriptives): Ditto.
215
216         * examine.q (run_examine): Ditto.
217         
218         * frequencies.q (precalc): Ditto.
219
220         * oneway.q (run_oneway): Ditto.
221
222         * regression.q (run_regression): Ditto.
223
224         * t-test.q (calculate): Ditto.
225
226 Wed May  3 23:05:31 2006  Ben Pfaff  <blp@gnu.org>
227
228         Continue reforming procedure execution.  In this phase, get rid of
229         many global variables, consolidating procedure execution in
230         procedure.c.  Encapsulate transformations in new "struct
231         trns_chain".  Also, change implementation of N OF CASES, FILTER,
232         and PROCESS IF from special cases to transformations.
233          
234         * aggregate.c (cmd_aggregate) Use discard_variables().
235         
236 2006-04-28  Jason Stover  <jhs@math.gcsu.edu>
237
238         * regression.q (regression_trns_resid_proc): Pass only the
239         variables used in the model to (*model->residual)().
240
241         * regression.q (regression_trns_pred_proc): Pass only the
242         variables used in the model to (*model->pred)().
243
244 2006-04-26  Jason Stover  <jhs@math.gcsu.edu>
245
246         * regression.q: Added support for multiple transformations.
247         
248         * regression.q (regression_trns_resid_proc): New function.
249
250         * regression.q (regression_trns_pred_proc): New function.
251
252         * regression.q (subcommand_save): Added support for saving
253         predicted values.
254
255         * regression.q (regression_trns_free): New function. 
256
257         * regression.q (reg_get_name): New function.
258
259         * regression.q (reg_save_var): New function.
260
261 Tue Apr 25 13:18:56 2006  Ben Pfaff  <blp@gnu.org>
262
263         * rank.q (parse_rank_function): Use SE instead of ME for parse
264         errors.
265
266 Tue Apr 25 13:16:28 2006  Ben Pfaff  <blp@gnu.org>
267
268         * flip.c (flip_sink_write): Use snprintf() to simplify a bit of
269         code.
270
271 2006-04-21  Jason Stover  <jhs@math.gcsu.edu>
272
273         * regression.q (try_name): New function. (Partly copied from
274         try_name in descriptives.c.)
275
276         * regression.q (subcommand_save): Choose residual variable names
277         correctly. 
278
279 2006-04-20  Jason Stover  <jhs@math.gcsu.edu>
280
281         * regression.q (cmd_regression): Moved call to subcommand_save()
282         outside multipass_procedure_with_splits().
283         
284         * regression.q (regression_trns_proc): Fixed value counter n_vals
285         before calling *model->residual().
286
287 2006-04-19  Jason Stover  <jhs@math.gcsu.edu>
288
289         * regression.q (regression_trns_proc): Fixed the look-up of the
290         number of variables.
291
292 2006-04-18  Jason Stover  <jhs@math.gcsu.edu>
293
294         * regression.q (regression_trns_proc): Look up the residual
295         variable in the linear regression cache.
296
297         * regression.q (subcommand_save): Set the residual variable in the
298         linear regression cache.
299
300 2006-04-17  Jason Stover  <jason@wonko.gcsu.edu>
301
302         * regression.q (regression_trns_proc): Accept case_idx as an int
303         to match the definition of trns_proc_func.
304
305 2006-04-17  Jason Stover  <jhs@math.gcsu.edu>
306
307         * regression.q (regression_trns_proc): New function.
308
309         * regression.q (subcommand_save): Create variable residuals and
310         add a transformation to assign values to them. Also free the
311         linreg_cache if the SAVE command was not called. Removed the
312         casereading loop. Placed actual computation of residuals in
313         regression_trns_proc.
314
315         * regression.q (run_regression): Moved call to free
316         pspp_linreg_cache to subcommand_save.
317
318 Sat Apr 15 18:01:03 2006  Ben Pfaff  <blp@gnu.org>
319
320         * examine.q (output_examine): Add casts to fix warnings.
321
322 2006-04-07  Jason Stover  <jhs@math.gcsu.edu>
323
324         * regression.q (subcommand_save): New function.
325
326 2006-04-04  Jason Stover  <jhs@math.gcsu.edu>
327
328         * regression.q: New function reg_has_categorical () to tell
329         whether a pspp_linreg_struct was made with any variables of type
330         ALPHA.
331
332         * regression.q: (subcommand_export): Call
333         reg_print_categorical_encoding() only if the model uses any
334         categorical variables.
335
336 Mon Mar 27 16:00:42 2006  Ben Pfaff  <blp@gnu.org>
337
338         * crosstabs.q: (output_pivot_table) Drop spurious space from
339         message.
340
341 2006-03-15  Jason Stover  <jhs@math.gcsu.edu>
342
343         * regression.q: Added custom syntax parser for VARIABLES subcommand
344
345         * regression.q: Moved most instructions for run_regression ()
346         inside the loop over dependent variables.
347
348 Thu Mar  2 08:40:33 WST 2006 John Darrington <john@darrington.wattle.id.au>
349         
350         * Moved files from src directory