static void postcalc (const struct oneway_spec *cmd);
static void precalc (const struct oneway_spec *cmd);
static void postcalc (const struct oneway_spec *cmd);
static void precalc (const struct oneway_spec *cmd);
-updateit (void *user_data, const struct variable *wv,
+updateit (void *user_data,
+ enum mv_class exclude,
+ const struct variable *wv,
- ws.dd_total = xmalloc (sizeof (struct descriptive_data) * cmd->n_vars);
+ ws.actual_number_of_groups = 0;
+ ws.vws = xmalloc (cmd->n_vars * sizeof (*ws.vws));
+ ws.dd_total = xmalloc (sizeof (struct descriptive_data) * cmd->n_vars);
+ const struct variable *v = cmd->vars[i];
+ const union value *val = case_data (c, v);
+
+ if ( MISS_ANALYSIS == cmd->missing_type)
+ {
+ if ( var_is_value_missing (v, val, cmd->exclude))
+ continue;
+ }
+
struct group_proc *gp = group_proc_get (cmd->vars[i]);
struct hsh_table *group_hash = gp->group_hash;
struct group_proc *gp = group_proc_get (cmd->vars[i]);
struct hsh_table *group_hash = gp->group_hash;
+ const struct variable *v = cmd->vars[i];
+ const union value *val = case_data (c, v);
+
+ if ( MISS_ANALYSIS == cmd->missing_type)
+ {
+ if ( var_is_value_missing (v, val, cmd->exclude))
+ continue;
+ }
+
gsl_matrix *cm = covariance_calculate_unnormalized (pvw->cov);
const struct categoricals *cats = covariance_get_categoricals (pvw->cov);
gsl_matrix *cm = covariance_calculate_unnormalized (pvw->cov);
const struct categoricals *cats = covariance_get_categoricals (pvw->cov);
for (v = 0; v < cmd->n_vars; ++v)
{
struct categoricals *cats = covariance_get_categoricals (ws.vws[v].cov);
categoricals_done (cats);
for (v = 0; v < cmd->n_vars; ++v)
{
struct categoricals *cats = covariance_get_categoricals (ws.vws[v].cov);
categoricals_done (cats);
if (!taint_has_tainted_successor (taint))
output_oneway (cmd, &ws);
if (!taint_has_tainted_successor (taint))
output_oneway (cmd, &ws);
if (ll_count (&cmd->contrast_list) > 0)
{
show_contrast_coeffs (cmd, ws);
show_contrast_tests (cmd, ws);
}
if (ll_count (&cmd->contrast_list) > 0)
{
show_contrast_coeffs (cmd, ws);
show_contrast_tests (cmd, ws);
}
/* Degrees of freedom */
tab_fixed (t, 3, i * 3 + 1, 0, df1, 4, 0);
tab_fixed (t, 3, i * 3 + 2, 0, df2, 4, 0);
/* Degrees of freedom */
tab_fixed (t, 3, i * 3 + 1, 0, df1, 4, 0);
tab_fixed (t, 3, i * 3 + 2, 0, df2, 4, 0);
- tab_fixed (t, 3, i * 3 + 3, 0, pvw->cc - 1, 4, 0);
+ tab_fixed (t, 3, i * 3 + 3, 0, n - 1, 4, 0);
/* Mean Squares */
tab_double (t, 4, i * 3 + 1, TAB_RIGHT, msa, NULL);
/* Mean Squares */
tab_double (t, 4, i * 3 + 1, TAB_RIGHT, msa, NULL);
const struct per_var_ws *pvw = &ws->vws[v];
const struct categoricals *cats = covariance_get_categoricals (pvw->cov);
const struct per_var_ws *pvw = &ws->vws[v];
const struct categoricals *cats = covariance_get_categoricals (pvw->cov);
double F = gp->levene;
tab_text (t, 0, v + 1, TAB_LEFT | TAT_TITLE, s);
double F = gp->levene;
tab_text (t, 0, v + 1, TAB_LEFT | TAT_TITLE, s);