Sorts tables so their margins are in ascending or descending order (R.W. Payne).
Options
PRINT = string tokens |
Controls output (tables , histograms ); default * i.e. none |
---|---|
DIRECTION = string token |
Direction of sorting (ascending , descending ); default asce |
METHOD = string token |
Method to use to construct a marginal table for the sorting of a factor when there is no one-way table classified by the factor in the TABLE list, and the first table in the TABLE list classified by the factor has no margins (totals , means , minima , maxima , variances , medians ); default tota |
FACTORS = pointer |
Specifies or saves a list of classifying factors of the tables in the TABLE list |
NEWFACTORS = pointer |
Specifies or saves a list of classifying factors of the new tables, corresponding to those in the FACTORS pointer |
EXCLUDE = pointer |
Factors to exclude from sorting |
NBEST = string tokens |
Number of (best) levels to include from each sorted factor; default * i.e. all of them |
Parameters
TABLE = tables |
Tables to be sorted |
---|---|
NEWTABLE = tables |
Allows the new sorted tables to be saved |
TITLE = texts |
Title to be used when displaying each table |
FIELDWIDTH = scalars |
Field width for printing each table |
DECIMALS = scalars |
Decimal places for each table |
Description
This procedure sorts tables so that their margins are in a specified order. With a multi-way table, for example, this may help in interpreting an interaction from an analysis of variance. With a one-way table, it allows the cells to be displayed in ascending order, as in a Pareto chart.
The original tables are supplied by the TABLE
parameter. The NEWTABLE
parameter can be used to save the sorted tables.
If you want to specify your own ordering, the FACTORS
and NEWFACTORS
options can be set to pointers of pre-defined factors indicating the ways in which each dimension of the tables is to be sorted: FACTORS
contains factors from the classifying sets of the original tables, and NEWFACTORS
contains the corresponding factors for the new tables (with the levels in the new order).
Alternatively, you can let TABSORT
define the ordering. For each factor classifying the original tables, the ordering is obtained using a one-way table for that factor. This may be available amongst the list of original tables (specified by the TABLE
parameter). If not, TABSORT
finds the first table in the list with the factor in its classifying set. If the table has margins, then TABSORT
will extract the appropriate one-way margin. Otherwise, it first constructs the margins using the MARGIN
directive; the METHOD
option then defines how the margin is formed (using means, medians and so on). Having obtained a suitable one-way table, TABSORT
forms a new factor whose levels are in the order that will arrange the entries of the table in either ascending or descending order according to the setting of the DIRECTION
option (default ascending
). The FACTORS
and NEWFACTORS
options can then be used to save pointers containing the factors and reordered factors for future use. Note also, that even if you do not want to use the factors in future, you can use the pointers to specify identifiers for the new factors to be used when the tables are printed. (You must specify both of them, so that TABSORT
can tell how the new identifiers correspond to the original factors.) The EXCLUDE
option can be set to a pointer containing factors that are not to be re-ordered automatically, but should be left unchanged.
The NBEST
option specifies the number of levels to include from each sorted factor. So, setting NBEST=5
would take only the first five levels in the sorted order. This may be useful if you have a large table, and want to show only the best part of the table (as defined by the sorting of the margins). This default is to include all of the levels.
The PRINT
option controls the output produced by TABSORT
. The setting tables
prints the tables. The setting histograms
, causes any one-way tables to be plotted by the DHISTOGRAM
directive, and any two-way tables to be plotted by D3HISTOGRAM
. The TITLE
parameter allows you to supply a title to be used in the display of each table. The FIELDWIDTH
parameter specifies field widths, and the DECIMALS
parameter specified numbers of decimal places.
Options: PRINT
, DIRECTION
, METHOD
, FACTORS
, NEWFACTORS
, EXCLUDE
, NBEST
.
Parameters: TABLE
, NEWTABLE
, TITLE
, FIELDWIDTH
, DECIMALS
.
Method
TABSORT
uses FACSORT
to sort the factors and COMBINE
to reorder the table.
See also
Directives: COMBINE
, TABLE
, TABULATE
, MARGIN
.
Procedures: MTABULATE
, SVSTRATIFIED
, SVTABULATE
, TABINSERT
, TABMODE
, T%CONTROL
.
Commands for: Calculations and manipulation, Six sigma, Survey analysis.
Example
CAPTION 'TABSORT example',\ 'Data from Snedecor & Cochran (1980), Statistical Methods',\ '(seventh edition), p.305.'; STYLE=meta,plain FACTOR [NVALUES=60; LABELS=!T(Beef,Cereal,Pork); VALUES=(1...3)20] Source FACTOR [NVALUES=60; LABELS=!T(High,Low); VALUES=3(1,2)10] Amount VARIATE [NVALUES=60] Gain READ Gain 73 98 94 90 107 49 102 74 79 76 95 82 118 56 96 90 97 73 104 111 98 64 80 86 81 95 102 86 98 81 107 88 102 51 74 97 100 82 108 72 74 106 87 77 91 90 67 70 117 86 120 95 89 61 111 92 105 78 58 82 : TREATMENTS Source*Amount ANOVA [PRINT=means; FPROBABILITY=yes] Gain AKEEP Source*Amount; MEANS=SourceMeans,AmountMeans,SourceByAmountMeans TABSORT [PRINT=tables] SourceMeans,AmountMeans,SourceByAmountMeans