### 16.20 SET

    SET

    (data input)
            /BLANKS={SYSMIS,’.’,number}
            /DECIMAL={DOT,COMMA}
            /FORMAT=fmt_spec
            /EPOCH={AUTOMATIC,year}
            /RIB={NATIVE,MSBFIRST,LSBFIRST,VAX}
            /RRB={NATIVE,ISL,ISB,IDL,IDB,VF,VD,VG,ZS,ZL}

    (interaction)
            /MXERRS=max_errs
            /MXWARNS=max_warnings
            /WORKSPACE=workspace_size

    (syntax execution)
            /LOCALE=’locale’
            /MEXPAND={ON,OFF}
            /MITERATE=max_iterations
            /MNEST=max_nest
            /MPRINT={ON,OFF}
            /MXLOOPS=max_loops
            /SEED={RANDOM,seed_value}
            /UNDEFINED={WARN,NOWARN}
            /FUZZBITS=fuzzbits

    (data output)
            /CC{A,B,C,D,E}={’npre,pre,suf,nsuf’,’npre.pre.suf.nsuf’}
            /DECIMAL={DOT,COMMA}
            /FORMAT=fmt_spec
            /WIB={NATIVE,MSBFIRST,LSBFIRST,VAX}
            /WRB={NATIVE,ISL,ISB,IDL,IDB,VF,VD,VG,ZS,ZL}

    (output routing)
            /ERRORS={ON,OFF,TERMINAL,LISTING,BOTH,NONE}
            /MESSAGES={ON,OFF,TERMINAL,LISTING,BOTH,NONE}
            /PRINTBACK={ON,OFF,TERMINAL,LISTING,BOTH,NONE}
            /RESULTS={ON,OFF,TERMINAL,LISTING,BOTH,NONE}

    (output driver options)
            /HEADERS={NO,YES,BLANK}
            /LENGTH={NONE,n_lines}
            /WIDTH={NARROW,WIDTH,n_characters}
            /TNUMBERS={VALUES,LABELS,BOTH}
            /TVARS={NAMES,LABELS,BOTH}

    (logging)
            /JOURNAL={ON,OFF} [’file_name’]

    (system files)
            /COMPRESSION={ON,OFF}
            /SCOMPRESSION={ON,OFF}

    (miscellaneous)
            /SAFER=ON
            /LOCALE=’string’

    (obsolete settings accepted for compatibility, but ignored)
            /BOXSTRING={’xxx’,’xxxxxxxxxxx’}
            /CASE={UPPER,UPLOW}
            /CPI=cpi_value
            /HIGHRES={ON,OFF}
            /HISTOGRAM=’c’
            /LOWRES={AUTO,ON,OFF}
            /LPI=lpi_value
            /MENUS={STANDARD,EXTENDED}
            /MXMEMORY=max_memory
            /SCRIPTTAB=’c’
            /TB1={’xxx’,’xxxxxxxxxxx’}
            /TBFONTS=’string’
            /XSORT={YES,NO}

`SET` allows the user to adjust several parameters relating to PSPP’s execution. Since there are many subcommands to this command, its subcommands will be examined in groups.

For subcommands that take boolean values, `ON` and `YES` are synonymous, as are `OFF` and `NO`, when used as subcommand values.

The data input subcommands affect the way that data is read from data files. The data input subcommands are

BLANKS

  This is the value assigned to an item data item that is empty or contains only white space. An argument of SYSMIS or ’.’ will cause the system-missing value to be assigned to null items. This is the default. Any real value may be assigned.

DECIMAL

  This value may be set to `DOT` or `COMMA`. Setting it to `DOT` causes the decimal point character to be ‘`.`’ and the grouping character to be ‘`,`’. Setting it to `COMMA` causes the decimal point character to be ‘`,`’ and the grouping character to be ‘`.`’. If the setting is `COMMA`, then ‘`,`’ will not be treated as a field separator in the `DATA LIST` command (see DATA LIST). The default value is determined from the system locale.

FORMAT

  Allows the default numeric input/output format to be specified. The default is F8.2. See Input and Output Formats.

EPOCH

  Specifies the range of years used when a 2-digit year is read from a data file or used in a date construction expression (see Date Construction). If a 4-digit year is specified for the epoch, then 2-digit years are interpreted starting from that year, known as the epoch. If `AUTOMATIC` (the default) is specified, then the epoch begins 69 years before the current date.

