X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=src%2Fmath%2Ffactor-stats.h;h=3c1c7f91043f22864091cdca935e6182044f140a;hb=f463d854c12bda4f9f12f798ba12d3ea88c3a9ed;hp=6fa8650b261c31425b2ebd420f23bdf747e718b1;hpb=dcf9b154cbcaa35c3d8459a201b77eec8bcb30bd;p=pspp-builds.git diff --git a/src/math/factor-stats.h b/src/math/factor-stats.h index 6fa8650b..3c1c7f91 100644 --- a/src/math/factor-stats.h +++ b/src/math/factor-stats.h @@ -1,32 +1,28 @@ -/* PSPP - A program for statistical analysis . -*-c-*- +/* PSPP - a program for statistical analysis. + Copyright (C) 2004 Free Software Foundation, Inc. -Copyright (C) 2004 Free Software Foundation, Inc. -Author: John Darrington 2004 + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. -This program is free software; you can redistribute it and/or -modify it under the terms of the GNU General Public License as -published by the Free Software Foundation; either version 2 of the -License, or (at your option) any later version. + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. -This program is distributed in the hope that it will be useful, but -WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program; if not, write to the Free Software -Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. */ + You should have received a copy of the GNU General Public License + along with this program. If not, see . */ #ifndef FACTOR_STATS #define FACTOR_STATS -/* FIXME: These things should probably be amalgamated with the +/* FIXME: These things should probably be amalgamated with the group_statistics struct */ -#include "hash.h" -#include "value.h" +#include +#include #include #include #include "percentiles.h" @@ -39,13 +35,13 @@ struct metrics double n; double n_missing; - + double min; double max; double mean; - + double se_mean; double var; @@ -90,7 +86,7 @@ struct metrics * metrics_create(void); void metrics_precalc(struct metrics *m); -void metrics_calc(struct metrics *m, const union value *f, double weight, +void metrics_calc(struct metrics *m, const union value *f, double weight, int case_no); void metrics_postcalc(struct metrics *m); @@ -106,7 +102,7 @@ struct case_node struct case_node *next; }; -struct weighted_value +struct weighted_value { union value v; @@ -114,14 +110,14 @@ struct weighted_value double w; /* The cumulative weight */ - double cc; + double cc; /* The rank */ double rank; /* Linked list of cases nos which have this value */ struct case_node *case_nos; - + }; @@ -134,7 +130,7 @@ void weighted_value_free(struct weighted_value *wv); struct factor_statistics { /* The values of the independent variables */ - union value id[2]; + union value *id[2]; /* The an array stats for this factor, one for each dependent var */ struct metrics *m; @@ -146,8 +142,9 @@ struct factor_statistics { /* Create a factor statistics object with for N dependent vars and ID as the value of the independent variable */ -struct factor_statistics * -create_factor_statistics (int n, union value *id0, union value *id1); +struct factor_statistics * create_factor_statistics (int n, + union value *id0, + union value *id1); void factor_statistics_free(struct factor_statistics *f); @@ -155,13 +152,11 @@ void factor_statistics_free(struct factor_statistics *f); /* Compare f0 and f1. width is the width of the independent variable */ -int +int factor_statistics_compare(const struct factor_statistics *f0, const struct factor_statistics *f1, int width); - - -unsigned int +unsigned int factor_statistics_hash(const struct factor_statistics *f, int width); #endif