summary_add makes sense, finally
authorBen Pfaff <blp@cs.stanford.edu>
Sat, 27 Aug 2022 21:14:40 +0000 (14:14 -0700)
committerBen Pfaff <blp@cs.stanford.edu>
Sat, 27 Aug 2022 21:14:40 +0000 (14:14 -0700)
src/language/stats/ctables.c

index 19c1bb84cc915c612b975f9da4956fca7a6201c3..cb38a37dea3a7801fe4848c9b3379c769e58975b 100644 (file)
@@ -2657,7 +2657,6 @@ static void
 ctables_summary_add (union ctables_summary *s,
                      const struct ctables_summary_spec *ss,
                      const union value *value,
-                     bool is_scale, bool is_scale_missing,
                      bool is_missing, bool is_included,
                      double weight)
 {
@@ -2696,9 +2695,7 @@ ctables_summary_add (union ctables_summary *s,
 
     case CTSF_VALIDN:
     case CTSF_areaPCT_VALIDN:
-      if (is_scale
-          ? !is_scale_missing
-          : !is_missing)
+      if (!is_missing)
         s->count += weight;
       break;
 
@@ -2706,16 +2703,14 @@ ctables_summary_add (union ctables_summary *s,
       break;
 
     case CTSF_MISSING:
-      if (is_scale
-          ? is_scale_missing
-          : is_missing)
+      if (is_missing)
         s->count += weight;
       break;
 
     case CTSF_MAXIMUM:
     case CTSF_MINIMUM:
     case CTSF_RANGE:
-      if (!is_scale_missing)
+      if (!is_missing)
         {
           if (s->min == SYSMIS || value->f < s->min)
             s->min = value->f;
@@ -2729,19 +2724,19 @@ ctables_summary_add (union ctables_summary *s,
     case CTSF_STDDEV:
     case CTSF_SUM:
     case CTSF_VARIANCE:
-      if (!is_scale_missing)
+      if (!is_missing)
         moments1_add (s->moments, value->f, weight);
       break;
 
     case CTSF_areaPCT_SUM:
-      if (!is_missing && !is_scale_missing)
+      if (!is_missing)
         moments1_add (s->moments, value->f, weight);
       break;
 
     case CTSF_MEDIAN:
     case CTSF_MODE:
     case CTSF_PTILE:
-      if (!is_scale_missing)
+      if (!is_missing)
         {
           s->ovalid += weight;
 
@@ -3286,12 +3281,12 @@ ctables_cell_add__ (struct ctables_section *s, const struct ccase *c,
   const union value *value = case_data (c, specs->var);
   bool is_missing = var_is_value_missing (specs->var, value);
   bool is_scale_missing
-    = specs->is_scale && (is_missing || is_listwise_missing (specs, c));
+    = is_missing || (specs->is_scale && is_listwise_missing (specs, c));
 
   for (size_t i = 0; i < specs->n; i++)
      ctables_summary_add (&cell->summaries[i], &specs->specs[i], value,
-                          specs->is_scale, is_scale_missing, is_missing,
-                          is_included, weight[specs->specs[i].weighting]);
+                          is_scale_missing, is_included,
+                          weight[specs->specs[i].weighting]);
   for (enum ctables_area_type at = 0; at < N_CTATS; at++)
     if (!(cell->omit_areas && (1u << at)))
       {