Ben Pfaff [Mon, 31 Jan 2022 06:10:59 +0000 (22:10 -0800)]
Revert "work on adding empty categories"
This reverts commit
47af71b93ed4673d23594ed2b84743f15638f7b7.
Ben Pfaff [Mon, 31 Jan 2022 06:10:55 +0000 (22:10 -0800)]
work on adding empty categories
Ben Pfaff [Mon, 31 Jan 2022 06:10:12 +0000 (22:10 -0800)]
ctables: Minor refactoring.
Ben Pfaff [Sun, 30 Jan 2022 20:39:30 +0000 (12:39 -0800)]
Work on weighting.
Ben Pfaff [Sun, 30 Jan 2022 00:59:31 +0000 (16:59 -0800)]
Add ptile support (untested).
Ben Pfaff [Sun, 30 Jan 2022 00:57:26 +0000 (16:57 -0800)]
ctables: Support mode (untested).
Ben Pfaff [Sun, 30 Jan 2022 00:56:30 +0000 (16:56 -0800)]
mode: New order statistic.
Ben Pfaff [Sun, 30 Jan 2022 00:56:18 +0000 (16:56 -0800)]
math: Make 'accumulate' a feature of order statistics, not all stats.
Ben Pfaff [Sat, 29 Jan 2022 22:44:14 +0000 (14:44 -0800)]
implement MEDIAN (untested)
Ben Pfaff [Sat, 29 Jan 2022 20:21:13 +0000 (12:21 -0800)]
subcase: Rename subcase_destroy() to subcase_uninit().
This reflects the convention that "destroy" frees the pointer passed in
while "uninit" only frees the internals.
Ben Pfaff [Sat, 29 Jan 2022 20:01:16 +0000 (12:01 -0800)]
math: Coding style updates in some order-stat implementations.
I generally find structure assignments clearer than individual assignments
to each of their members these days.
Ben Pfaff [Sat, 29 Jan 2022 20:00:16 +0000 (12:00 -0800)]
math: Improve comments.
This includes some changes to parameter names and coding style in
order-stats that I think clarify the code and modernize it.
Ben Pfaff [Sat, 29 Jan 2022 18:52:49 +0000 (10:52 -0800)]
math: Avoid unneeded extra allocations for fixed-size data structures.
This seems generally a bit cleaner to me.
Ben Pfaff [Sat, 29 Jan 2022 17:48:07 +0000 (09:48 -0800)]
Add list of unimplemented features.
Ben Pfaff [Sat, 29 Jan 2022 03:10:26 +0000 (19:10 -0800)]
More tests for totals and subtotals, with fixes.
Ben Pfaff [Sat, 29 Jan 2022 02:30:20 +0000 (18:30 -0800)]
2-d subtotals work
Ben Pfaff [Sat, 29 Jan 2022 02:23:47 +0000 (18:23 -0800)]
Fix subtotal calculations.
Ben Pfaff [Wed, 19 Jan 2022 01:48:58 +0000 (17:48 -0800)]
Simple test for TOTALS.
Ben Pfaff [Tue, 18 Jan 2022 03:31:08 +0000 (19:31 -0800)]
Some basic tests.
Ben Pfaff [Tue, 18 Jan 2022 03:19:27 +0000 (19:19 -0800)]
spv-legacy-decoder: Always give the pivot table a title.
A pivot table must have a title. Some parts of PSPP rely on that. The
legacy SPV decoder didn't ensure this, and one SPV in my corpus didn't have
one, which led to null pointer dereferences, so this commit fixes the
problem.
Ben Pfaff [Tue, 18 Jan 2022 01:39:37 +0000 (17:39 -0800)]
output-item: Add missing new-line printing tables in output_item_dump().
This only affects "pspp-output dump".
Ben Pfaff [Mon, 17 Jan 2022 22:05:09 +0000 (14:05 -0800)]
pivot-table: Fix pivot_table_dump() null pointer dereference in special case.
This function only gets called from "pspp-output dump", so it's not a very
important bug.
Ben Pfaff [Mon, 17 Jan 2022 06:28:32 +0000 (22:28 -0800)]
A few basic tests pass.
Ben Pfaff [Mon, 17 Jan 2022 04:22:55 +0000 (20:22 -0800)]
fix one bug with clabels
Ben Pfaff [Mon, 17 Jan 2022 03:21:56 +0000 (19:21 -0800)]
fix parsing
Ben Pfaff [Sun, 16 Jan 2022 05:21:02 +0000 (21:21 -0800)]
basics work now
Ben Pfaff [Sun, 16 Jan 2022 04:50:36 +0000 (20:50 -0800)]
numbers back in tables
Ben Pfaff [Sun, 16 Jan 2022 04:14:49 +0000 (20:14 -0800)]
we don't really need two forks of the output code
Ben Pfaff [Sun, 16 Jan 2022 03:48:11 +0000 (19:48 -0800)]
labeling, with clabels and slabels, all seems to work right
Ben Pfaff [Sun, 16 Jan 2022 03:07:07 +0000 (19:07 -0800)]
begin refactoring how to do grouping
Ben Pfaff [Sun, 16 Jan 2022 00:18:18 +0000 (16:18 -0800)]
better comment
Ben Pfaff [Sun, 16 Jan 2022 00:06:06 +0000 (16:06 -0800)]
make rowlabels and collabels more regular
Ben Pfaff [Sat, 15 Jan 2022 21:35:13 +0000 (13:35 -0800)]
check label positions for =OPPOSITE or =LAYER
Ben Pfaff [Sat, 15 Jan 2022 20:11:23 +0000 (12:11 -0800)]
move code around
Ben Pfaff [Sat, 15 Jan 2022 19:52:12 +0000 (11:52 -0800)]
minor improvements and cleanups
Ben Pfaff [Sat, 15 Jan 2022 19:03:21 +0000 (11:03 -0800)]
Start work on slabels != summary_axis.
Ben Pfaff [Sat, 15 Jan 2022 18:51:55 +0000 (10:51 -0800)]
more debug prints
Ben Pfaff [Sat, 15 Jan 2022 07:24:53 +0000 (23:24 -0800)]
merging works
Ben Pfaff [Sat, 15 Jan 2022 06:08:52 +0000 (22:08 -0800)]
Fix parsing totals.
Ben Pfaff [Sat, 15 Jan 2022 05:56:35 +0000 (21:56 -0800)]
Make all the spec_sets distinct.
Ben Pfaff [Sat, 15 Jan 2022 05:33:57 +0000 (21:33 -0800)]
parallel members to arrays
Ben Pfaff [Sat, 15 Jan 2022 05:06:17 +0000 (21:06 -0800)]
improve naming
Ben Pfaff [Sat, 15 Jan 2022 05:03:11 +0000 (21:03 -0800)]
Break ctables_cell_insert__() from ctables_cell_add__()
Ben Pfaff [Sat, 15 Jan 2022 04:51:12 +0000 (20:51 -0800)]
Rename var_array to nest.
Ben Pfaff [Sat, 15 Jan 2022 04:44:36 +0000 (20:44 -0800)]
Rename var_array2 to stack.
Ben Pfaff [Sat, 15 Jan 2022 02:44:01 +0000 (18:44 -0800)]
Allow totals to have different statistics
Ben Pfaff [Thu, 13 Jan 2022 05:51:10 +0000 (21:51 -0800)]
work on configurable summaries for totals
Ben Pfaff [Thu, 6 Jan 2022 04:55:45 +0000 (20:55 -0800)]
subtotal and hsubtotal work
Ben Pfaff [Tue, 4 Jan 2022 07:04:00 +0000 (23:04 -0800)]
totals can go first as well as last
Ben Pfaff [Tue, 4 Jan 2022 06:57:39 +0000 (22:57 -0800)]
Fix output to spv.
Ben Pfaff [Tue, 4 Jan 2022 06:55:15 +0000 (22:55 -0800)]
nested totals
Ben Pfaff [Tue, 4 Jan 2022 06:52:57 +0000 (22:52 -0800)]
single totals work
Ben Pfaff [Tue, 4 Jan 2022 06:02:08 +0000 (22:02 -0800)]
Unify categories as the "explicit" categories.
Ben Pfaff [Mon, 3 Jan 2022 01:38:32 +0000 (17:38 -0800)]
Rename ctables_freq to ctables_cell.
Ben Pfaff [Sun, 2 Jan 2022 23:07:02 +0000 (15:07 -0800)]
category sort implicitly
Ben Pfaff [Sun, 2 Jan 2022 22:40:49 +0000 (14:40 -0800)]
Sorting categories by explicit values.
Ben Pfaff [Sun, 2 Jan 2022 22:31:34 +0000 (14:31 -0800)]
category filtering works
Ben Pfaff [Sun, 2 Jan 2022 21:37:44 +0000 (13:37 -0800)]
table sections exist
Ben Pfaff [Sun, 2 Jan 2022 20:49:26 +0000 (12:49 -0800)]
domains work
Ben Pfaff [Sun, 2 Jan 2022 19:57:59 +0000 (11:57 -0800)]
subtables work
Ben Pfaff [Sun, 2 Jan 2022 03:27:42 +0000 (19:27 -0800)]
CTABLES: Support setting the title, caption, ...
Ben Pfaff [Sun, 2 Jan 2022 03:27:31 +0000 (19:27 -0800)]
pivot-table: New functions for setting captions, etc.
Ben Pfaff [Sun, 2 Jan 2022 03:04:45 +0000 (19:04 -0800)]
scale variables work more sanely
Ben Pfaff [Sun, 2 Jan 2022 01:41:50 +0000 (17:41 -0800)]
summaries work
Ben Pfaff [Sun, 2 Jan 2022 01:23:38 +0000 (17:23 -0800)]
data filled in
Ben Pfaff [Sun, 2 Jan 2022 00:47:29 +0000 (16:47 -0800)]
axes marked properly
Ben Pfaff [Sat, 1 Jan 2022 23:47:23 +0000 (15:47 -0800)]
toward better summaries
Ben Pfaff [Sat, 1 Jan 2022 22:47:52 +0000 (14:47 -0800)]
dimensions work, except for sumamries
Ben Pfaff [Sat, 1 Jan 2022 21:31:39 +0000 (13:31 -0800)]
output-item: Fix memory leak in output_item_dump().
Ben Pfaff [Sat, 1 Jan 2022 18:09:12 +0000 (10:09 -0800)]
work
Ben Pfaff [Fri, 31 Dec 2021 20:09:27 +0000 (12:09 -0800)]
track axes
Ben Pfaff [Fri, 31 Dec 2021 05:34:47 +0000 (21:34 -0800)]
some summary functions work
Ben Pfaff [Fri, 31 Dec 2021 00:43:29 +0000 (16:43 -0800)]
give CTABLES its own freq structure
Ben Pfaff [Thu, 30 Dec 2021 23:58:42 +0000 (15:58 -0800)]
vlabels works a little
Ben Pfaff [Thu, 30 Dec 2021 23:14:15 +0000 (15:14 -0800)]
all but last category
Ben Pfaff [Thu, 30 Dec 2021 22:18:45 +0000 (14:18 -0800)]
Skipping missing values.
Ben Pfaff [Thu, 30 Dec 2021 21:58:21 +0000 (13:58 -0800)]
CTABLES basics work
Ben Pfaff [Thu, 30 Dec 2021 19:47:17 +0000 (11:47 -0800)]
freqtabs are per-table
Ben Pfaff [Thu, 30 Dec 2021 19:37:09 +0000 (11:37 -0800)]
sort the frequency tables
Ben Pfaff [Wed, 29 Dec 2021 22:46:47 +0000 (14:46 -0800)]
now builds frequency tables
Ben Pfaff [Wed, 29 Dec 2021 19:57:06 +0000 (11:57 -0800)]
figure out frequency table structure
Ben Pfaff [Tue, 28 Dec 2021 05:03:13 +0000 (21:03 -0800)]
more work
Ben Pfaff [Tue, 28 Dec 2021 02:43:03 +0000 (18:43 -0800)]
more validation
Ben Pfaff [Tue, 28 Dec 2021 01:51:33 +0000 (17:51 -0800)]
start validating
Ben Pfaff [Mon, 27 Dec 2021 00:01:47 +0000 (16:01 -0800)]
work on CTABLES
Ben Pfaff [Sun, 13 Mar 2022 20:33:51 +0000 (13:33 -0700)]
Makefile: Fix running "make dist" before "make all".
Otherwise, there's a race between generating and using config.h, which
causes build failures. This happens particularly with the PSPP autobuilder.
Ben Pfaff [Sun, 13 Mar 2022 19:34:36 +0000 (12:34 -0700)]
Switch from recursive to non-recursive use of Gnulib.
This allows for better use of dependencies in Makefiles. It causes a new
warning from Automake, which I hope to fix through a change to Gnulib
sometime soon. I'm consulting the other Gnulib maintainers on that:
https://lists.gnu.org/archive/html/bug-gnulib/2022-03/msg00044.html
Ben Pfaff [Sun, 13 Mar 2022 19:12:53 +0000 (12:12 -0700)]
Gnulib needs Automake 1.14 or later.
Ben Pfaff [Sun, 13 Mar 2022 18:41:50 +0000 (11:41 -0700)]
tests: Update testsuite results to accomodate new Gnulib.
It seems that libunistring now does line wrapping slightly differently,
perhaps due to Unicode updates.
Ben Pfaff [Sun, 13 Mar 2022 18:32:58 +0000 (11:32 -0700)]
Update to newest gnulib.
This required a dependency on Automake 1.11 or later. It also required
dropping C2x compatibility warnings because Gnulib now triggers them. The
Gnulib tempname module requires linking against $(LIB_GETRANDOM), so this
adds that in each case where the build links against libgl.
Ben Pfaff [Sun, 13 Mar 2022 18:30:49 +0000 (11:30 -0700)]
spv-light-decoder: Avoid GCC 11.x warning in decode_spvlb_halign().
It seems to be wrong, but GCC can't tell and it's hard to blame it.
Ben Pfaff [Sun, 13 Mar 2022 17:55:30 +0000 (10:55 -0700)]
expressions: Fix value of $TIME variable and add a test.
Thanks to Frans Houweling for reporting this bug.
Bug #62003.
Ben Pfaff [Thu, 13 Jan 2022 05:50:54 +0000 (21:50 -0800)]
psppire-dialog-action-crosstabs: Do not add PIVOT or NOPIVOT to command.
The CROSSTABS command does not support /FORMAT=PIVOT or /FORMAT=NOPIVOT.
I can't find any evidence that it ever did. Perhaps q2c ignored keywords
it didn't recognize? SPSS does not document support for any such format
keywords, so it's better to remove them from the emitted syntax than to
add support to CROSSTABS.
Thanks to Alexandra Younger for reporting the issue.
Ben Pfaff [Sat, 1 Jan 2022 19:10:05 +0000 (11:10 -0800)]
lexer: New functions for parsing real numbers in specified ranges.
These will be more useful in the future.
Ben Pfaff [Sat, 1 Jan 2022 19:09:49 +0000 (11:09 -0800)]
format-parser: Improve comment.
Ben Pfaff [Sat, 1 Jan 2022 19:01:00 +0000 (11:01 -0800)]
FREQUENCIES: Fix percentiles and median calculation for multiple variables.
The calculations here were using the same space each time for
calculating percentiles and median, but different areas are needed. This
commit fixes the problem.
Bug #60728.
Thanks to elias tsolis for reporting the problem.
Ben Pfaff [Sat, 1 Jan 2022 18:35:17 +0000 (10:35 -0800)]
FREQUENCIES: Remove unused pool.
Ben Pfaff [Sat, 1 Jan 2022 18:34:56 +0000 (10:34 -0800)]
FREQUENCIES: Remove unused struct members.
John Darrington [Sat, 1 Jan 2022 08:56:21 +0000 (09:56 +0100)]
Fixed misleading results in the Kruskal-Wallis test
Fixed misleading results if the lower bound was in fact higher
than the upper bound.
Ben Pfaff [Fri, 31 Dec 2021 19:06:48 +0000 (11:06 -0800)]
Replace more uses of 'cnt' by 'n'.
This continues the work begun in commit
339f1956cc72 ("treewide: Replace
<name>_cnt by n_<name>s and <name>_cap by allocated_<name>.") by replacing
more uses of 'cnt' by 'n', which I think is a better choice these days.