@chapter Combining Data Files
This chapter describes commands that allow data from system files,
-portable file, scratch files, and the active file to be combined to
-form a new active file. These commands can combine data files in the
+portable files, scratch files, and the active dataset to be combined to
+form a new active dataset. These commands can combine data files in the
following ways:
@itemize
following sections describe details specific to each command.
Each of these commands reads two or more input files and combines
-them. The command's output becomes the new active file. The input
+them. The command's output becomes the new active dataset. The input
files are not changed on disk.
The syntax of each command begins with a specification of the files to
be read as input. For each input file, specify FILE with a system,
portable, or scratch file's name as a string or a file handle
(@pxref{File Handles}), or specify an asterisk (@samp{*}) to use the
-active file as input. Use of portable or scratch files on FILE is a
+active dataset as input. Use of portable or scratch files on FILE is a
PSPP extension.
-At least two FILE subcommands must be specified. If the active file
+At least two FILE subcommands must be specified. If the active dataset
is used as an input source, then @cmd{TEMPORARY} must not be in
effect.
variables before it applies it to the command. When SORT is used, BY
is required. SORT is a PSPP extension.
-PSPP merges the dictionaries of all of the input files to form the new
-active file dictionary, like so:
+PSPP merges the dictionaries of all of the input files to form the
+dictionary of the new active dataset, like so:
@itemize @bullet
@item
-The new active file's variables are the union of all the input files'
+The variables in the new active dataset are the union of all the input files'
variables, matched based on their name. When a single input file
contains a variable with a given name, the output file will contain
exactly that variable. When more than one input file contains a
similarly for value labels and missing values.
@item
-The new active file's file label (@pxref{FILE LABEL}) is that of the
+The file label of the new active dataset (@pxref{FILE LABEL}) is that of the
first specified FILE that has a file label.
@item
-The new active file's documents (@pxref{DOCUMENT}) are the
+The documents in the new active dataset (@pxref{DOCUMENT}) are the
concatenation of all the input files' documents, in the order in which
the FILE subcommands are specified.
@item
If all of the input files are weighted on the same variable, then the
-new active file is weighted on that variable. Otherwise, the new
-active file is not weighted.
+new active dataset is weighted on that variable. Otherwise, the new
+active dataset is not weighted.
@end itemize
The remaining subcommands apply to the output file as a whole, rather
listed are dropped. DROP and KEEP are executed in left-to-right order
and may be repeated any number of times. DROP and KEEP do not affect
variables created by the IN, FIRST, and LAST subcommands, which are
-always included in the new active file, but they can be used to drop
+always included in the new active dataset, but they can be used to drop
BY variables.
The FIRST and LAST subcommands are optional. They may only be
specified on @cmd{MATCH FILES} and @cmd{ADD FILES}, and only when BY
is used. FIRST and LIST each adds a numeric variable to the new
-active file, with the name given as the subcommand's argument and F1.0
+active dataset, with the name given as the subcommand's argument and F1.0
print and write formats. The value of the FIRST variable is 1 in the
first output case with a given set of values for the BY variables, and
0 in other cases. Similarly, the LAST variable is 1 in the last case
@end display
@cmd{ADD FILES} adds cases from multiple input files. The output,
-which replaces the active file, consists all of the cases in all of
+which replaces the active dataset, consists all of the cases in all of
the input files.
ADD FILES shares the bulk of its syntax with other PSPP commands for
* END FILE:: Terminate the current input program.
* FILE HANDLE:: Support for special file formats.
* INPUT PROGRAM:: Support for complex input programs.
-* LIST:: List cases in the active file.
-* NEW FILE:: Clear the active file and dictionary.
+* LIST:: List cases in the active dataset.
+* NEW FILE:: Clear the active dataset.
* PRINT:: Display values in print formats.
* PRINT EJECT:: Eject the current page then print.
* PRINT SPACE:: Print blank lines.
@end display
@cmd{DATAFILE ATTRIBUTE} adds, modifies, or removes user-defined
-attributes associated with the active file. Custom data file
+attributes associated with the active dataset. Custom data file
attributes are not interpreted by PSPP, but they are saved as part of
system files and may be used by other software that reads them.
filling the vacated position.
To associate custom attributes with particular variables, instead of
-with the entire active file, use @cmd{VARIABLE ATTRIBUTE} (@pxref{VARIABLE ATTRIBUTE}) instead.
+with the entire active dataset, use @cmd{VARIABLE ATTRIBUTE}
+(@pxref{VARIABLE ATTRIBUTE}) instead.
@cmd{DATAFILE ATTRIBUTE} takes effect immediately. It is not affected
by conditional and looping structures such as @cmd{DO IF} or
@end example
The above example reads data from file @file{a.data}, then from
-@file{b.data}, and concatenates them into a single active file.
+@file{b.data}, and concatenates them into a single active dataset.
@c If you change this example, change the regression test4 in
@c tests/command/input-program.sh to match.
LIST/FORMAT=NUMBERED.
@end example
-The above example causes an active file to be created consisting of 50
+The above example causes an active dataset to be created consisting of 50
random variates between 0 and 10.
@node LIST
The VARIABLES subcommand specifies the variables whose values are to be
printed. Keyword VARIABLES is optional. If VARIABLES subcommand is not
-specified then all variables in the active file are printed.
+specified then all variables in the active dataset are printed.
The CASES subcommand can be used to specify a subset of cases to be
printed. Specify FROM and the case number of the first case to print,
NEW FILE.
@end display
-@cmd{NEW FILE} command clears the current active file.
+@cmd{NEW FILE} command clears the dictionary and data from the current
+active dataset.
@node PRINT
@section PRINT
@chapter Selecting data for analysis
This chapter documents PSPP commands that temporarily or permanently
-select data records from the active file for analysis.
+select data records from the active dataset for analysis.
@menu
* FILTER:: Exclude cases based on a variable.
-* N OF CASES:: Limit the size of the active file.
+* N OF CASES:: Limit the size of the active dataset.
* SAMPLE:: Select a specified proportion of cases.
* SELECT IF:: Permanently delete selected cases.
* SPLIT FILE:: Do multiple analyses with one command.
the limit specified are not processed by any later procedure.
If the limit specified on @cmd{N OF CASES} is greater than the number
-of cases in the active file, it has no effect.
+of cases in the active dataset, it has no effect.
When @cmd{N OF CASES} is used along with @cmd{SAMPLE} or @cmd{SELECT
IF}, the case limit is applied to the cases obtained after sampling or
case selection, regardless of how @cmd{N OF CASES} is placed relative
to @cmd{SAMPLE} or @cmd{SELECT IF} in the command file. Thus, the
commands @code{N OF CASES 100} and @code{SAMPLE .5} will both randomly
-sample approximately half of the active file's cases, then select the
+sample approximately half of the active dataset's cases, then select the
first 100 of those sampled, regardless of their order in the command
file.
@cmd{SAMPLE} randomly samples a proportion of the cases in the active
file. Unless it follows @cmd{TEMPORARY}, it operates as a
-transformation, permanently removing cases from the active file.
+transformation, permanently removing cases from the active dataset.
The proportion to sample can be expressed as a single number between 0
and 1. If @code{k} is the number specified, and @code{N} is the number
-of currently-selected cases in the active file, then after
+of currently-selected cases in the active dataset, then after
@code{SAMPLE @var{k}.}, approximately @code{k*N} cases will be
selected.
@enumerate
@item
If @var{N} is equal to the number of currently-selected cases in the
-active file, exactly @var{m} cases will be selected.
+active dataset, exactly @var{m} cases will be selected.
@item
If @var{N} is greater than the number of currently-selected cases in the
-active file, an equivalent proportion of cases will be selected.
+active dataset, an equivalent proportion of cases will be selected.
@item
If @var{N} is less than the number of currently-selected cases in the
active, exactly @var{m} cases will be selected @emph{from the first
-@var{N} cases in the active file.}
+@var{N} cases in the active dataset.}
@end enumerate
@cmd{SAMPLE} and @cmd{SELECT IF} are performed in
@cmd{SELECT IF} selects cases for analysis based on the value of a
boolean expression. Cases not selected are permanently eliminated
-from the active file, unless @cmd{TEMPORARY} is in effect
+from the active dataset, unless @cmd{TEMPORARY} is in effect
(@pxref{TEMPORARY}).
Specify a boolean expression (@pxref{Expressions}). If the value of the
you should first sort the data by that variable (@pxref{SORT CASES}).
Specify OFF to disable @cmd{SPLIT FILE} and resume analysis of the
-entire active file as a single group of data.
+entire active dataset as a single group of data.
When @cmd{SPLIT FILE} is specified after @cmd{TEMPORARY}, it affects only
the next procedure (@pxref{TEMPORARY}).
@cmd{TEMPORARY} is used to make the effects of transformations
following its execution temporary. These transformations will
affect only the execution of the next procedure or procedure-like
-command. Their effects will not be saved to the active file.
+command. Their effects will not be saved to the active dataset.
The only specification on @cmd{TEMPORARY} is the command name.
@end display
@cmd{WEIGHT} assigns cases varying weights,
-changing the frequency distribution of the active file. Execution of
+changing the frequency distribution of the active dataset. Execution of
@cmd{WEIGHT} is delayed until data have been read.
If a variable name is specified, @cmd{WEIGHT} causes the values of that
When @cmd{WEIGHT} is specified after @cmd{TEMPORARY}, it affects only
the next procedure (@pxref{TEMPORARY}).
-@cmd{WEIGHT} does not cause cases in the active file to be replicated in
-memory.
+@cmd{WEIGHT} does not cause cases in the active dataset to be
+replicated in memory.
To prevent multiple clients from attempting to use a variable's single
auxiliary data field at the same time, we adopt the convention that
-use of auxiliary data in the active file dictionary is restricted to
+use of auxiliary data in the active dataset dictionary is restricted to
the currently executing command. In particular, transformations must
-not attach auxiliary data to a variable in the active file in the
-expectation that it can be used later when the active file is read and
+not attach auxiliary data to a variable in the active dataset in the
+expectation that it can be used later when the active dataset is read and
the transformation is executed. To help enforce this restriction,
-auxiliary data is deleted from all variables in the active file
+auxiliary data is deleted from all variables in the active dataset
dictionary after the execution of each PSPP command.
This convention for safe use of auxiliary data applies only to the
-active file dictionary. Rules for other dictionaries may be
+active dataset dictionary. Rules for other dictionaries may be
established separately.
Auxiliary data should be replaced by a more flexible mechanism at some
associated storage.
Deleting a variable to which there might be external pointers is a bad
-idea. In particular, deleting variables from the active file
+idea. In particular, deleting variables from the active dataset
dictionary is a risky proposition, because transformations can retain
references to arbitrary variables. Therefore, no variable should be
-deleted from the active file dictionary when any transformations are
+deleted from the active dataset dictionary when any transformations are
active, because those transformations might reference the variable to
be deleted. The safest time to delete a variable is just after a
procedure has been executed, as done by @cmd{DELETE VARIABLES}.
@node Dictionary Filter Variable
@subsection Filter Variable
-When the active file is read by a procedure, cases can be excluded
+When the active dataset is read by a procedure, cases can be excluded
from analysis based on the values of a @dfn{filter variable}.
@xref{FILTER,,,pspp, PSPP Users Guide}, for a user view of filtering.
The user may use the @cmd{SPLIT FILE} command (@pxref{SPLIT
FILE,,,pspp, PSPP Users Guide}) to select a set of variables on which
-to split the active file into groups of cases to be analyzed
+to split the active dataset into groups of cases to be analyzed
independently in each statistical procedure. The set of split
variables is stored as part of the dictionary, although the effect on
data analysis is implemented by each individual statistical procedure.
** Reading data
*** Casereaders generalities
*** Casereaders from data files
-*** Casereaders from the active file
+*** Casereaders from the active dataset
*** Other casereaders
** Writing data
*** Casewriters generally
*** Casewriters to data files
-*** Modifying the active file
-**** Modifying cases obtained from active file casereaders has no real effect
+*** Modifying the active dataset
+**** Modifying cases obtained from active dataset casereaders has no real effect
**** Transformations; procedures that transform
** Transforming data
*** Sorting and merging
current one. Results in system-missing (for numeric variables) or
blanks (for string variables) for the first @var{n} cases.
-@code{LAG} obtains values from the cases that become the new active file
+@code{LAG} obtains values from the cases that become the new active
+dataset
after a procedure executes. Thus, @code{LAG} will not return values
from cases dropped by transformations such as @cmd{SELECT IF}, and
transformations like @cmd{COMPUTE} that modify data will change the
portable files.
@menu
-* APPLY DICTIONARY:: Apply system file dictionary to active file.
+* APPLY DICTIONARY:: Apply system file dictionary to active dataset.
* EXPORT:: Write to a portable file.
* GET:: Read from a system file.
* GET DATA:: Read from foreign files.
@cmd{APPLY DICTIONARY} applies the variable labels, value labels,
and missing values taken from a file to corresponding
-variables in the active file. In some cases it also updates the
+variables in the active dataset. In some cases it also updates the
weighting variable.
Specify a system file, portable file, or scratch file with a file name
string or as a file handle (@pxref{File Handles}). The dictionary in the
-file will be read, but it will not replace the active file dictionary.
+file will be read, but it will not replace the active dataset dictionary.
The file's data will not be read.
-Only variables with names that exist in both the active file and the
+Only variables with names that exist in both the active dataset and the
system file are considered. Variables with the same name but different
types (numeric, string) will cause an error message. Otherwise, the
system file variables' attributes will replace those in their matching
-active file variables:
+active dataset variables:
@itemize @bullet
@item
-If a system file variable has a variable label, then it will replace the
-active file variable's variable label. If the system file variable does
-not have a variable label, then the active file variable's variable
-label, if any, will be retained.
+If a system file variable has a variable label, then it will replace
+the variable label of the active dataset variable. If the system
+file variable does not have a variable label, then the active dataset
+variable's variable label, if any, will be retained.
@item
If the system file variable has custom attributes (@pxref{VARIABLE
-ATTRIBUTE}), then those attributes replace the active file variable's
+ATTRIBUTE}), then those attributes replace the active dataset variable's
custom attributes. If the system file variable does not have custom
-attributes, then the active file variable's custom attributes, if any,
+attributes, then the active dataset variable's custom attributes, if any,
will be retained.
@item
-If the active file variable is numeric or short string, then value
-labels and missing values, if any, will be copied to the active file
+If the active dataset variable is numeric or short string, then value
+labels and missing values, if any, will be copied to the active dataset
variable. If the system file variable does not have value labels or
-missing values, then those in the active file variable, if any, will not
+missing values, then those in the active dataset variable, if any, will not
be disturbed.
@end itemize
@itemize @bullet
@item
If the system file has custom attributes (@pxref{DATAFILE ATTRIBUTE}),
-then those attributes replace the active file variable's custom
+then those attributes replace the active dataset variable's custom
attributes.
@item
-If the active file has a weighting variable (@pxref{WEIGHT}), and the
+If the active dataset has a weighting variable (@pxref{WEIGHT}), and the
system file does not, or if the weighting variable in the system file
-does not exist in the active file, then the active file weighting
+does not exist in the active dataset, then the active dataset weighting
variable, if any, is retained. Otherwise, the weighting variable in
-the system file becomes the active file weighting variable.
+the system file becomes the active dataset weighting variable.
@end itemize
@cmd{APPLY DICTIONARY} takes effect immediately. It does not read the
-active
-file. The system file is not modified.
+active dataset. The system file is not modified.
@node EXPORT
@section EXPORT
/MAP
@end display
-The @cmd{EXPORT} procedure writes the active file dictionary and data to a
-specified portable file or scratch file.
+The @cmd{EXPORT} procedure writes the active dataset's dictionary and
+data to a specified portable file or scratch file.
By default, cases excluded with FILTER are written to the
file. These can be excluded by specifying DELETE on the UNSELECTED
The MAP subcommand is currently ignored.
-@cmd{EXPORT} is a procedure. It causes the active file to be read.
+@cmd{EXPORT} is a procedure. It causes the active dataset to be read.
@node GET
@section GET
/RENAME=(src_names=target_names)@dots{}
@end display
-@cmd{GET} clears the current dictionary and active file and
+@cmd{GET} clears the current dictionary and active dataset and
replaces them with the dictionary and data from a specified file.
The FILE subcommand is the only required subcommand. Specify the system
DROP, KEEP, and RENAME are executed in left-to-right order.
Each may be present any number of times. @cmd{GET} never modifies a
-file on disk. Only the active file read from the file
+file on disk. Only the active dataset read from the file
is affected by these subcommands.
@cmd{GET} does not cause the data to be read, only the dictionary. The data
@dots{}additional subcommands depending on TYPE@dots{}
@end display
-The @cmd{GET DATA} command is used to read files and other data sources
-created by other applications.
-When this command is executed, the current dictionary and active file are
-replaced with variables and data read from the specified source.
+The @cmd{GET DATA} command is used to read files and other data
+sources created by other applications. When this command is executed,
+the current dictionary and active dataset are replaced with variables
+and data read from the specified source.
The TYPE subcommand is mandatory and must be the first subcommand
specified. It determines the type of the file or source to read.
/RENAME=(src_names=target_names)@dots{}
@end display
-The @cmd{IMPORT} transformation clears the active file dictionary and
+The @cmd{IMPORT} transformation clears the active dataset dictionary and
data and
replaces them with a dictionary and data from a system, portable file,
or scratch file.
@end display
The @cmd{SAVE} procedure causes the dictionary and data in the active
-file to
+dataset to
be written to a system file or scratch file.
OUTFILE is the only required subcommand. Specify the system file or
file. WRITEABLE, the default, creates the file with read and write
permission. READONLY creates the file for read-only access.
-By default, all the variables in the active file dictionary are written
+By default, all the variables in the active dataset dictionary are written
to the system file. The DROP subcommand can be used to specify a list
of variables not to be written. In contrast, KEEP specifies variables
to be written, with all variables not specified not written.
Normally variables are saved to a system file under the same names they
-have in the active file. Use the RENAME subcommand to change these names.
+have in the active dataset. Use the RENAME subcommand to change these names.
Specify, within parentheses, a list of variable names followed by an
equals sign (@samp{=}) and the names that they should be renamed to.
Multiple parenthesized groups of variable names can be included on a
DROP, KEEP, and RENAME are performed in left-to-right order. They
each may be present any number of times. @cmd{SAVE} never modifies
-the active file. DROP, KEEP, and RENAME only affect the system file
+the active dataset. DROP, KEEP, and RENAME only affect the system file
written to disk.
The VERSION subcommand specifies the version of the file format. Valid
numeric user-missing values like system-missing values and string
user-missing values as all spaces.
-By default, all the variables in the active file dictionary are saved
+By default, all the variables in the active dataset dictionary are saved
to the system file, but DROP or KEEP can select a subset of variable
to save. The RENAME subcommand can also be used to change the names
under which variables are saved. UNSELECTED determines whether cases
Specify a file name or file handle. @cmd{SYSFILE INFO} reads that file as
a system file and displays information on its dictionary.
-@cmd{SYSFILE INFO} does not affect the current active file.
+@cmd{SYSFILE INFO} does not affect the current active dataset.
@node XEXPORT
@section XEXPORT
/MAP
@end display
-The @cmd{EXPORT} transformation writes the active file dictionary and
+The @cmd{EXPORT} transformation writes the active dataset dictionary and
data to a specified portable file.
This transformation is a PSPP extension.
/MAP
@end display
-The @cmd{XSAVE} transformation writes the active file dictionary and
+The @cmd{XSAVE} transformation writes the active dataset's dictionary and
data to a system file or scratch file. It is similar to the @cmd{SAVE}
procedure, with two differences:
Analyze data, writing results of analyses to the listing file. Cause
transformations specified earlier in the file to be performed. In a
more general sense, a @dfn{procedure} is any command that causes the
-active file (the data) to be read.
+active dataset (the data) to be read.
@end table
@node Order of Commands
When executed in the initial or procedure state, causes a transition to
the transformation state.
@item
-Clears the active file if executed in the procedure or transformation
+Clears the active dataset if executed in the procedure or transformation
state.
@end itemize
@item
Causes a transition to the INPUT PROGRAM state.
@item
-Clears the active file.
+Clears the active dataset.
@end itemize
@item @cmd{FILE TYPE}
@item
Causes a transition to the FILE TYPE state.
@item
-Clears the active file.
+Clears the active dataset.
@end itemize
@item Other file definition commands
@item
Cause a transition to the transformation state.
@item
-Clear the active file, except for @cmd{ADD FILES}, @cmd{MATCH FILES},
+Clear the active dataset, except for @cmd{ADD FILES}, @cmd{MATCH FILES},
and @cmd{UPDATE}.
@end itemize
@cindex @code{$TIME}
@item $TIME
-Number of seconds between midnight 14 Oct 1582 and the time the active file
+Number of seconds between midnight 14 Oct 1582 and the time the active dataset
was read, in format F20.
@cindex @code{$WIDTH}
contains an ordinary decimal number, a time or date, a number in binary
or hexadecimal notation, or one of several other notations. Input
formats are used by commands such as @cmd{DATA LIST} that read data or
-syntax files into the PSPP active file.
+syntax files into the PSPP active dataset.
Every input format corresponds to a default @dfn{output format} that
specifies the formatting used when the value is output later. It is
@cindex scratch variables
Most of the time, variables don't retain their values between cases.
-Instead, either they're being read from a data file or the active file,
+Instead, either they're being read from a data file or the active dataset,
in which case they assume the value read, or, if created with
@cmd{COMPUTE} or
another transformation, they're initialized to the system-missing value
/SAVE=@{PRED, RESID@}
@end display
-The @cmd{REGRESSION} procedure reads the active file and outputs
+The @cmd{REGRESSION} procedure reads the active dataset and outputs
statistics relevant to the linear model specified by the user.
The VARIABLES subcommand, which is required, specifies the list of
The SAVE subcommand causes PSPP to save the residuals or predicted
values from the fitted
-model to the active file. PSPP will store the residuals in a variable
+model to the active dataset. PSPP will store the residuals in a variable
called RES1 if no such variable exists, RES2 if RES1 already exists,
RES3 if RES1 and RES2 already exist, etc. It will choose the name of
the variable for the predicted values similarly, but with PRED as a
@node Examples
@subsection Examples
The following PSPP syntax will generate the default output and save the
-predicted values and residuals to the active file.
+predicted values and residuals to the active dataset.
@example
title 'Demonstrate REGRESSION procedure'.
@{A,D@}
@end display
-The @cmd{DESCRIPTIVES} procedure reads the active file and outputs
+The @cmd{DESCRIPTIVES} procedure reads the active dataset and outputs
descriptive
statistics requested by the user. In addition, it can optionally
compute Z-scores.
@cindex transformations
The PSPP procedures examined in this chapter manipulate data and
-prepare the active file for later analyses. They do not produce output,
+prepare the active dataset for later analyses. They do not produce output,
as a rule.
@menu
* FLIP:: Exchange variables with cases.
* IF:: Conditionally assigning a calculated value.
* RECODE:: Mapping values from one set to another.
-* SORT CASES:: Sort the active file.
+* SORT CASES:: Sort the active dataset.
@end menu
@node AGGREGATE
system file, portable file, or scratch file by file name or file
handle (@pxref{File Handles}).
The aggregated cases are written to this file. If @samp{*} is
-specified, then the aggregated cases replace the active file.
+specified, then the aggregated cases replace the active dataset's data.
Use of OUTFILE to write a portable file or scratch file is a PSPP extension.
If OUTFILE=@samp{*} is given, then the subcommand MODE may also be
specified.
The mode subcommand has two possible values: ADDVARIABLES or REPLACE.
-In REPLACE mode, the entire active file is replaced by a new file
+In REPLACE mode, the entire active dataset is replaced by a new dataset
which contains just the break variables and the destination varibles.
In this mode, the new file will contain as many cases as there are
unique combinations of the break variables.
In ADDVARIABLES mode, the destination variables will be appended to
-the existing active file.
+the existing active dataset.
Cases which have identical combinations of values in their break
variables, will receive identical values for the destination variables.
-The number of cases in the active file will remain unchanged.
+The number of cases in the active dataset will remain unchanged.
Note that if ADDVARIABLES is specified, then the data @emph{must} be
sorted on the break variables.
-By default, the active file will be sorted based on the break variables
-before aggregation takes place. If the active file is already sorted
+By default, the active dataset will be sorted based on the break variables
+before aggregation takes place. If the active dataset is already sorted
or otherwise grouped in terms of the break variables, specify
PRESORTED to save time.
PRESORTED is assumed if MODE=ADDVARIABLES is used.
-Specify DOCUMENT to copy the documents from the active file into the
+Specify DOCUMENT to copy the documents from the active dataset into the
aggregate file (@pxref{DOCUMENT}). Otherwise, the aggregate file will
not contain any documents, even if the aggregate file replaces the
-active file.
+active dataset.
Normally, only a single case (for SD and SD., two cases) need be
non-missing in each group for the aggregate variable to be
At least one break variable must be specified on BREAK, a
required subcommand. The values of these variables are used to divide
-the active file into groups to be summarized. In addition, at least
+the active dataset into groups to be summarized. In addition, at least
one @var{dest_var} must be specified.
One or more sets of aggregation variables must be specified. Each set
(@pxref{LEAVE}) resets the variable's left state. Therefore,
@code{LEAVE} should be specified following @cmd{COMPUTE}, not before.
-@cmd{COMPUTE} is a transformation. It does not cause the active file to be
+@cmd{COMPUTE} is a transformation. It does not cause the active dataset to be
read.
When @cmd{COMPUTE} is specified following @cmd{TEMPORARY}
FLIP /VARIABLES=var_list /NEWNAMES=var_name.
@end display
-@cmd{FLIP} transposes rows and columns in the active file. It
+@cmd{FLIP} transposes rows and columns in the active dataset. It
causes cases to be swapped with variables, and vice versa.
-All variables in the transposed active file are numeric. String
+All variables in the transposed active dataset are numeric. String
variables take on the system-missing value in the transposed file.
No subcommands are required. If specified, the VARIABLES subcommand
The resultant dictionary contains a CASE_LBL variable, a string
variable of width 8, which stores the names of the variables in the
dictionary before the transposition. Variables names longer than 8
-characters are truncated. If the active file is subsequently
+characters are truncated. If the active dataset is subsequently
transposed using @cmd{FLIP}, this variable can be used to recreate the
original variable names.
SORT CASES BY var_list[(@{D|A@}] [ var_list[(@{D|A@}] ] ...
@end display
-@cmd{SORT CASES} sorts the active file by the values of one or more
+@cmd{SORT CASES} sorts the active dataset by the values of one or more
variables.
Specify BY and a list of variables to sort by. By default, variables
@cmd{SORT CASES} is a procedure. It causes the data to be read.
-@cmd{SORT CASES} attempts to sort the entire active file in main memory.
+@cmd{SORT CASES} attempts to sort the entire active dataset in main memory.
If workspace is exhausted, it falls back to a merge sort algorithm that
involves creates numerous temporary files.
encountered in the input.
@menu
-* ADD DOCUMENT:: Add documentary text to the active file.
+* ADD DOCUMENT:: Add documentary text to the active dataset.
* CACHE:: Ignored for compatibility.
* CD:: Change the current directory.
* COMMENT:: Document your syntax file.
-* DOCUMENT:: Document the active file.
-* DISPLAY DOCUMENTS:: Display active file documents.
-* DISPLAY FILE LABEL:: Display the active file label.
-* DROP DOCUMENTS:: Remove documents from the active file.
+* DOCUMENT:: Document the active dataset.
+* DISPLAY DOCUMENTS:: Display active dataset documents.
+* DISPLAY FILE LABEL:: Display the active dataset label.
+* DROP DOCUMENTS:: Remove documents from the active dataset.
* ECHO:: Write a string to the output stream.
* ERASE:: Erase a file.
* EXECUTE:: Execute pending transformations.
-* FILE LABEL:: Set the active file's label.
+* FILE LABEL:: Set the active dataset's label.
* FINISH:: Terminate the PSPP session.
* HOST:: Temporarily return to the operating system.
* INCLUDE:: Include a file within the current one.
@cmd{ADD DOCUMENT} adds one or more lines of descriptive commentary to
-the active file. Documents added in this way are saved to system files.
+the active dataset. Documents added in this way are saved to system files.
They can be viewed using @cmd{SYSFILE INFO} or @cmd{DISPLAY
-DOCUMENTS}. They can be removed from the active file with @cmd{DROP
+DOCUMENTS}. They can be removed from the active dataset with @cmd{DROP
DOCUMENTS}.
Each line of documentary text must be enclosed in quotation marks, and
@end display
@cmd{DOCUMENT} adds one or more lines of descriptive commentary to the
-active file. Documents added in this way are saved to system files.
+active dataset. Documents added in this way are saved to system files.
They can be viewed using @cmd{SYSFILE INFO} or @cmd{DISPLAY
-DOCUMENTS}. They can be removed from the active file with @cmd{DROP
+DOCUMENTS}. They can be removed from the active dataset with @cmd{DROP
DOCUMENTS}.
Specify the @var{documentary text} following the DOCUMENT keyword.
DISPLAY DOCUMENTS.
@end display
-@cmd{DISPLAY DOCUMENTS} displays the documents in the active file. Each
+@cmd{DISPLAY DOCUMENTS} displays the documents in the active dataset. Each
document is preceded by a line giving the time and date that it was
added. @xref{DOCUMENT}.
@end display
@cmd{DISPLAY FILE LABEL} displays the file label contained in the
-active file,
+active dataset,
if any. @xref{FILE LABEL}.
This command is a PSPP extension.
DROP DOCUMENTS.
@end display
-@cmd{DROP DOCUMENTS} removes all documents from the active file.
+@cmd{DROP DOCUMENTS} removes all documents from the active dataset.
New documents can be added with @cmd{DOCUMENT} (@pxref{DOCUMENT}).
-@cmd{DROP DOCUMENTS} changes only the active file. It does not modify any
+@cmd{DROP DOCUMENTS} changes only the active dataset. It does not modify any
system files stored on disk.
@node ECHO
EXECUTE.
@end display
-@cmd{EXECUTE} causes the active file to be read and all pending
+@cmd{EXECUTE} causes the active dataset to be read and all pending
transformations to be executed.
@node FILE LABEL
FILE LABEL file_label.
@end display
-@cmd{FILE LABEL} provides a title for the active file. This
+@cmd{FILE LABEL} provides a title for the active dataset. This
title will be saved into system files and portable files that are
created during this PSPP run.
@node Variable Attributes
@chapter Manipulating variables
-The variables in the active file dictionary are important. There are
+The variables in the active dataset dictionary are important. There are
several utility functions for examining and adjusting them.
@menu
* ADD VALUE LABELS:: Add value labels to variables.
* DELETE VARIABLES:: Delete variables.
-* DISPLAY:: Display information about the active file.
+* DISPLAY:: Display information about the active dataset.
* FORMATS:: Set print and write formats.
* LEAVE:: Don't clear variables between cases.
* MISSING VALUES:: Set missing values for variables.
DISPLAY [SORTED] VECTORS.
@end display
-@cmd{DISPLAY} displays information about the active file. A variety
+@cmd{DISPLAY} displays information about the active dataset. A variety
of different forms of information can be requested.
The following keywords primarily cause information about variables to
be displayed. With these keywords, by default information is
-displayed about all variable in the active file, in the order that
-variables occur in the active file dictionary. The SORTED keyword
+displayed about all variable in the active dataset, in the order that
+variables occur in the active dataset dictionary. The SORTED keyword
causes output to be sorted alphabetically by variable name. The
VARIABLES subcommand limits output to the specified variables.
@item INDEX
The variables' names are displayed along with a value describing their
-position within the active file dictionary.
+position within the active dataset dictionary.
@item LABELS
Variable names, positions, and variable labels are displayed.
reinitialized whenever a new case is processed.
Normally, when a data file is processed, every variable in the active
-file is initialized to the system-missing value or spaces at the
+dataset is initialized to the system-missing value or spaces at the
beginning of processing for each case. When a variable has been
specified on @cmd{LEAVE}, this is not the case. Instead, that variable is
initialized to 0 (not system-missing) or spaces for the first case.
@end display
@cmd{MODIFY VARS} reorders, renames, and deletes variables in the
-active file.
+active dataset.
At least one subcommand must be specified, and no subcommand may be
specified more than once. DROP and KEEP may not both be specified.
The REORDER subcommand changes the order of variables in the active
-file. Specify one or more lists of variable names in parentheses. By
+dataset. Specify one or more lists of variable names in parentheses. By
default, each list of variables is rearranged into the specified order.
To put the variables into the reverse of the specified order, put
keyword BACKWARD before the parentheses. To put them into alphabetical
order in the dictionary, specify keyword ALPHA before the parentheses.
BACKWARD and ALPHA may also be combined.
-To rename variables in the active file, specify RENAME, an equals sign
+To rename variables in the active dataset, specify RENAME, an equals sign
(@samp{=}), and lists of the old variable names and new variable names
separated by another equals sign within parentheses. There must be the
same number of old and new variable names. Each old variable is renamed to
variables may be specified.
The DROP subcommand deletes a specified list of variables from the
-active file.
+active dataset.
The KEEP subcommand keeps the specified list of variables in the active
-file. Any unlisted variables are deleted from the active file.
+dataset. Any unlisted variables are deleted from the active dataset.
MAP is currently ignored.
@end display
@cmd{RENAME VARIABLES} changes the names of variables in the active
-file. Specify lists of the old variable names and new
+dataset. Specify lists of the old variable names and new
variable names, separated by an equals sign (@samp{=}), within
parentheses. There must be the same number of old and new variable
names. Each old variable is renamed to the corresponding new variable
@end display
@cmd{VARIABLE ATTRIBUTE} adds, modifies, or removes user-defined
-attributes associated with variables in the active file. Custom
+attributes associated with variables in the active dataset. Custom
variable attributes are not interpreted by PSPP, but they are saved as
part of system files and may be used by other software that reads
them.
the latter case, all the array elements numbered higher than the
deleted element are shifted down, filling the vacated position.
-To associate custom attributes with the entire active file, instead of
+To associate custom attributes with the entire active dataset, instead of
with particular variables, use @cmd{DATAFILE ATTRIBUTE} (@pxref{DATAFILE ATTRIBUTE}) instead.
@cmd{VARIABLE ATTRIBUTE} takes effect immediately. It is not affected
This is the file label
-Documents in the active file:
+Documents in the active dataset:
This is a document line
/* Case initializer.
The procedure code has to resize cases provided by the active
- file data source, to provide room for any other variables that
+ dataset data source, to provide room for any other variables that
should go in the case, fill in the values of "left" variables,
and initialize the values of other non-left variable to zero
or spaces. Then, when we're done with that case, we have to
save the values of "left" variables to copy into the next case
- read from the active file.
+ read from the active dataset.
The caseinit data structure provides a little help for
tracking what data to initialize or to copy from case to
/* PSPP - a program for statistical analysis.
- Copyright (C) 2007, 2009, 2011 Free Software Foundation, Inc.
+ Copyright (C) 2007, 2009, 2010, 2011 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
A casereader abstracts interfaces through which cases may be
read. A casereader may be a front-end for a system file, a
- portable file, the active file in a data set, or anything else
- on which a casereader interface has been overlaid. Casereader
- layering, in which a casereader acts as a filter or translator
- on top of another casereader, is also supported.
+ portable file, a dataset, or anything else on which a
+ casereader interface has been overlaid. Casereader layering,
+ in which a casereader acts as a filter or translator on top of
+ another casereader, is also supported.
There is no central interface for obtaining casereaders: a
casereader for reading a system file is obtained from the
}
}
-/* Discards the active file dictionary, data, and transformations. */
+/* Discards the active dataset's dictionary, data, and transformations. */
void
dataset_clear (struct dataset *ds)
{
return dataset_source (ds) != NULL;
}
-/* Replaces the active file's data by READER. READER's cases must have an
+/* Replaces the active dataset's data by READER. READER's cases must have an
appropriate format for DS's dictionary. */
bool
dataset_set_source (struct dataset *ds, struct casereader *reader)
ds->lag_cases[deque_push_front (&ds->lag)] = case_ref (c);
}
- /* Write case to replacement active file. */
+ /* Write case to replacement dataset. */
ds->cases_written++;
if (ds->sink != NULL)
casewriter_write (ds->sink,
/* Make sure transformations happen for every input case, in
case they have side effects, and ensure that the replacement
- active file gets all the cases it should. */
+ active dataset gets all the cases it should. */
while ((c = casereader_read (reader)) != NULL)
case_unref (c);
/* Must return false if the source casereader, a transformation,
or the sink casewriter signaled an error. (If a temporary
transformation signals an error, then the return value is
- false, but the replacement active file may still be
+ false, but the replacement active dataset may still be
untainted.) */
bool
proc_commit (struct dataset *ds)
}
-/* Checks whether DS has a corrupted active file. If so,
+/* Checks whether DS has a corrupted active dataset. If so,
discards it and returns false. If not, returns true without
doing anything. */
bool
/* Deletes variable V from dictionary D and frees V.
This is a very bad idea if there might be any pointers to V
- from outside D. In general, no variable in the active file's
+ from outside D. In general, no variable in the active dataset's
dictionary should be deleted when any transformations are
active on the dictionary's dataset, because those
transformations might reference the deleted variable. The
/* Command processing states. */
enum states
{
- S_INITIAL = 0x01, /* Allowed before active file defined. */
- S_DATA = 0x02, /* Allowed after active file defined. */
+ S_INITIAL = 0x01, /* Allowed before active dataset defined. */
+ S_DATA = 0x02, /* Allowed after active dataset defined. */
S_INPUT_PROGRAM = 0x04, /* Allowed in INPUT PROGRAM. */
S_FILE_TYPE = 0x08, /* Allowed in FILE TYPE. */
S_ANY = 0x0f /* Allowed anywhere. */
{
/* One allowed state. */
case S_INITIAL:
- msg (SE, _("%s is allowed only before the active file has "
+ msg (SE, _("%s is allowed only before the active dataset has "
"been defined."), command->name);
break;
case S_DATA:
- msg (SE, _("%s is allowed only after the active file has "
+ msg (SE, _("%s is allowed only after the active dataset has "
"been defined."), command->name);
break;
case S_INPUT_PROGRAM:
case S_INITIAL | S_DATA:
NOT_REACHED ();
case S_INITIAL | S_INPUT_PROGRAM:
- msg (SE, _("%s is allowed only before the active file has "
+ msg (SE, _("%s is allowed only before the active dataset has "
"been defined or inside INPUT PROGRAM."), command->name);
break;
case S_INITIAL | S_FILE_TYPE:
- msg (SE, _("%s is allowed only before the active file has "
+ msg (SE, _("%s is allowed only before the active dataset has "
"been defined or inside FILE TYPE."), command->name);
break;
case S_DATA | S_INPUT_PROGRAM:
- msg (SE, _("%s is allowed only after the active file has "
+ msg (SE, _("%s is allowed only after the active dataset has "
"been defined or inside INPUT PROGRAM."), command->name);
break;
case S_DATA | S_FILE_TYPE:
- msg (SE, _("%s is allowed only after the active file has "
+ msg (SE, _("%s is allowed only after the active dataset has "
"been defined or inside FILE TYPE."), command->name);
break;
case S_INPUT_PROGRAM | S_FILE_TYPE:
/* Three allowed states. */
case S_DATA | S_INPUT_PROGRAM | S_FILE_TYPE:
- msg (SE, _("%s is allowed only after the active file has "
+ msg (SE, _("%s is allowed only after the active dataset has "
"been defined, inside INPUT PROGRAM, or inside "
"FILE TYPE."), command->name);
break;
case S_INITIAL | S_INPUT_PROGRAM | S_FILE_TYPE:
- msg (SE, _("%s is allowed only before the active file has "
+ msg (SE, _("%s is allowed only before the active dataset has "
"been defined, inside INPUT PROGRAM, or inside "
"FILE TYPE."), command->name);
break;
DEF_CMD (S_ANY, 0, "SYSFILE INFO", cmd_sysfile_info)
DEF_CMD (S_ANY, 0, "TITLE", cmd_title)
-/* Commands that define (or replace) the active file. */
+/* Commands that define (or replace) the active dataset. */
DEF_CMD (S_INITIAL | S_DATA, 0, "ADD FILES", cmd_add_files)
DEF_CMD (S_INITIAL | S_DATA | S_INPUT_PROGRAM | S_FILE_TYPE, 0, "DATA LIST", cmd_data_list)
DEF_CMD (S_INITIAL | S_DATA, 0, "GET", cmd_get)
DEF_CMD (S_DATA | S_INPUT_PROGRAM, F_ENHANCED, "XEXPORT", cmd_xexport)
DEF_CMD (S_DATA | S_INPUT_PROGRAM, 0, "XSAVE", cmd_xsave)
-/* Commands that may appear after active file definition. */
+/* Commands that may appear after active dataset definition. */
DEF_CMD (S_DATA, 0, "AGGREGATE", cmd_aggregate)
DEF_CMD (S_DATA, 0, "AUTORECODE", cmd_autorecode)
DEF_CMD (S_DATA, 0, "BEGIN DATA", cmd_begin_data)
UNIMPL_CMD ("CATPCA", "Categorical principle components analysis")
UNIMPL_CMD ("CATREG", "Categorical regression")
UNIMPL_CMD ("CCF", "Time series cross correlation")
-UNIMPL_CMD ("CLEAR TRANSFORMATIONS", "Clears transformations from active file")
+UNIMPL_CMD ("CLEAR TRANSFORMATIONS", "Clears transformations from active dataset")
UNIMPL_CMD ("CLUSTER", "Hierachial clustering")
UNIMPL_CMD ("CONJOINT", "Analyse full concept data")
UNIMPL_CMD ("CORRESPONDENCE", "Show correspondence")
/* PSPP - a program for statistical analysis.
- Copyright (C) 1997-9, 2000, 2006 Free Software Foundation, Inc.
+ Copyright (C) 1997-9, 2000, 2006, 2010 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
/* Command processing state. */
enum cmd_state
{
- CMD_STATE_INITIAL, /* No active file yet defined. */
- CMD_STATE_DATA, /* Active file has been defined. */
+ CMD_STATE_INITIAL, /* No active dataset yet defined. */
+ CMD_STATE_DATA, /* Active dataset has been defined. */
CMD_STATE_INPUT_PROGRAM, /* Inside INPUT PROGRAM. */
CMD_STATE_FILE_TYPE /* Inside FILE TYPE. */
};
{
if (!dataset_has_source (ds))
{
- msg (SE, _("Cannot specify the active file since no active "
- "file has been defined."));
+ msg (SE, _("Cannot specify the active dataset since none "
+ "has been defined."));
goto error;
}
if (proc_make_temporary_transformations_permanent (ds))
msg (SE, _("This command may not be used after TEMPORARY when "
- "the active file is an input source. "
+ "the active dataset is an input source. "
"Temporary transformations will be made permanent."));
file->dict = dict_clone (dataset_dict (ds));
msg (SE, _("File %s lacks BY variable %s."),
fh_get_name (file->handle), name);
else
- msg (SE, _("Active file lacks BY variable %s."), name);
+ msg (SE, _("Active dataset lacks BY variable %s."),
+ name);
ok = false;
}
}
static const struct casereader_class data_parser_casereader_class;
-/* Replaces DS's active file by an input program that reads data
+/* Replaces DS's active dataset by an input program that reads data
from READER according to the rules in PARSER, using DICT as
the underlying dictionary. Ownership of PARSER and READER is
transferred to the input program, and ownership of DICT is
if (var_cnt == dict_get_var_cnt (dataset_dict (ds)))
{
msg (SE, _("DELETE VARIABLES may not be used to delete all variables "
- "from the active file dictionary. Use NEW FILE instead."));
+ "from the active dataset dictionary. "
+ "Use NEW FILE instead."));
goto error;
}
this type. */
unsigned already_encountered = 0;
- /* What we're gonna do to the active file. */
+ /* What we are going to do to the active dataset. */
struct var_modification vm;
/* Return code. */
if (n == 0)
{
if (dict_get_n_mrsets (dict) == 0)
- msg (SN, _("The active file dictionary does not contain any multiple "
- "response sets."));
+ msg (SN, _("The active dataset dictionary does not contain any "
+ "multiple response sets."));
stringi_set_destroy (&mrset_names_set);
return true;
}
return CMD_FAILURE;
if (dict_get_label (dataset_dict (ds)) == NULL)
tab_output_text (TAB_LEFT,
- _("The active file does not have a file label."));
+ _("The active dataset does not have a file label."));
else
{
tab_output_text (TAB_LEFT | TAT_TITLE, _("File label:"));
const struct string_array *documents = dict_get_documents (dict);
if (string_array_is_empty (documents))
- tab_output_text (TAB_LEFT, _("The active file dictionary does not "
+ tab_output_text (TAB_LEFT, _("The active dataset dictionary does not "
"contain any documents."));
else
{
size_t i;
tab_output_text (TAB_LEFT | TAT_TITLE,
- _("Documents in the active file:"));
+ _("Documents in the active dataset:"));
for (i = 0; i < dict_get_document_line_cnt (dict); i++)
tab_output_text (TAB_LEFT | TAB_FIX, dict_get_document_line (dict, i));
}
if (out_file == NULL)
{
- /* The active file will be replaced by the aggregated data,
+ /* The active dataset will be replaced by the aggregated data,
so TEMPORARY is moot. */
proc_cancel_temporary_transformations (ds);
proc_discard_output (ds);
var_names_add (flip->pool, &flip->old_names,
pool_strdup (flip->pool, var_get_name (vars[i])));
- /* Read the active file into a flip_sink. */
+ /* Read the active dataset into a flip_sink. */
proc_discard_output (ds);
input = proc_open (ds);
/* Do the ranking */
result = rank_cmd (ds, &sc, rank_specs, n_rank_specs);
- /* Put the active file back in its original order. Delete
+ /* Put the active dataset back in its original order. Delete
our sort key, which we don't need anymore. */
{
struct casereader *sorted;
The value of a successor-taint is in summarizing the history
of the taint objects derived from a common parent. For
example, consider a casereader that represents the active
- file. A statistical procedure can clone this casereader any
+ dataset. A statistical procedure can clone this casereader any
number of times and pass it to analysis functions, which may
themselves in turn clone it themselves, pass it to sort or
merge functions, etc. Conventionally, all of these functions
<property name="label" translatable="yes">_Sort Cases</property>
<property name="name">data_sort-cases</property>
<property name="stock-id">gtk-sort-ascending</property>
- <property name="tooltip" translatable="yes">Sort cases in the active file</property>
+ <property name="tooltip" translatable="yes">Sort cases in the active dataset</property>
</object>
</child>
<child>
<object class="GtkAction" id="data_split-file">
<property name="name">data_split-file</property>
<property name="label" translatable="yes">S_plit File</property>
- <property name="tooltip" translatable="yes">Split the active file</property>
+ <property name="tooltip" translatable="yes">Split the active dataset</property>
<property name="stock-id">pspp-split-file</property>
</object>
</child>
unsigned long int lazy_serial;
/* When the user executes a number of snippets of syntax in a
- row, none of which read from the active file, the GUI becomes
+ row, none of which read from the active dataset, the GUI becomes
progressively less responsive. The reason is that each syntax
- execution encapsulates the active file data in another
+ execution encapsulates the active dataset data in another
datasheet layer. The cumulative effect of having a number of
layers of datasheets wastes time and space.
])
AT_CHECK([pspp -o pspp.csv sys-file.sps])
AT_CHECK([cat pspp.csv], [0], [dnl
-Documents in the active file:
+Documents in the active dataset:
First line of documents
AT_CHECK([pspp -O format=csv command.sps], [1], [dnl
command.sps:1: error: Unknown command `DATA rubbish'.
-command.sps:2: error: EXECUTE: EXECUTE is allowed only after the active file has been defined.
+command.sps:2: error: EXECUTE: EXECUTE is allowed only after the active dataset has been defined.
])
AT_CLEANUP
])
AT_CLEANUP
-dnl Test bug handling TABLE from active file found by John Darrington.
-AT_SETUP([MATCH FILES bug with TABLE from active file])
+dnl Test bug handling TABLE from active dataset found by John Darrington.
+AT_SETUP([MATCH FILES bug with TABLE from active dataset])
AT_DATA([match-files.sps], [dnl
DATA LIST LIST NOTABLE /x * y *.
BEGIN DATA
","Multiple category set
"
-mrsets.sps:50: note: MRSETS: The active file dictionary does not contain any multiple response sets.
+mrsets.sps:50: note: MRSETS: The active dataset dictionary does not contain any multiple response sets.
])
AT_CLEANUP
])
AT_CHECK([pspp -o pspp.csv insert.sps], [1], [dnl
batch.sps:2.1-2.4: error: INPUT PROGRAM: Syntax error at `loop': expecting end of command.
-batch.sps:3: error: COMPUTE: COMPUTE is allowed only after the active file has been defined or inside INPUT PROGRAM.
+batch.sps:3: error: COMPUTE: COMPUTE is allowed only after the active dataset has been defined or inside INPUT PROGRAM.
batch.sps:4: error: END CASE: END CASE is allowed only inside INPUT PROGRAM.
-insert.sps:4: error: LIST: LIST is allowed only after the active file has been defined.
+insert.sps:4: error: LIST: LIST is allowed only after the active dataset has been defined.
])
AT_CLEANUP
])
AT_CHECK([pspp -o pspp.csv insert.sps], [1], [dnl
Dir1/foo.sps:1: error: INSERT: Can't find `bar.sps' in include file search path.
-insert.sps:2: error: LIST: LIST is allowed only after the active file has been defined.
+insert.sps:2: error: LIST: LIST is allowed only after the active dataset has been defined.
])
AT_CLEANUP
AT_CHECK([pspp -O format=csv insert.sps], [1], [dnl
insert.sps:2: error: INSERT: Can't find `nonexistent' in include file search path.
-insert.sps:6: error: LIST: LIST is allowed only after the active file has been defined.
+insert.sps:6: error: LIST: LIST is allowed only after the active dataset has been defined.
])
AT_CLEANUP
AT_SETUP([FILE LABEL and (ADD) DOCUMENT])
AT_DATA([file-label.sps], [dnl
-/* Set up a dummy active file in memory.
+/* Set up a dummy active dataset in memory.
data list /X 1 Y 2.
begin data.
16
ADD DOCUMENT 'Line one' 'Line two'.
-/* Save the active file then get it and display the documents again.
+/* Save the active dataset then get it and display the documents again.
save /OUTFILE='foo.save'.
get /FILE='foo.save'.
display documents.
X,1,1- 1,F1.0
Y,1,2- 2,F1.0
-Documents in the active file:
+Documents in the active dataset:
document First line of a document
This is a test file label
-Documents in the active file:
+Documents in the active dataset:
document First line of a document
This is a test file label
-Documents in the active file:
+Documents in the active dataset:
document First line of a document
(Entered <date>)
-Documents in the active file:
+Documents in the active dataset:
document First line of a document
My Dictionary
-Documents in the active file:
+Documents in the active dataset:
These Documents
This is the file label
-Documents in the active file:
+Documents in the active dataset:
This is a document line
This is the file label
-Documents in the active file:
+Documents in the active dataset:
This is a document line