docuemntation and refacotring
[pspp] / doc / statistics.texi
index b1e040283d1b6dcf19231f9e5cf87607df71124f..351842e94e24b285995c3e5acdbba683bdfc35f9 100644 (file)
@@ -1697,7 +1697,20 @@ variables may be ``totaled'' indirectly by enabling totals and
 subtotals on a categorical variable within which the scalar variable is
 summarized.
 
-@c TODO Specifying summaries for totals and subtotals
+By default, @pspp{} uses the same summary functions for totals and
+subtotals as other categories.  To summarize totals and subtotals
+differently, specify the summary functions for totals and subtotals
+after the ordinary summary functions inside a nested set of @code{[]}
+following @code{TOTALS}.  For example, the following syntax displays
+@code{COUNT} for individual categories and totals and @code{VALIDN}
+for totals, as shown:
+
+@example
+CTABLES
+    /TABLE qnd7a [COUNT, TOTALS[COUNT, VALIDN]]
+    /CATEGORIES VARIABLES=qnd7a TOTAL=YES MISSING=INCLUDE.
+@end example
+@psppoutput {ctables26}
 
 @subsubheading Categories Without Values
 
@@ -1823,55 +1836,68 @@ Show nothing.
 @node CTABLES Missing Value Treatment
 @subsection Missing Value Treatment
 
+The @code{TABLE} subcommand on @code{CTABLES} specifies two different
+kinds of variables: variables that divide tables into cells (which are
+always categorical) and variables being summarized (which may be
+categorical or scale).  @pspp{} treats missing values differently in
+each kind of variable:
 
+@itemize @bullet
+@item
+For variables that divide tables into cells, per-variable category
+options determine which data is analyzed.  If any of the categories
+for such a variable would exclude a case, then that case is not
+included.
 
-The sections below describe how @code{CTABLES} treats missing values
-in categorical and scale variables.
+@item
+The treatment of missing values in variables being summarized varies
+between scale and scale and categorical variables.  The following
+section describes their treatment in detail.
 
-@node CTABLES Categorical Missing Values
-@subsubsection Categorical Missing Values
+By default, each summarized variable is considered separately for
+missing value treatment.  A section below describes how to consider
+missing values listwise for summarizing scale variables.
+@end itemize
 
-For categorical variables, in most cases, values that are valid and in
-included categories are analyzed, and values that are missing or in
-excluded categories are not analyzed.  (@xref{CTABLES Per-Variable
-Category Options}), for information on included and excluded
-categories.)  The exact rules are shown in the following chart, in
-which cells that contain ``yes'' indicate that a value is analyzed:
+@node CTABLES Missing Values for Summary Variables
+@subsubsection Missing Values for Summary Variables
 
-@multitable {@headitemfont{System-Missing}} {Included Category} {Excluded Category}
-@headitem                           @tab Included Category    @tab Excluded Category
-@item @headitemfont{Valid}          @tab yes                  @tab ---
-@item @headitemfont{User-Missing}   @tab yes [*]              @tab --- [+]
-@item @headitemfont{System-Missing} @tab n/a [#]              @tab --- [+]
-@end multitable
+For summary variables, values that are valid and in included
+categories are analyzed, and values that are missing or in excluded
+categories are not analyzed, with the following exceptions:
 
-@table @asis
-@item [*]
-Exceptions: The ``@t{VALIDN}'' summary functions (@code{VALIDN},
-@code{EVALIDN}, @code{UVALIDN}, @code{@i{area}PCT.VALIDN}, and
-@code{U@i{area}PCT.VALIDN}), which only count valid values in included
-categories.
+@itemize @bullet
+@item
+The ``@t{VALIDN}'' summary functions (@code{VALIDN}, @code{EVALIDN},
+@code{UVALIDN}, @code{@i{area}PCT.VALIDN}, and
+@code{U@i{area}PCT.VALIDN}) only count valid values in included
+categories (not missing values in included categories).
 
-@item [+]
-Exceptions: The ``@t{TOTALN}'' summary functions (@code{TOTALN},
-@code{ETOTALN}, @code{UTOTALN}, @code{@i{area}PCT.TOTALN}), and
-@code{U@i{area}PCT.TOTALN}, which count all values (valid and missing)
-in included categories and missing (but not valid) values in excluded
+@item
+The ``@t{TOTALN}'' summary functions (@code{TOTALN}, @code{ETOTALN},
+@code{UTOTALN}, @code{@i{area}PCT.TOTALN}), and
+@code{U@i{area}PCT.TOTALN} count all values (valid and missing) in
+included categories and missing (but not valid) values in excluded
 categories.
-
-@item [#]
-System-missing values are never in included categories.
-@end table
+@end itemize
 
 @noindent
-The following table provides another view of the same information:
-
-@multitable {Missing values in excluded categories} {@code{VALIDN}} {other} {@code{TOTALN}}
-@headitem @tab @code{VALIDN} @tab other @tab @code{TOTALN}
-@item Valid values in included categories   @tab yes @tab yes @tab yes
-@item Missing values in included categories @tab --- @tab yes @tab yes
-@item Missing values in excluded categories @tab --- @tab --- @tab yes
-@item Valid values in excluded categories   @tab --- @tab --- @tab ---
+For categorical variables, system-missing values are never in included
+categories.  For scale variables, there is no notion of included and
+excluded categories, so all values are effectively included.
+
+The following table provides another view of the above rules:
+
+@multitable {@w{ }@w{ }@w{ }@w{ }Missing values in excluded categories} {@t{VALIDN}} {other} {@t{TOTALN}}
+@headitem @tab @t{VALIDN} @tab other @tab @t{TOTALN}
+@item @headitemfont{Categorical variables:}
+@item @w{ }@w{ }@w{ }@w{ }Valid values in included categories   @tab yes @tab yes @tab yes
+@item @w{ }@w{ }@w{ }@w{ }Missing values in included categories @tab --- @tab yes @tab yes
+@item @w{ }@w{ }@w{ }@w{ }Missing values in excluded categories @tab --- @tab --- @tab yes
+@item @w{ }@w{ }@w{ }@w{ }Valid values in excluded categories   @tab --- @tab --- @tab ---
+@item @headitemfont{Scale variables:}
+@item @w{ }@w{ }@w{ }@w{ }Valid values                          @tab yes @tab yes @tab yes
+@item @w{ }@w{ }@w{ }@w{ }User- or system-missing values        @tab --- @tab yes @tab yes
 @end multitable
 
 @node CTABLES Scale Missing Values