Fixed a bug in the Mann-Whitney test vs. missing=analysis.
[pspp] / src / language / stats / mann-whitney.c
index f752b463a2d434467eb300c6c74fefc3086a2b2d..cc82312ed3934a5ffb0924a69eb126d53b8b3b41 100644 (file)
@@ -107,7 +107,10 @@ mann_whitney_execute (const struct dataset *ds,
                                       CONST_CAST (struct n_sample_test *, nst),
                                       NULL);
 
-      
+      reader = casereader_create_filter_missing (reader, &var, 1,
+                                                exclude,
+                                                NULL, NULL);
+
       reader = sort_execute_1var (reader, var);
 
       rr = casereader_create_append_rank (reader, var,
@@ -122,9 +125,6 @@ mann_whitney_execute (const struct dataset *ds,
          const size_t group_var_width = var_get_width (nst->indep_var);
          const double rank = case_data_idx (c, rank_idx)->f;
 
-         if ( var_is_value_missing (var, val, exclude))
-           continue;
-
          if ( value_equal (group, &nst->val1, group_var_width))
            {
              mw[i].rank_sum[0] += rank;