RIB

  PSPP extension to set the byte ordering (endianness) used for reading data in IB or PIB format (see Binary and Hexadecimal Numeric Formats). In `MSBFIRST` ordering, the most-significant byte appears at the left end of a IB or PIB field. In `LSBFIRST` ordering, the least-significant byte appears at the left end. `VAX` ordering is like `MSBFIRST`, except that each pair of bytes is in reverse order. `NATIVE`, the default, is equivalent to `MSBFIRST` or `LSBFIRST` depending on the native format of the machine running PSPP.

RRB

  PSPP extension to set the floating-point format used for reading data in RB format (see Binary and Hexadecimal Numeric Formats). The possibilities are:

  NATIVE

    The native format of the machine running PSPP. Equivalent to either IDL or IDB.

  ISL

    32-bit IEEE 754 single-precision floating point, in little-endian byte order.

  ISB

    32-bit IEEE 754 single-precision floating point, in big-endian byte order.

  IDL

    64-bit IEEE 754 double-precision floating point, in little-endian byte order.

  IDB

    64-bit IEEE 754 double-precision floating point, in big-endian byte order.

  VF

    32-bit VAX F format, in VAX-endian byte order.

  VD

    64-bit VAX D format, in VAX-endian byte order.

  VG

    64-bit VAX G format, in VAX-endian byte order.

  ZS

    32-bit IBM Z architecture short format hexadecimal floating point, in big-endian byte order.

  ZL

    64-bit IBM Z architecture long format hexadecimal floating point, in big-endian byte order.

    Z architecture also supports IEEE 754 floating point. The ZS and ZL formats are only for use with very old input files.

  The default is NATIVE.

Interaction subcommands affect the way that PSPP interacts with an online user. The interaction subcommands are

MXERRS

  The maximum number of errors before PSPP halts processing of the current command file. The default is 50.

MXWARNS

  The maximum number of warnings + errors before PSPP halts processing the current command file. The special value of zero means that all warning situations should be ignored. No warnings will be issued, except a single initial warning advising the user that warnings will not be given. The default value is 100.

Syntax execution subcommands control the way that PSPP commands execute. The syntax execution subcommands are

LOCALE

  Overrides the system locale for the purpose of reading and writing syntax and data files. The argument should be a locale name in the general form `language_country.encoding`, where language and country are 2-character language and country abbreviations, respectively, and encoding is an IANA character set name. Example locales are `en_US.UTF-8` (UTF-8 encoded English as spoken in the United States) and `ja_JP.EUC-JP` (EUC-JP encoded Japanese as spoken in Japan).

MEXPAND
MITERATE
MNEST
MPRINT

  Currently not used.

MXLOOPS

  The maximum number of iterations for an uncontrolled loop (see LOOP). The default max_loops is 40.

SEED

  The initial pseudo-random number seed. Set to a real number or to RANDOM, which will obtain an initial seed from the current time of day.

UNDEFINED

  Currently not used.

FUZZBITS

  The maximum number of bits of errors in the least-significant places to accept for rounding up a value that is almost halfway between two possibilities for rounding with the RND operator (see Miscellaneous Mathematics). The default fuzzbits is 6.

WORKSPACE

  The maximum amount of memory (in kilobytes) that PSPP will use to store data being processed. If memory in excess of the workspace size is required, then PSPP will start to use temporary files to store the data. Setting a higher value will, in general, mean procedures will run faster, but may cause other applications to run slower. On platforms without virtual memory management, setting a very large workspace may cause PSPP to abort.

Data output subcommands affect the format of output data. These subcommands are

CCA
CCB
CCC
CCD
CCE

  Set up custom currency formats. See Custom Currency Formats, for details.

DECIMAL

  The default `DOT` setting causes the decimal point character to be ‘`.`’. A setting of `COMMA` causes the decimal point character to be ‘`,`’.

FORMAT

  Allows the default numeric input/output format to be specified. The default is F8.2. See Input and Output Formats.

