-
- struct string pair_name;
- ds_init_cstr (&pair_name, var_to_string ((*vp)[0]));
- ds_put_cstr (&pair_name, " - ");
- ds_put_cstr (&pair_name, var_to_string ((*vp)[1]));
-
- tab_text (table, 1, 1 + i * 4, TAB_LEFT, _("Negative Ranks"));
- tab_text (table, 1, 2 + i * 4, TAB_LEFT, _("Positive Ranks"));
- tab_text (table, 1, 3 + i * 4, TAB_LEFT, _("Ties"));
- tab_text (table, 1, 4 + i * 4, TAB_LEFT, _("Total"));
-
- tab_hline (table, TAL_1, 0, tab_nc (table) - 1, 1 + i * 4);
-
-
- tab_text (table, 0, 1 + i * 4, TAB_LEFT, ds_cstr (&pair_name));
- ds_destroy (&pair_name);
-
-
- /* N */
- tab_double (table, 2, 1 + i * 4, TAB_RIGHT, ws[i].negatives.n, wfmt);
- tab_double (table, 2, 2 + i * 4, TAB_RIGHT, ws[i].positives.n, wfmt);
- tab_double (table, 2, 3 + i * 4, TAB_RIGHT, ws[i].n_zeros, wfmt);
-
- tab_double (table, 2, 4 + i * 4, TAB_RIGHT,
- ws[i].n_zeros + ws[i].positives.n + ws[i].negatives.n, wfmt);
-
- /* Sums */
- tab_double (table, 4, 1 + i * 4, TAB_RIGHT, ws[i].negatives.sum, NULL);
- tab_double (table, 4, 2 + i * 4, TAB_RIGHT, ws[i].positives.sum, NULL);
-
-
- /* Means */
- tab_double (table, 3, 1 + i * 4, TAB_RIGHT,
- ws[i].negatives.sum / (double) ws[i].negatives.n, NULL);
-
- tab_double (table, 3, 2 + i * 4, TAB_RIGHT,
- ws[i].positives.sum / (double) ws[i].positives.n, NULL);
-
+ int pair_idx = add_pair_leaf (pairs, vp);
+
+ const struct wilcoxon_state *w = &ws[i];
+ put_row (table, pair_idx, 0, w->negatives.n, w->negatives.sum);
+ put_row (table, pair_idx, 1, w->positives.n, w->positives.sum);
+ put_row (table, pair_idx, 2, w->n_zeros, SYSMIS);
+ put_row (table, pair_idx, 3,
+ w->n_zeros + w->positives.n + w->negatives.n, SYSMIS);