size_t var_cnt; /* Number of variables. */
enum dsc_missing_type missing_type; /* Treatment of missing values. */
enum mv_class exclude; /* Classes of missing values to exclude. */
- struct variable *filter; /* Dictionary FILTER BY variable. */
+ const struct variable *filter; /* Dictionary FILTER BY variable. */
struct casereader *z_reader; /* Reader for count, mean, stddev. */
casenumber count; /* Number left in this SPLIT FILE group.*/
bool ok;
else
{
enum dsc_statistic s = match_statistic (lexer);
- if (s == DSC_NONE )
+ if (s == DSC_NONE)
{
lex_error (lexer, NULL);
goto error;
else
{
dsc->sort_by_stat = match_statistic (lexer);
- if (dsc->sort_by_stat == DSC_NONE )
+ if (dsc->sort_by_stat == DSC_NONE)
dsc->sort_by_stat = DSC_MEAN;
}
if (lex_match (lexer, T_LPAREN))
const struct dsc_z_score *z;
for (z = t->z_scores; z < t->z_scores + t->z_score_cnt; z++)
- case_data_rw (c, z->z_var)->f = SYSMIS;
+ *case_num_rw (c, z->z_var) = SYSMIS;
}
/* Transformation function to calculate Z-scores. Will return SYSMIS if any of
{
if (t->ok)
{
- msg (SE, _("Internal error processing Z scores"));
+ msg (SE, _("Internal error processing Z scores. "
+ "Please report this to %s."),
+ PACKAGE_BUGREPORT);
t->ok = false;
}
descriptives_set_all_sysmis_zscores (t, *c);
for (z = t->z_scores; z < t->z_scores + t->z_score_cnt; z++)
{
double input = case_num (*c, z->src_var);
- double *output = &case_data_rw (*c, z->z_var)->f;
+ double *output = case_num_rw (*c, z->z_var);
if (z->mean == SYSMIS || z->std_dev == SYSMIS
|| var_is_num_missing (z->src_var, input, t->exclude))
t->z_score_cnt = cnt;
t->missing_type = dsc->missing_type;
t->exclude = dsc->exclude;
- if ( t->missing_type == DSC_LISTWISE )
+ if (t->missing_type == DSC_LISTWISE)
{
t->var_cnt = dsc->var_cnt;
t->vars = xnmalloc (t->var_cnt, sizeof *t->vars);
calc_descriptives (struct dsc_proc *dsc, struct casereader *group,
struct dataset *ds)
{
- struct variable *filter = dict_get_filter (dataset_dict (ds));
+ const struct variable *filter = dict_get_filter (dataset_dict (ds));
struct casereader *pass1, *pass2;
casenumber count;
struct ccase *c;
{
c = case_create (casewriter_get_proto (dsc->z_writer));
z_idx = 0;
- case_data_rw_idx (c, z_idx++)->f = count;
+ *case_num_rw_idx (c, z_idx++) = count;
}
else
c = NULL;
if (dv->z_name && c != NULL)
{
- case_data_rw_idx (c, z_idx++)->f = dv->stats[DSC_MEAN];
- case_data_rw_idx (c, z_idx++)->f = dv->stats[DSC_STDDEV];
+ *case_num_rw_idx (c, z_idx++) = dv->stats[DSC_MEAN];
+ *case_num_rw_idx (c, z_idx++) = dv->stats[DSC_STDDEV];
}
}
table, PIVOT_AXIS_ROW, N_("Variable"));
for (size_t i = 0; i < dsc->var_cnt; i++)
{
- struct dsc_var *dv = &dsc->vars[i];
+ const struct dsc_var *dv = &dsc->vars[i];
int row = pivot_category_create_leaf (variables->root,
pivot_value_new_variable (dv->v));