Output options
Output options are those which affect the way your tables are formatted and printed. They do not determine how the data is tabulated or how the individual cell counts are calculated.
Options
Unless otherwise stated, all options are valid on a, sectbeg, flt and tab statements.
acr100
This prints the text ‘100%’ on each cell of the base column when row percentages are requested with op=0. Normally, a base column contains absolute figures only. If acr100 is used without row percentages, it is ignored.
anlev=
Defines the analysis level at which axes are to be cross-tabulated in a hierarchical (trailer card) job.
For more information about analysis levels, see
Dealing with hierarchical data.
axttx
This option creates table titles of the form ‘axis name by axis name’. x can be l (lowercase L) for a title printed in the left, c for a title printed in the center of the line, r for a title on the right, or a number between 1 and 9 to have the title indented by ten times that amount of spaces. For example axtt5 will indent the title by 50 spaces. You can also type axttg to have the start of the title lined up with the start of the column headings.
baft
This keyword causes any table titles starting with the word ‘Base’ to be printed after all other titles for that table. If the keyword base appears on a ttbeg/ttend/ttord statement and baft is also used, an error message is generated.
Note Do not use baft with ttbeg=base since the two are incompatible.
colwid=n
Defines the width of columns in the printed tables where no p statements exist in the column axis.
For a full discussion about creating column headings, see
Manual set-up.
csort
Sort tables column-wise (that is, horizontal sorting rather than vertical row-wise sorting).
date
By default, tables are printed without a date. Use of the keyword date causes the current date to be printed in the top right corner of each table. The date is in the format dd mmm yy; for example, 3 OCT 00.
dec=n
This determines the number of decimal places for absolute figures. If dec= is not used, the default of no decimal places is assumed.
decp=n
This sets the number of decimal places required for percentages. The default is decp=1 meaning one decimal place. This applies when op=0, 2, 7 or & (see below). Any number of decimal places are allowed, as long as you make each column wide enough to accommodate them.
Note Remember that Quantum’s calculations are accurate to six digits only.
dsp
This leaves one blank line between each row of data in a table. Without this, one line follows directly underneath another.
flt=name
Invokes the filter conditions and titles named on the flt= statement. If the filter defines conditions, the rules governing data options apply. This option is valid on sectbeg, flt and tab statements, but not on the a statement.
For information on the
flt= statement, see
Named filters.
flush
Causes rows containing percentages to be printed with the percentages directly below the absolutes rather than one column to the right. For example, a column might contain an absolute figure of 39 which is 15.1% of the total. Here is the difference in the output between using and not using flush:
Without flush
39
15.1%
With flush
39
15.1%
flush prints the right-most digits of the absolute and percentage figures one under the other; it does not print the percentage sign underneath the absolute number.
Where further adjustments are necessary, use pcpos=.
font=(ttype=fnum, ... )
Use this keyword when you want your tables to be printed in PostScript on a laser printer. font= defines the fonts in which various types of output are to be printed. Fonts are entered in the format shown above where ttype defines the text type and fnum is the number of the font (between 0 and 9) to be used for that text. Fonts and the numbers which represent them are defined on a per site basis: your system administrator will know what they are. Text types are:
def | default font |
a | text following the a statement |
bot | text following bot statements |
foot | text following foot statements |
flt | text following flt statements |
tab | text following tab statements |
tb | table numbers |
sidett | titles after the row l statement |
toptt | titles after the column l statement |
stub | row element texts |
text | n03 and n23 texts |
banner | g statement / column n01 texts |
numb | all numbers |
pc | all percentages |
colpc | column percentages |
rowpc | row percentages |
stats | statistical row texts and numbers |
page | page text and numbers |
type | output type text |
date | the date |
Text for which no font is defined is automatically printed in the standard laser printing font.
If most of the table is to be printed in the same font, you can define this font as the default font (using the text type def=). However, if this option is used, it must precede all other options.
Similarly, you can use the option pc to define a font for all percentage figures, but if you then want to have row and/or column percentages in yet another font, the options rowpc and/or colpc must follow pc otherwise they will be overridden by the more general percentage font.
For example, you might have three fonts; 1 is standard type, 2 is bold and 3 is italic. To print all run level titles (that is, those following the a statement) in bold and all percentages in italics, write:
a;font=(a=2,pc=3)
All other texts are printed in font number 1, the standard font.
Because of the way in which Quantum stores the font changes, tables to be laser printed must have a page width of 132 or 158 characters defined on the a statement.
Do not use font= if you do not want to use PostScript printing because it causes the font numbers to be printed on the right side of the tab_ file.
For more information about laser printing, see
Laser printed tables with PostScript.
graph=
Produces SYLK format files for use with graphics or spreadsheet packages which read this type of files (for example, Chart, Graphwriter for graphics and Symphony for spreadsheet applications). A separate file is created for each table containing the statements necessary to reproduce the table as a 2-dimensional bar chart.
By default, Quantum removes all base elements and only saves absolute figures. Table title are created from the row axis according to the hierarchy hd=, ttl, n23 using the first title found. If none of these types of title exists, a title of the form ‘row axis by column axis’ is generated, as in the axtt option. You can override any or all of these defaults by using the parameters listed below:
rb | show row base figures. |
cb | show column base figures. |
pc | show percentages only. Where tables are created with more than one type of percentage, the priority is column then row then total percents. |
text | graph title. |
For more information on graphics files, see
Files created by Quantum.
hitch=
Prints the current table on the same page as the previous table if there is room for the whole table on the page. If the current table has more than one page, Quantum prints its first page on the same page as the previous table.
indent=n
Where a row text is longer than the space allocated to the row text in the table, Quantum breaks the line in between words and continues the text on the next line. To have these continuation lines indented from the left margin, specify the amount of indentation required with indent=. Texts can be indented by between 0 and 15 spaces: the default is indent=0.
lang=xxx
This is only valid on a and tab statements:
▪On the a statement, it specifies that this is a multilingual survey and xxx is the one to three character code of the default language.
▪On the tab statement, xxx specifies the language in which axis texts are to be printed.
When used on a tab statement, the default language must be specified on the a statement.
For more information, see
Multilingual surveys.
linesaft=
Defines the number of blank lines to print after the last line of column headings. The default is one blank line.
linesbef=
Defines the number of blank lines to print before the first line of column headings. The default is two blank lines.
manipz
Apply spechar, nz, nzrow and nzcol to elements created using manipulation.
For information on manipulating elements and tables, see
Row and table manipulation.
maxsortedcols=n
maxsortedrows=n
(For tables with sorted columns or rows.) Specifies the number of elements to print. For example, you might print only the elements with the ten highest frequencies.
If these options are set globally, you can turn them off for an individual section or table by specifying maxsortedrows=0 or maxsortedcols=0 at the appropriate level.
The maximum number of elements that can be printed in this way is 250.
These keywords are ignored if the table is not sorted in the given direction.
netsm
Indicates that suppressed elements should be collected into an element flagged with smsup+ only if that element is at the same level as the suppressed elements. For example, if an element at net level 2 is suppressed because its cell counts are below a given value, that element will only be included in the table if there is an element with smsup+ at level 2 into which it can be added.
Without netsm, suppressed elements will be added into the next smsup+ element regardless of whether it is at the correct level. Thus, an smsup+ element at level 2 might contain elements at level 2 and also any previously suppressed elements from level 1.
netsort
This statement is valid on a and l statements only.
Requests that nets defined with the net statement should be sorted according to their net level. This means that nets at level 1 will be sorted and, within them, nets at level 2, and so on. Elements within a net are also sorted.
When netsort is used, each level below level 1 will be indented by 2 spaces per level — thus nets at level 2 are indented by 2 spaces (1x2 spaces); nets at level 3 are indented by 4 spaces (2x2 spaces). The elements comprising a net are indented by an additional two spaces.
The number of spaces indentation can be varied using netsort=n, where n is a whole number in the range 1 to 9, and is the number of spaces by which to indent. For example, netsort=3 will indent by multiples of 3 spaces. If a global indentation is set for all sorted tables of nets in the run, it can be turned off for an individual table by entering nonetsort or netsort=0 on the l statement for the table’s row axis.
For netsort to work, the keyword sort must be present on the same statement as netsort or on a statement at a higher level. For example, to sort the nets in a single table, place netsort on the l statement of the row axis and sort on the a, sectbeg, flt or tab statement.
For examples of nets and sorted nets, see
Netting and
Sorting tables.
For more information about subsorts, see
Sorting with subsort and endsort.
nooverlapfoot
Suppress the footnote that is automatically printed on tables with special T‑statistics run on overlapping data.
For more information, see
Overlapping data.
noprint
Suppresses the printing of a table.
nostatspechar
(Used with
spechar=: see
spechar=ab.)
spechar= defines characters to be used in place of values that are zero or that round to zero.
nostatpechar restricts
spechar so that it does not affect statistical elements, and their values are shown as calculated.
(Statistical elements are: n12, n17, n19, n20, and elements with the option stat=t1.)
To replace values for statistical elements that are zero or round to zero, see
statspechar='characters'.
notauto
Suppresses the automatic footnotes that describe which special T‑statistics have been applied to a table.
For more information, see
Suppressing footnotes.
notbl
Suppresses table numbers requested with tbl or tbr statements.
nzcol
Suppresses the printing of columns where all cells are zero or round to zero.
When columns are suppressed in an axis whose column headings are defined on g statements, Quantum ignores the g statements and creates its own column headings using the texts defined on the elements themselves.
For a description of how to create column headings with
g statements, see
Using axes as columns.
nzrow
Suppresses the printing of rows where all cells are zero or round to zero.
op=n
This keyword governs the type of output in the tables. Output types are:
& | Total percentages. The value in the cell is percentaged against the number in the upper left corner of the table (normally the base) rather than on the totals in the relevant column or row. If the table contains more than one base element, percentages are calculated using the leftmost figure in the most recent base element. |
– | Row rank figures are printed below each cell. Figures are ranked within rows, using 1 for the largest figure. Where two or more numbers have the same rank, they are all assigned the lowest rank possible. Thus, if the previous rank was 2 and the next value to be ranked occurs in the row three times, those numbers will all be ranked 5. You can not request row and column ranks in the same table. |
0 | Row percentages. |
1 | Absolute figures (default). |
2 | Column percentages. |
3 | Column rank figures are printed below each cell. Figures are ranked within columns, using 1 for the largest figure. Where two or more numbers have the same rank, they are all assigned the lowest rank possible. Thus, if the previous rank was 2 and the next value to be ranked occurs in the column three times, those numbers will all be ranked 5. You can not request row and column ranks in the same table. |
5 | Prints the text ‘100%’ on each cell of the base row. |
6 | Used with op=2 to produce two percentages for each cell. The first is the percentage of the cell against a redefined base, and the second is the percentage of the cell against the first base in the axis. You might use this when you have a table showing which of two products people preferred, and their reasons for preferring this product. Percentages could be calculated against a redefined base such as ‘All preferring Brand A’. and then against the first base (all respondents). |
| For an example, see Netting. |
7 | Cumulative percentages. |
8 | Indices. The index for a cell is generated by dividing the row percentage in the cell by the row percentage in the base row. If the table contains more than one base row, indices are calculated using the row percentage in the most recent base row. It shows you how closely the percentages in the current row reflect those in the base row. The nearer the index is to 100%, the more closely the current row mirrors the base row. |
9 | Prints absolutes and percentages side by side. Four columns are allocated to the percentage if it has no decimal places; percentages with decimal places are allocated 5+decp columns (for example, seven columns for percentages with decp=2). When a cell contains absolutes and percentages and op=9 is not used, the absolute figure is printed on the top line with the column and row percentages on the second and third lines respectively. |
94 | This is a variation of op=9 which allocates three columns to percentages with no decimal places, and 4+decp columns where there are one or more decimal places. This can be useful for tables with very wide column axes where no column contains 100%. |
When you create a table with more than one output type, Quantum prints the different values one under the other in each cell. If you want to create a separate table for each output type (for example, absolutes and column percentages as separate tables rather than both on the same table), enter the letter s in upper or lower case between the equals sign and the list of output types. For example:
op=S012
creates three tables, one of absolutes (1), one of column percentages (2) and one of row percentages (0).
There is no significance in the order in which you list output types with op=. Quantum always prints them in the order shown below.
1 | Absolutes |
2 | Col percentage on current base |
6 | Col percentage on first base |
0 | Row percentage |
& | Total percentage |
8 | Indices |
–/3 | Row or column ranks |
| Absolutes for tables of means/proportions (Quantum only) |
| Proportions (Quanvert only) |
| Means (Quanvert only) |
| Statistical probabilities |
| Statistical flags |
| Percentage differences |
Thus, although the example above specifies output types in the order row percentages (0), absolutes (1) and column percentages (2), the first page will show absolutes only, the second page will show column percentages only and the third page will show row percentages only.
The exception is when you want Quantum to calculate percentage differences. In this case, the difference is calculated using the last percentage type named with op=. For example, column percentages if op=012 is used.
page
This option invokes automatic page numbering. Since this is the default — pages are numbered from 1 automatically — this option is generally used in its negative form of nopage which suppresses automatic page numbering.
paglen=n
This determines the number of lines printed on each page. The default is paglen=60 lines but any value between 10 and 10,000 is valid.
pagwid=n
Normally tables can be up to 132 characters wide. pagwid= enables you to decrease the page width or to extend it to a maximum of 10,000 characters.
If your job uses a variety of page widths, you must ensure that the largest one is defined on the a statement. Additionally, if you will be laser printing tables using the font= option, the tables can be 132 or 158 characters wide only.
pc
This prints percent signs after percentage figures. This is the default, so this option is usually used negatively (nopc) to print percentage figures without percent signs.
pcpos=[±]n
When Quantum prints percentages underneath absolutes, it offsets the percentages by one column to the right of the absolutes. pcpos= is an extension of flush, provided so that you can determine more precisely where percentages are printed in relation to absolutes.
The number of columns to offset is defined by indicating the position of the right-most digit of the percentage in relation to the right-most digit of the corresponding absolute figure. Offsets of up to ±7 characters are valid. A negative value indicates positioning to the left of the absolute, while a positive value indicates positioning to the right. The default is pcpos=1 which has the same effect as noflush; pcpos=0 is the same as flush.
This example illustrates the effect of pcpos:
39 39 39
15.1% 15.1% 15.1%
pcpos=1 pcpos=0 pcpos=-1
(default) (same as flush)
pcsort
Sort on percentages rather than absolutes.
pczerona
Prints ‘NA’ instead of ‘0.0’ as the percentage in cells which have a zero base.
NA is printed in the same position as the decimal part of the percentage. By default this is one character to the right of the absolute value.
physpag
Specifies that physical, rather than logical, page numbers are printed when using hitch and squeeze.
printz
This prints tables in which all cells are zero. Normally such tables are suppressed.
rinc
Indicates that when a table is both too long and too wide to fit on one page, rows should take precedence over columns when the table is paginated. This means that Quantum will print all the rows on as many pages as necessary with the left side of the column headings before repeating the process for the right side of the column headings.
For further details, see
Automatic pagination.
round
Force row and column percentages to round to 100%. This option works only with op=2 and op=0 and is ignored for op=6 and op=&. All op= options on the elements of an axis are ignored for rounding purposes.
The option noround can be used on elements which can be totaled, (for example, n01) to prevent them being altered in any way by the rounding process. n15 and n25 statements and nets are automatically assigned the default of noround.
When deciding which percentages can be altered to force the row and/or column percentages to round to 100%, Quantum adds up the absolute values in the relevant rows and/or columns (between bases if there are several bases). It then compares the result with the absolute value in the base.
If both numbers are integers, and they are the same, forcing can be done, but excludes elements with the noround option. If both are integers and they differ, no forcing is done.
If either the base or the sum of the absolutes is not an integer, and the values are the same to within one part in 1,000, forcing can be done. As noted above, elements with the noround option are not affected by the rounding process.
If rounding can be done, Quantum finds the largest absolute and alters the corresponding percentage so that the sum of all percentages is 100%. Quantum chooses the largest absolute because changing the percentage for this figure will cause least distortion to the original percentages. If several elements have the same largest value, Quantum changes the percentage for the first of those elements and leaves the others untouched.
The decisions on whether or not rounding may take place, and which value to round, are based on the values with all the decimal places that Quantum holds for them, not just the values you see printed in the table.
rsort
Sort tables row-wise (that is, vertical sorting rather than horizontal row-wise sorting). This is the default.
side=n
This option can be used to alter the row text width. The default is side=24 and the maximum side text width is 120 characters.
smallbase=
Defines the value below which bases are to be marked as small bases in tables with special T statistics.
For more information, see
Base for T statistics.
smbase=
Suppresses percentages, means, standard deviations, standard errors and sample (error) variances in a cell if the base for the percentage or statistic is less than the given figure. Use with smrow to suppress row percentages or with smcol to suppress all other types of percentage.
smbaseall
Suppresses cells in rows or columns that have a small base. It suppresses absolutes and percentages in a cell if the column base for the cell is less than the value that is specified by the smbase parameter.
smcol
Indicates that values defined with smsupa/smsupp/smsupt refer to columns.
When columns are suppressed in an axis whose column headings are defined on g statements, Quantum ignores the g statements and creates its own column headings using the texts defined on the elements themselves.
For more information about column headings and
g statements, see
Using axes as columns.
smflag=n
When statistical tests are carried out on cells with small bases, the percentages in those cells might appear to be significant when they are not. smflag= enables you to determine what constitutes a small base and to flag cells with that base when the table is printed.
n is an integer or real value which determines the maximum size of a ‘small’ base. When a table containing row, column and/or total percentages is printed, Quantum will print the letter ‘s’ to the right of any cell in which the unweighted base in the appropriate direction (for example column base for column percentages) is smaller than n.
smrow
Indicates that values defined with smsupa/smsupp/smsupt refer to rows. This is the default.
smsupa=n
Suppresses any element in which all absolutes are below the given value. Use with smrow to suppress rows and/or smcol to suppress columns. If all elements in a table are suppressed, the table itself is suppressed. You can therefore use this option to suppress tables in which the base is less than a value of your choice.
smsupp=n
(or smsupc=n). With smrow, suppresses any row in which all column percentages are below the given value. With smcol, suppresses any columns in which all row percentages are below the given value. If all elements in a table are suppressed, the table itself is suppressed.
smsupt=n
Suppresses any element in which all total percentages are below the given value. Use with smrow to suppress rows and/or smcol to suppress columns. If all elements in a table are suppressed, the table itself is suppressed.
smtot
Used with one of the smsup options to suppress rows in which the leftmost base value is less than the value given with smsup. Without smtot, all values in the row are compared against the smsup value.
sort
Creates sorted or ranked tables.
For more information about sorting, see
Sorting tables.
spechar=ab
When a cell in a table is zero or would round to zero, you might want to print specific characters or blanks in the cell instead of the zeros. spechar (short for ‘special characters’) makes this possible. The first character (a) is placed in cells which have true zero values, while values which round to zero are replaced with the second character (b). The special characters can be any non-numeric character or blank. If either character is blank, enclose the pair of characters in double quotes. For example:
spechar=" *"
sets blank as the character for values which are truly zero.
Note Quantum differentiates between means and other statistics, such as standard deviation, in which the sum of values is zero, and those in which the sum of cases (respondents) is zero. Quantum only prints the special character if the number of cases going into the mean is zero. Thus, 0/3 prints as zero, whereas 0/0 is printed as the special character for zero if one is defined.
If you do not want this feature to affect statistical elements, also use
nostatspechar (see
nostatspechar).
Zero values generated as the result of manipulation are always printed as such and are never replaced with a special character.
squeeze=
Prints as many pages of the current table as possible on the same page.
statspechar='characters'
Replaces the values of statistical elements that are zero or round to zero with the specified characters.
tabcent
Center tables within the page width.
Tables formatted with the postprocessor pstab for printing on a PostScript printer are automatically centered within the page width.
For more information on
pstab, see
Printing output with pstab.
title
Creates left-justified table titles of the form ‘row by column’ from the axis titles defined with hd= on the row and column l statements. For example, if the axes age and sex are introduced by the statements:
l age;hd=Age of Respondent
l sex;hd=Sex of Respondent
the table title will be ‘Age of Respondent by Sex of Respondent’.
topc
Prints a percent sign at the top of each column of the table. This option is only valid if you use nopc (don’t print percent signs after percentages) and op=2 (print column percentages) together and op=1, op=3 or op=8 are not present.
tstatdebug
Prints the intermediate figures for all special T statistics in a run. You can use this option instead of placing debug on every tstat statement.
For more information, see
Special T statistics.
ttbeg=(text,text, ... )
Quantum normally prints titles in the following order:
▪table number
▪higher (3+) dimension texts
▪texts following column l statements
▪texts following row l statements
▪texts following tab statements
▪texts following flt statements
▪texts following flt= statements
If you are generally happy with this order but there are one or two titles that you want to print first rather than in their default positions, specify just those titles with ttbeg=. Quantum will then print those titles first, in the order you list them with ttbeg=, and then all other types of titles in their default order.
Each type of title has its own keyword:
tb | table number |
high | higher (3+) dimension texts |
top | texts following column l statements |
side | texts following row l statements |
tab | texts following tab statements |
flt | texts following flt statements |
nflt | texts following flt= statements |
To specify titles, enter the appropriate keywords inside the parentheses in the order you want those titles printed, and separate them with commas.
Titles starting with the word Base are usually positioned according to the type of statement they follow. By using the keyword base with ttbeg= you can determine more specifically where such texts are printed. Therefore, to print texts following flt statements first, texts following tab statements next, and with all texts starting with Base underneath, write:
a;ttbeg=(flt,tab,base)
Any other titles would be printed below the base texts in the order tb, high, top, side, nflt.
Using ttbeg=base with baft generates an error message since the two are incompatible.
ttend=(text,text, ... )
This is the opposite of ttbeg because it defines those titles which are to be printed at the end of the list of table titles. Keywords are as described for ttbeg=. You would normally use ttend when you are generally happy with the order in which Quantum prints titles, but there is one particular type of title that you always want to print last rather than in its default position.
If baft is also present in the program, it is imputed as ttend=base after all other ttends, although if base is present on the ttend= an error will occur.
ttord=(text,text, ... )
This defines the order in which table titles are to printed. You use it when you want to specify an order for titles, and to have this order override the default order that Quantum normally uses. Conventions are as described for ttbeg=, except that the top parameter is not valid with ttord.
If your list omits some of the titles that Quantum normally prints, these titles are not printed. For example, if you type:
ttord=(tb,tab)
the tables have a table number and any titles defined with tt statements under tab statements. Titles defined in any other place (under the l statement, for example) will never be printed.
type
Prints the output type (for example, Absolutes, Column Percents) in the top right corner of the table. This is the default, but notype can be used instead to suppress printing.
See also