WIB

  PSPP extension to set the byte ordering (endianness) used for writing data in IB or PIB format (see Binary and Hexadecimal Numeric Formats). In `MSBFIRST` ordering, the most-significant byte appears at the left end of a IB or PIB field. In `LSBFIRST` ordering, the least-significant byte appears at the left end. `VAX` ordering is like `MSBFIRST`, except that each pair of bytes is in reverse order. `NATIVE`, the default, is equivalent to `MSBFIRST` or `LSBFIRST` depending on the native format of the machine running PSPP.

WRB

  PSPP extension to set the floating-point format used for writing data in RB format (see Binary and Hexadecimal Numeric Formats). The choices are the same as `SET RIB`. The default is `NATIVE`.

In the PSPP text-based interface, the output routing subcommands affect where output is sent. The following values are allowed for each of these subcommands:

OFF
NONE

  Discard this kind of output.

TERMINAL

  Write this output to the terminal, but not to listing files and other output devices.

LISTING

  Write this output to listing files and other output devices, but not to the terminal.

ON
BOTH

  Write this type of output to all output devices.

These output routing subcommands are:

ERRORS

  Applies to error and warning messages. The default is `BOTH`.

MESSAGES

  Applies to notes. The default is `BOTH`.

PRINTBACK

  Determines whether the syntax used for input is printed back as part of the output. The default is `NONE`.

RESULTS

  Applies to everything not in one of the above categories, such as the results of statistical procedures. The default is `BOTH`.

These subcommands have no effect on output in the PSPP GUI environment.

Output driver option subcommands affect output drivers’ settings. These subcommands are

HEADERS
LENGTH
WIDTH
TNUMBERS

  The `TNUMBERS` option sets the way in which values are displayed in output tables. The valid settings are `VALUES`, `LABELS` and `BOTH`. If `TNUMBERS` is set to `VALUES`, then all values are displayed with their literal value (which for a numeric value is a number and for a string value an alphanumeric string). If `TNUMBERS` is set to `LABELS`, then values are displayed using their assigned labels if any. (See VALUE LABELS.) If the a value has no label, then it will be displayed using its literal value. If `TNUMBERS` is set to `BOTH`, then values will be displayed with both their label (if any) and their literal value in parentheses.

TVARS

  The `TVARS` option sets the way in which variables are displayed in output tables. The valid settings are `NAMES`, `LABELS` and `BOTH`. If `TVARS` is set to `NAMES`, then all variables are displayed using their names. If `TVARS` is set to `LABELS`, then variables are displayed using their label if one has been set. If no label has been set, then the name will be used. (See VARIABLE LABELS.) If `TVARS` is set to `BOTH`, then variables will be displayed with both their label (if any) and their name in parentheses.

Logging subcommands affect logging of commands executed to external files. These subcommands are

JOURNAL
LOG

  These subcommands, which are synonyms, control the journal. The default is `ON`, which causes commands entered interactively to be written to the journal file. Commands included from syntax files that are included interactively and error messages printed by PSPP are also written to the journal file, prefixed by ‘`>`’. `OFF` disables use of the journal.

  The journal is named `pspp.jnl` by default. A different name may be specified.

System file subcommands affect the default format of system files produced by PSPP. These subcommands are

COMPRESSION

  Not currently used.

SCOMPRESSION

  Whether system files created by `SAVE` or `XSAVE` are compressed by default. The default is `ON`.

Security subcommands affect the operations that commands are allowed to perform. The security subcommands are

SAFER

  Setting this option disables the following operations:

  - The `ERASE` command.
  - The `HOST` command.
  - The `PERMISSIONS` command.
  - Pipes (file names beginning or ending with ‘`|`’).

  Be aware that this setting does not guarantee safety (commands can still overwrite files, for instance) but it is an improvement. When set, this setting cannot be reset during the same session, for obvious security reasons.

LOCALE

  This item is used to set the default character encoding. The encoding may be specified either as an encoding name or alias (see http://www.iana.org/assignments/character-sets), or as a locale name. If given as a locale name, only the character encoding of the locale is relevant.

  System files written by PSPP will use this encoding. System files read by PSPP, for which the encoding is unknown, will be interpreted using this encoding.

  The full list of valid encodings and locale names/alias are operating system dependent. The following are all examples of acceptable syntax on common GNU/Linux systems.

      SET LOCALE='iso-8859-1'.

      SET LOCALE='ru_RU.cp1251'.

      SET LOCALE='japanese'.

  Contrary to intuition, this command does not affect any aspect of the system’s locale.