X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=doc%2Fvariables.texi;h=7f6d89bee25767996f904f29fbc32dcb0c9c7366;hb=8fa37ab22125896c4549d8681804aa65095d4c1c;hp=00a02be61341bb3047b4bf8431cff278c8508808;hpb=0df9cdd3df66caf4353128feff3008289cda8115;p=pspp diff --git a/doc/variables.texi b/doc/variables.texi index 00a02be613..7f6d89bee2 100644 --- a/doc/variables.texi +++ b/doc/variables.texi @@ -1,3 +1,12 @@ +@c PSPP - a program for statistical analysis. +@c Copyright (C) 2017 Free Software Foundation, Inc. +@c Permission is granted to copy, distribute and/or modify this document +@c under the terms of the GNU Free Documentation License, Version 1.3 +@c or any later version published by the Free Software Foundation; +@c with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. +@c A copy of the license is included in the section entitled "GNU +@c Free Documentation License". +@c @node Variable Attributes @chapter Manipulating variables @@ -16,6 +25,7 @@ several utility functions for examining and adjusting them. * NUMERIC:: Create new numeric variables. * PRINT FORMATS:: Set variable print formats. * RENAME VARIABLES:: Rename variables. +* SORT VARIABLES:: Reorder variables. * VALUE LABELS:: Set value labels for variables. * STRING:: Create new string variables. * VARIABLE ATTRIBUTE:: Set custom attributes on variables. @@ -443,6 +453,82 @@ to be read. @cmd{RENAME VARIABLES} may not be specified following @cmd{TEMPORARY} (@pxref{TEMPORARY}). +@node SORT VARIABLES +@section SORT VARIABLES +@vindex SORT VARIABLES + +@display +SORT VARIABLES [BY] + (NAME | TYPE | FORMAT | LABEL | VALUES | MISSING | MEASURE + | ROLE | COLUMNS | ALIGNMENT | ATTRIBUTE @var{name}) + [(D)]. +@end display + +@cmd{SORT VARIABLES} reorders the variables in the active dataset. +The main specification is one of the following identifiers, which +determines how the variables are sorted: + +@table @asis +@item NAME +Sorts the variables according to their names, in a case-insensitive +fashion. However, when variable names differ only in a number at the +end, they are sorted numerically. For example, @code{VAR5} is sorted +before @code{VAR400} even though @samp{4} precedes @samp{5}. + +@item TYPE +Sorts numeric variables before string variables, and shorter string +variables before longer ones. + +@item FORMAT +Groups variables by print format; within a format, sorts narrower +formats before wider ones; with the same format and width, sorts fewer +decimal places before more decimal places. +@xref{FORMATS}. + +@item LABEL +Sorts variables without a variable label before those with one. +@xref{VARIABLE LABELS}. + +@item VALUES +Sorts variables without value labels before those with some. +@xref{VALUE LABELS}. + +@item MISSING +Sorts variables without missing values before those with some. +@xref{MISSING VALUES}. + +@item MEASURE +Sorts nominal variables first, followed by ordinal variables, followed +by scale variables. @xref{VARIABLE LEVEL}. + +@item ROLE +Groups variables according to their role. @xref{VARIABLE ROLE}. + +@item COLUMNS +Sorts variables in ascending display width. @xref{VARIABLE WIDTH}. + +@item ALIGNMENT +Sorts variables according to their alignment, first left-aligned, then +right-aligned, then centered. @xref{VARIABLE ALIGNMENT}. + +@item ATTRIBUTE @var{name} +Sorts variables according to the first value of their @var{name} +attribute. Variables without attribute are sorted first. +@xref{VARIABLE ATTRIBUTE}. +@end table + +Only one sort criterion can be specified. The sort is ``stable,'' so +to sort on multiple criteria one may perform multiple sorts. For +example, the following will sort primarily based on alignment, with +variables that have the same alignment ordered based on display width: + +@example +SORT VARIABLES BY COLUMNS. +SORT VARIABLES BY ALIGNMENT. +@end example + +Specify @code{(D)} to reverse the sort order. + @node VALUE LABELS @section VALUE LABELS @vindex VALUE LABELS @@ -452,11 +538,16 @@ VALUE LABELS /@var{var_list} @var{value} '@var{label}' [@var{value} '@var{label}']@dots{} @end display -@cmd{VALUE LABELS} allows values of numeric and short string +@cmd{VALUE LABELS} allows values of variables to be associated with labels. In this way, a short value can -stand for a long value. +stand for a longer, more descriptive label. + +Both numeric and string variables can be given labels. For string +variables, the values are case-sensitive, so that, for example, a +capitalized value and its lowercase variant would have to be labeled +separately if both are present in the data. -To set up value labels for a set of variables, specify the +To set up value labels for one or more variables, specify the variable names after a slash (@samp{/}), followed by a list of values and their associated labels, separated by spaces. @@ -700,18 +791,20 @@ were consecutive members of an array with a vector(index) notation. To make a vector out of a set of existing variables, specify a name for the vector followed by an equals sign (@samp{=}) and the variables -to put in the vector. All the variables in the vector must be the same -type. String variables in a vector must all have the same width. +to put in the vector. The variables must be all numeric or all +string, and string variables must have the same width. To make a vector and create variables at the same time, specify one or -more vector names followed by a count in parentheses. This will cause -variables named @code{@var{vec}1} through @code{@var{vec}@var{count}} -to be created as numeric variables. By default, the new variables -have print and write format F8.2, but an alternate format may be -specified inside the parentheses before or after the count and -separated from it by white space or a comma. Variable names including -numeric suffixes may not exceed 64 characters in length, and none of -the variables may exist prior to @cmd{VECTOR}. +more vector names followed by a count in parentheses. This will +create variables named @code{@var{vec}1} through +@code{@var{vec}@var{count}}. By default, the new variables are +numeric with format F8.2, but an alternate format may be specified +inside the parentheses before or after the count and separated from it +by white space or a comma. With a string format such as A8, the +variables will be string variables; with a numeric format, they will +be numeric. Variable names including the suffixes may not exceed 64 +characters in length, and none of the variables may exist prior to +@cmd{VECTOR}. Vectors created with @cmd{VECTOR} disappear after any procedure or procedure-like command is executed. The variables contained in the