Documentos de Académico
Documentos de Profesional
Documentos de Cultura
This Exam Preparation book is intended for those preparing for the
SAS Certified Base Programming for SAS 9 Exam.
Do not underestimate the value of your own notes and study aids.
The more you have, the more prepared you will be.
These study notes and sample exam questions in this book will allow
you to more easily prepare for an SAS Programming exam.
Ivanka Menken
Executive Director
The Art of Service
1 Foreword............................................................................ 1
2 Table of Contents............................................................... 3
3 SAS Certified Base Programmer for SAS 9 ....................... 6
4 Exam Specifics .................................................................. 7
5 Exam Prerequisites............................................................ 7
6 SAS Fundamentals ............................................................ 8
6.1 SAS Programs ............................................................. 8
6.2 SAS Libraries ............................................................. 10
6.3 SAS Data Sets ........................................................... 14
6.4 SAS System Outputs ................................................. 17
7 Creating SAS Data Sets .................................................. 19
7.1 Raw Data Files........................................................... 19
7.2 The Data Step............................................................ 21
7.3 Processing DATA Steps ............................................ 27
7.4 Debugging DATA Steps............................................. 30
7.5 SAS Data Sets ........................................................... 33
7.6 Combining SAS Data Sets......................................... 37
7.7 Processing Match-Merge ........................................... 41
8 Working with Data............................................................ 44
8.1 Column Input ............................................................. 44
8.2 Reading Free Format Data ........................................ 47
8.3 Reading Data and Time Values ................................. 51
9 Working with Observations .............................................. 52
9.1 Creating One Observation From Multiple Records .... 52
9.2 Creating Multiple Observations From Single Records 54
10 Creating Reports.............................................................. 55
10.1 Basic Reports ......................................................... 55
10.2 Advanced Reporting ............................................... 63
10.3 Descriptive Statistics............................................... 68
10.4 Creating Frequency Tables .................................... 72
10.5 Producing HTML Output ......................................... 75
11 Advanced Work with Variables ........................................ 78
11.1 User-Defined Formatting ........................................ 78
11.2 Using SAS Functions.............................................. 85
Copyright The Art of Service
3 Brisbane, Australia │ Email: service@theartofservice.com │Web: http://theartofservice.com
│eLearning: http://theartofservice.org
Phone: +61 (0)7 3252 2055
11.3 Expanding DO Loops.............................................. 93
11.4 Process Arrays ....................................................... 95
12 Troubleshooting SAS Programs ...................................... 98
12.1 Types of Errors ....................................................... 98
13 Practice Exam................................................................ 100
14 Answer Guide ................................................................ 111
14.1 Answers to Questions........................................... 111
15 References .................................................................... 118
Notice of Liability
The information in this book is distributed on an “As Is” basis without warranty. While
every precaution has been taken in the preparation of the book, neither the author
nor the publisher shall have any liability to any person or entity with respect to any
loss or damage caused or alleged to be caused directly or indirectly by the
instructions contained in this book or by the products described in it.
Trademarks
Many of the designations used by manufacturers and sellers to distinguish their
products are claimed as trademarks. Where those designations appear in this book,
and the publisher was aware of a trademark claim, the designations appear as
requested by the owner of the trademark. All other product names and services
identified throughout this book are used in editorial fashion only and for the benefit of
such companies with no intention of infringement of the trademark. No such use, or
the use of any trade name, is intended to convey endorsement or other affiliation with
this book.
5 Exam Prerequisites
PROC steps are used to manipulate the data typically for reporting
purposes. As a result, PROC steps can:
x Create new SAS data sets
x List, sort, and provide summaries of data
x Produce statistical results
x Produce plots and charts.
New steps begin with a DATA and PROC statement. The completion
of a step is identified by a RUN or QUIT statement.
SAS will read the step completely. When a new step is found, SAS
stops reading and will execute the step it just read.
libref is ‘library reference’, the SAS data library containing the file.
filename is the name of the specified file.
To read or write to foreign files, an engine for the file type must be
used. A SAS engine is a set of internal instructions used by SAS.
Sometimes, the appropriate engine is brought up automatically; other
times, the engine must be specified.
x Non-relational Files
ADABAS
IMS/DL-I
CA-IDMS
SYSTEM 2000
Data sets must have a name. Valid data set names can:
x Be 1 to 32 characters long
x Begin with a letter, uppercase or lowercase, or an
underscore
x Consist of any combination of letters, numbers, and
underscores.
Data set has two parts: a descriptive portion and a data portion that
the data set can locate.
When data values must be read into a SAS data set, how they are
read must be specified. Reading specifications are controlled by
informats.
To view the current setting of one or all SAS system options, use the
OPTIONS procedure.
x Format:
PROC OPTIONS <option(s)>;
RUN;
A raw data file is an external text file. Raw data files are non-
proprietary. Many software programs use raw data files.
The external file contains data values which are organized in fields.
Fields may be difficult to locate in raw data format. Fixed fields
ensures the values for specific variables are located in the same
position for all records.
The external file containing the raw data must be referenced using a
FILENAME statement:
x Use the FILENAME statement
x Format:
FILENAME fileref 'filename'
o fileref is a name associated to an external file and
must be 1 to 8 characters long beginning with a
letter or underscore and containing only letters,
numbers, or underscores
o filename is the fully qualified name or location of
the file.
When reading raw data, the INFILE statement identifies which file is
storing the data.
To identify the external file where data is stored:
x Use the INFILE statement
x Format:
INFILE file-specification <options>;
o file-specification takes the form of fileref from a
previously defined file reference or 'filename' to
point to the actual name and location of the file
o options describes the characteristics of the input
file and how the raw data should be read.
Columns are the common input style specifying actual locations for
values. Columns should not be used in all situations, but only when
data is:
x consists of standard character and numeric values
x in fixed fields.
The log will verify that the raw data file was read correctly, typically
showing:
x The number of records read
x The number of observations and variables created.
If invalid data occurs, a note in the log will occur which include the
variable that erred, a column ruler and actual data line.
When a DATA step is submitted, the SAS processes the DATA step
and creates a new SAS data set. The process consists of two
phases:
x The compilation phase scans each statement for errors.
An error will prevent further processing. When complete
with no errors, the descriptor portion of the data set is
created
x The execution phase, the DATA step reads and processes
the input data. By default, the DATA step is executed
once for each record in the input file.
The creation of a program data vector begins after the input buffer is
created. The program data vector is an area of memory where the
SAS will build the data set one observation at a time:
x Refers to logical, not physical, memory
x Contains two variables automatically which are used for
processing but not written to the data set
x _N_ is the number of times the DATA step begins
execution
x _ERROR_ is the occurrence of an error caused by data.
The default is 0, identifying no errors. One of more errors
existing, the value is 1.
INPUT statements add a slot to the program data vector for each
variable in the new data set.
Variable attributes are identified when the variable is first
encountered.
At the start of the execution phase, the file is checked for errors.
x _N_ is set at value 1.
The INFILE statement is read to identify the location of the raw data.
Any INPUT statements are read from the input buffer:
x an input pointer will track of the reading position
x the input statement starts at column 1 by default.
At the end of the DATA step:
x Values in the program data vector are written as the first
observation
x The value of _N_ is incremented by 1 and a return to the
top of the DATA step
x Variable values in the program data vector are re-set to
missing.
The DATA step becomes a loop with each pass through called an
iteration.
The execution phase continues until the end-of-file marker in the raw
data file is reached.
The SAS will interpret some syntax errors. If the error is not
interpreted:
x prints the word ERROR in the log followed by the error
message
x compiles the step, but does not execute
x prints a warning - NOTE: The SAS System stopped this
step because of errors.
All compilation and execution errors are written to the log, without
creating a data set. After correcting errors, the NULL statement can
be replaced with the appropriate data set name.
The OBS= option in the INFILE statement can limit the number of
observations that are read or created during execution.
To specify one or more data set variables for a single iteration of the
DATA step, add the expression 'code type':
x Format:
PUT 'NOTE: Data Set Variables:'
code type;
o This expression will display only the value of the
variable.
x Format:
PUT 'NOTE: Data Set Variables:'
code= type=;
o This expression will display the name and value of
the variable.
SAS Data Sets are created from either raw data sets or other SAS
data sets.
Observations in the input data set are read as they appear in the
physical file, or sequentially.
Sequential reading can be bypassed using a POINT= option.
The variable specified in the END= option will not be added to the
data set. END= and POINT= cannot be used in conjunction.
Compilation steps:
x Program data vector is created
x Each statement is scanned for syntax errors
x Any created variables are added to the program data
vector
x At the bottom of the DATA step, compilation ends and the
descriptor portion of the new SAS data set is created.
Execution steps:
x DATA step executes for each observation in the input data
set
x The value of _N_ is 1 and the value of _ERROR_ is 0; all
other variables are initialized to missing
x The SET statement reads the first observation from the
input data set and write the values to the program data
vector
x Any assignment statements are executed
x At the end of the first iteration of the DATA step, the
Copyright The Art of Service
Brisbane, Australia │ Email: service@theartofservice.com │Web: http://theartofservice.com 36
│eLearning: http://theartofservice.org
Phone: +61 (0)7 3252 2055
values in the program data vector are written to the new
data set
x The value of _N_ is set to N+1
x The values of variables read from the SAS data set with
the SET statement are retained and all other variables set
to missing
x The process continues until all observations are read.
7.6.2 Concatenating
To create a data set combining multiple data sets using
concatenation:
x Use the DATA statement and the SET statement
x Format:
DATA output-SAS-data-set;
SET SAS-data-set-1 SAS-data-set-n;
RUN;
o output-SAS-data-set names the data set to be
created
o SAS-data-set-n names the data sets to be read.
To rename variables:
x Use the RENAME-data set option and the MERGE
statement
x Format:
DATA output-SAS-data-set;
MERGE SAS-data-set-1(RENAME=old-variable-
name=new-variable-name))
SAS-data-set-n;
BY variable(s);
RUN;
o output-SAS-data-set names the data set to be
created
o SAS-data-set-n names the data sets to be read
o variable(s) specifies one or more variables used to
merge
o RENAME=options follows the name of each data
set that contains the variable(s) to be renamed
o old-variable-name identifies the name of the
variable to be renamed
o new-variable-name identifies the new name for the
variable.
Variables can be renamed for data sets specified by the DATA and
SET statements.
A blank field will be read as missing and will not cause other fields to
be misread. Fields or parts of a field can be re-read. Fields do not
have to be separated by blanks or other delimiters.
8.1.2 Informats
Informats are used to explain how the raw data is read. The $w.
informat allows character data to be read. The dollar sign indicates
character only data. The w represents the field width, or number of
columns, of the data. The period ends the informat.
With varied data, the end of column can conflict with the end-of-
record marker causing errors. A PAD option can be used to bypass
common problems with reading fixed-field data in variable-length
records. The PAD option will add blanks to each record to give all
data lines the same length.
By default, List input does not have specified column locations, so:
x all fields must be separated by at least one delimiter
x fields cannot be skipped or re-read
x the order for reading fields is from left to right.
To specify a delimiter:
x Use an INFILE statement and DLM-option
x Format:
INFILE file-specification DLM=delimiter(s);
o file-specification takes the form of fileref from a
previously defined file reference or 'filename' to
point to the actual name and location of the file
o delimiter(s) specifies a delimiter for list input.
DSD changes how delimiters are treated when using a list input:
x by setting the default delimiter to a comma
x treating two consecutive delimiters as a missing value
x removing quotation marks from values.
If multiple delimiters are used in the original file, they can be identified
by using the DLM=option.
SAS stores a date value as the number of days from January 1, 1960
to a given date. SAS stores a time value as the number of seconds
since midnight.
Data and Time informats are used to read data and time expressions
and convert them to SAS data and time values. Like other informats,
they consist of:
x a name
x a field width
x a period delimiter.
The WEEKDATEw. format will display the day of the week, month-
name, day and year.
The WORDDATEw. format will write the data in the form month-
name, day, and year.
When a DATA step executes, the values of the first record are read
and the input pointer is moved by the line pointer control to the
second record. The second record is read and the second line pointer
control moves the input pointer to the third record. This continues until
the INPUT statement is complete.
A SAS program can use the forward slash line pointer control and #n
line pointer control together to read records sequentially and non-
sequentially.
To double space the report, use the DOUBLE option in the PROC
PRINT statement.
x Format:
LABEL variable1='label1';
variable2='label2';
... ;
To format a variable:
x Format:
FORMAT variable(s) format-name;
o variable(s) is a name of one or more variables
whose values are to be written according to a
particular pattern
o format-name specifies a SAS or user-defined
format for the values.
Display variables don't affect the order of rows in the report. If one or
more display variables are in the report, a detail row for each
observation is read from the data set. A detail contains a value for
each display variable.
Order variables determine the order of rows in the report. The detail
rows are ordered according to their formatted values. By default, the
order is ascending: to change this, use the DESCENDING option.
To limit the output, the use of statistic keywords will focus the output.
DESCRIPTIVE STATISTICS
CLM Two-sided confidence limit for the mean
CSS Corrected sum of squares
CV Coefficient of variation
KURTOSIS Kurtosis
/ KURT
LCLM One-sided confidence limit below the mean
MAX Maximum value
MEAN Average
MIN Minimum value
N Number of observations with nonmissing values
NMISS Number of observations with missing values
RANGE Range
SKEWNES Skewness
S /SKEW
STDDEV Standard deviation
/STD
STDERR / Standard error of the mean
STDMEAN
SUM Sum
SUMWGT Sum of the Weight variable values
UCLM One-sided confidence limit above the mean
USS Uncorrected sum of squares
VAR Variance
Copyright The Art of Service
69 Brisbane, Australia │ Email: service@theartofservice.com │Web: http://theartofservice.com
│eLearning: http://theartofservice.org
Phone: +61 (0)7 3252 2055
QUANTILE STATISTICS
th
MEDIAM / Median or 50 percentile
P50
st
P1 1 percentile
th
P5 5 percentile
st
P10 10 percentile
th
Q1 / P25 Lower quartile or 25 percentile
th
Q3 / P75 Upper quartile or 75 percentile
st
P90 90 percentile
st
P95 95 percentile
st
P99 99 percentile
QRANGE Difference between upper and lower quartiles: Q3-Q1
HYPOTHESIS TESTING
PROBT Probability of a greater absolute value for the t value
T Student's t for testing the hypothesis that the population mean
is 0
The keyword for the statistics must be specified and then all the
variables to be computed. If a VAR statement exists, the variables
must be listed in the same order as the variables in the VAR
statement.
By default, the FREQ procedure will create frequency tables for every
variable in the data set. Frequency distributions work best with
variables that can be categorized and whose values are best
summarized by counts.
When ODS statements are submitted and the output is created by the
SAS program:
x ODS creates the output in the form of output objects; each
output object containing:
o Data component - the results of a procedure or
DATA step
o Table definition – information about how the results
are rendered.
x The output object is sent to specified ODS destination(s)
and creates the formatted output controlled by the
destination.
ODS HTML statements can be used to direct the output from multiple
procedures to the same HTML file.
Raw data or data found in a basic SAS data set may not be easily
read in its basic form requiring additional formatting to clarify the
information.
The name, range, and label for each format is provided, as well as:
x the length of the longest value
x number of values defined by this format
x version of SAS the format is compatible with
x the data and time the format was created.
The sum statement will add the results of the expression on the right
side of the plus sign to the numeric variable on the left. The numeric
variable will retain the new value in the program data vector until the
next observation is read.
To read and process fields that are not kept in the data set, use the
DROP= and KEEP= data set options:
x Format:
(DROP variable(s))
(KEEP variable(s))
The KEEP option is used when there are more variables dropped
than kept.
Automatic conversions:
x use the w.d informat
x produce a numeric missing value from any character value
that does not conform to the standard numeric notation.
DO loops allow:
x concise DATA steps to be written
x data to be generated
x statements to be conditionally executed
x data to be read.
To construct a DO loop:
x Use a DO statement
x Format:
DO index-variable=start TO stop BY increment;
SAS statements
END;
o index variable will store the value of the current
iteration of the DO loop
o The start, stop, and increment values:
are set when the entering the DO loop
cannot be changed during processing
can be numbers, variables, or SAS
expressions.
The DO loop executes where the specified calculations are made and
the result added to the previous value for the variable in the program
data vector. The DO loop continues to execute for as many times as
specified in the program. At this point the DO loop ends and finally
the DATA step.
The DIM function can be used to return the number of elements in the
array.
x Format:
DIM (array-name)
Temporary array elements for the DATA step process can be done by
specifying _TEMPORARY_ after the array name and dimension.
Temporary array elements do not appear in the resulting data set.
Copyright The Art of Service
97 Brisbane, Australia │ Email: service@theartofservice.com │Web: http://theartofservice.com
│eLearning: http://theartofservice.org
Phone: +61 (0)7 3252 2055
11.4.4 Multidimensional Arrays
Variables can be grouped into table-like structures, called
multidimensional arrays. To define a multidimensional array, the
number of elements in each dimension is specified separated by a
comma.
Best practices:
x begin DATA and PROC steps in column one
x indent statements within a step
x include a RUN statement after every DATA or PROC step
x begin RUN statements in column one.
Question 1
Which of the following items is not considered a category for SAS functions?
A) Special
B) Descriptive Statistics
C) Arithmetic Operations
D) Variable Control
Question 2
Statements are free format expressions that make up the SAS program.
Which of the following are true about statements?
Question 3
Which of the following statements are correct when using the RETAIN
statement?
A) Variables read with the SET statement will not be affected by the
RETAIN statement
B) The RETAIN statement is used when a variable needs to be
initialized to a value of 0
C) Variables will be initialized to the desired value each time the DATA
step is executed
D) Variables are created during execution
Question 5
When multiple expressions are used within a function, what delimiter should
be used to separate them?
A) Space
B) Semicolon
C) Parentheses
D) Comma
Question 6
Question 8
Each data set has a descriptive portion providing useful information about
the data set. Which of the following items would not be found in the
descriptive portion?
Question 9
What would be the correct raw data value of a datatime field for Dec 15,
1986 10:00pm for SAS?
A) 10942
B) 10935
C) 15756360
D) 121519862200
Question 10
Which location pointer identifies the exact line number from which to begin
reading data from?
A) #n pointer
B) input pointer
C) / pointer
D) Column pointer
Copyright The Art of Service
Brisbane, Australia │ Email: service@theartofservice.com │Web: http://theartofservice.com 102
│eLearning: http://theartofservice.org
Phone: +61 (0)7 3252 2055
Question 11
Question 12
A) DO
B) BY
C) WHERE
D) IF/THEN
Question 13
A) SUBSTR
B) TRIM
C) FIND
D) CATX
Question 14
Question 16
Question 17
Which of the following conditions should discourage the use of the one-to-
one readings to combine data sets?
Question 18
Question 20
Question 21
A) Miller
B) Miller12
C) Miller.2
D) 2miller4u
Question 22
A) When attempting to describe the file where raw data is being written
B) When referencing the file to be read
C) When creating a raw data file
D) When referencing the file to be written to
Question 24
Question 25
When using the VALUE statement to define the format of specific values,
which of the following statements is not correct about identifying the range.
A) Match-merging
B) Interweaving
C) Concatenating
D) None of the above
Question 27
A) WHERE
B) IF/THEN ELSE
C) SET
D) INPUT
Question 28
Question 29
Several libraries are created during a SAS session by default. Which of the
following is not one of those libraries?
A) Sasuser
B) Libname
C) Sashelp
D) Work
Question 31
Question 32
A) _Set.name
B) addAnew_1
C) 0pen_2C1other_rtm*XCX
D) create\B4infinity
Question 33
A) @ pointer control
B) MISSOVER option
C) column input
D) INPUT statement
Question 35
Question 36
Which of the following methods for combining data sets is distinguished for
its use of the BY statement?
A) Interweaving
B) Match-merging
C) Concatenation
D) None of the above
Question 37
Which of the following options does not describe how variables are to be
used in creating a report?
A) DISPLAY
B) ACROSS
C) GROUP
D) NUMERIC
A) Integer binaries
B) Scientific notation
C) Fractions
D) Hexadecimal numbers
Question 39
A) filename
B) libname
C) infile
D) set
Question 40
Question 1
Answer: C
Reasoning: There are many categories for SAS functions, but
Arithmetic Operations is not one of them. The category is actually
Bitwise Logical Operations.
Question 2
Answer: D
Reasoning: Statements can start anywhere in a line which also
allows for multiple statement to exist on a single line. There are no
restrictions to the case required for statements. Statements always
begin with keywords and end in a semicolon.
Question 3
Answer: B
Reasoning: Exponential expressions have a higher priority than
multiplication expressions, unless parentheses exist to control any
calculations.
Question 4
Answer: A
Reasoning: The RETAIN statement is used when a variable needs to
be initialized to a value other than 0. The statement will prevent
variables from being initialized. All of this is done during the
compilation stage, not the execution stage. Variables that are read
with the SET, MERGE, and UPDATE statements are not affected by
the RETAIN statement.
Question 5
Answer: D
Reasoning: Multiple variables, constants, and expressions must be
separated by a comma when used in an argument.
Question 7
Answer: D
Reasoning: If missing values are represented by a special character
that is not used as a separated of data, then the MISSOVER option is
not required.
Question 8
Answer: D
Reasoning: Error messages are found in the program log, not the
descriptive portion of the data set.
Question 9
Answer: C
Reasoning: The datetime value is the number of seconds from
midnight on 1/1/1960. This of course would be a rather large number,
in fact, 120 seconds from 10942 days (including 7 extra days from
leap years). The last answer is incorrect as it is the date and time
written out without any delimiters.
Question 10
Answer: A
Reasoning: The #n pointer references the absolute number of the
line for moving the pointer to read data.
Question 11
Answer: C
Reasoning: In creating reports for SAS programs, the SUM
statement is used to create column totals for numeric values.
Question 12
Answer: A
Reasoning: The key word in this question is ‘group’. Conditional
processing can be performed using some iteration of BY, WHERE,
and IF/THEN, but DO provides an opportunity to group statements
together.
Copyright The Art of Service
Brisbane, Australia │ Email: service@theartofservice.com │Web: http://theartofservice.com 112
│eLearning: http://theartofservice.org
Phone: +61 (0)7 3252 2055
Question 13
Answer: D
Reasoning: CATX is the most correct answer as it removes both
leading and trailing blanks from character strings. TRIM only
removes the trailing blanks from character values.
Question 14
Answer: A
Reasoning: Programming steps begin with DATA or PROC and end
with either QUIT or END. SAS steps are completely read before
executing.
Question 15
Answer: B
Reasoning: Column input is used when data fields are fixed. In this
situation, the columns can be read in any order and re-read if
necessary. Missing data does not require a placeholder either.
Unfortunately, only standard data should be read using column input:
nonstandard data should utilize the formatted input.
Question 16
Answer: D
Reasoning: Performance testing can be done on data steps by
putting a NULL in the DATA step. This will prevent a data set from
being created. The number of observations can be limited by putting
the OBS= option in the INFILE statement. Conditions can be set
using IF/THEN ELSE statements to test for values.
Question 17
Answer: B
Reasoning: One-to-one readings are the simplest form of combining
data sets which will provide the best option in ensuring the
programming code is not overly complex. In this type of combining,
all the variables from each of the data sets will exist in the new data
set. Variables with the same name does not matter, since the values
of the last data set read will overwrite all previous values from existing
data sets. If the values should not be overwritten, the variable name
can be changed before the output is rendered. Not all observations
will appear in the final data set: if this is a requirement than
concatenation is the next best choice for combining data sets.
Copyright The Art of Service
113 Brisbane, Australia │ Email: service@theartofservice.com │Web: http://theartofservice.com
│eLearning: http://theartofservice.org
Phone: +61 (0)7 3252 2055
Question 18
Answer: C
Reasoning: DROP= and KEEP= can be used independently from
each other. Whether the DROP= statement appears in the same
statement as the DATA or SET statement will determine if the variable
will be processed or not. In all cases though, the variable will not
appear in the data set.
Question 19
Answer: D
Reasoning: The only correct answer is that the number of
observations for each record must be the same.
Question 20
Answer: C
Reasoning: The CLASS statement will allow statistics to be applied
to a group of observations. As a result of this statement, the data
would be sorted, grouped and displayed in a single table; but is not
the primary reason for using the CLASS statement.
Question 21
Answer: C
Reasoning: SAS naming conventions require variables names to be
1-32 characters long, can begin and consist of any combination of
letters, numbers, and underscores.
Question 22
Answer: D
Reasoning: SET is used to create a raw data file. FILENAME
references a file to be read, while FILE is used to reference a file to
be written to. The PUT statement will describe the lines written to the
raw data.
Question 23
Answer: D
Reasoning: PROC MEANS will also provide the mean and the
maximum value without limiting the output.
Question 25
Answer: A
Reasoning: C shows that detail is required in the answer. The range
can consist of character values which are enclosed by quotation
marks.
Question 26
Answer: C
Reasoning: Match merging will merge several data sets together
based on the value of a common variable. Interweaving can do the
same as match-weaving, but with more than one common variable.
Concatenation will append, or add on, to existing data sets.
.
Question 27
Answer: A
Reasoning: The WHERE statement will identify conditions for
identifying variables and values to print in a report.
Question 28
Answer: D
Reasoning: All of the situations describe are possible with the SORT
procedure.
Question 29
Answer: B
Reasoning: A WHERE statement will not use automatic conversion of
any kind.
Question 31
Answer: C
Reasoning: SAS arrays are a temporary grouping of variables that
exist for the duration of a data step. They will not 'group' data within
the data set.
Question 32
Answer: B
Reasoning: Data set names can be 1-32 characters long and
consists and begin with alphanumeric characters and underscores.
Question 33
Answer: D
Reasoning: DO statements must end with an END statement. A
condition is not necessary. The OUTPUT statement is used to create
observations for each iteration of the DO loop. A unique index-
variable name is required when nesting DO loops.
Question 34
Answer: D
Reasoning: A, B, C should not be used with the double training at
line-hold specifier.
Question 35
Answer: B
Reasoning: The compilation phase will identify most syntax errors,
while the executing phase will identify processing errors. No RUN or
QUIT statement will result in processing to continue indefinitely.
Question 37
Answer: D
Reasoning: There is no numeric options: the default for numeric
values is ANALYSIS. Additional options not mentioned include
ORDER and COMPUTED.
Question 38
Answer: B
Reasoning: Standard numeric data values consist of positive and
negative numbers, decimal points, and scientific notation.
Question 39
Answer: D
Reasoning: 'Libname' is used to create a library. 'Filename' will
reference an external file where raw data is stored and after it has
been referenced once, the 'infile' is used to identify the external file.
'Set' will create a raw data file.
Question 40
Answer: C
Reasoning: The program data vector refers to logical memory only.
Websites
www.artofservice.com.au
www.theartofservice.org
www.theartofservice.com
A
absolution value 67, 119
accumulator variable 81, 119
Advanced Reporting 3, 63
Amazon 2
analysis variables 66-7, 119
answer 112, 115, 119
Answer 4, 111-17, 119
answer, correct 113-14
Answer Guide 4, 111, 119
appearance 17, 63-5, 68, 71, 77, 119
Appends observations 37, 119
argument 86, 90-2, 111, 119
Arithmetic Operations 100, 107, 111, 119
Arithmetic operators 24-5, 119
array elements 96-8, 119
arrangement of 95, 97
array-name 95-7, 119
ARRAY statement 96-8, 119
ARRAY statement Format 95, 97, 119
arrays 86, 95-8, 119
multidimensional 98
Art of Service Copyright 1, 119
ascending order 40, 57-8, 119
attributes 15, 28, 38, 64-6, 110, 119
automatic conversions 87, 115, 119
automatic variables 32, 119
B
blanks 16, 44, 47-8, 52, 58, 90, 97, 119
BODY 76-7, 119
book 1-2, 5, 119
brackets 96, 119
Brisbane 4-6, 17-20, 32-4, 39, 55-6, 61-2, 67, 69-70, 75, 88-9, 92, 104,
118-19, 126, 129
bytes 16, 119
C
candidate 7, 119
catalog 2
CATX 89-90, 103, 113, 119
cells 67, 74, 101, 119
certifications 6, 119
character constant 91, 119
Copyright The Art of Service
119 Brisbane, Australia │ Email: service@theartofservice.com │Web: http://theartofservice.com
│eLearning: http://theartofservice.org
Phone: +61 (0)7 3252 2055
character data 46, 79, 119
character data values 86, 119
character expression 90-1, 119
Character functions 89-90, 103, 120
character strings 31, 79, 89-91, 103, 113, 120
character value 86, 120
character values 16, 49-50, 61, 79, 82, 86-90, 106, 113, 115, 120
character values 87, 120
character variable 47-8, 56, 65, 83, 87, 90-1, 97, 120
character variables ORDER xf0b7 GROUP 66, 120
characters 11-12, 14-16, 18, 20, 22-4, 46, 48-9, 55-6, 67, 70, 80, 87-
90, 114, 116, 120
formatting 18
special 9, 22, 44-5, 50, 90, 112
split 65
CLASS statement 70-1, 105, 114, 120
CLASS variables 70, 120
code 31-2, 72, 78, 120
code type 31, 120
coded information 78, 120
collection 9-10, 15, 120
colon 49-50, 120
column frequencies 74, 120
column headings 64-5, 120
column input 3, 22-3, 44, 46, 54, 104, 109, 113, 120
column number 45-6, 120
COLUMN statement 63, 120
COLUMN statement 68, 120
column totals 55, 58, 103, 112, 120
column width 65, 120
columns 15, 21-3, 29, 44-8, 50-1, 56, 60, 64-5, 74, 98, 113, 120
combining data sets 37, 109, 113, 120
combining multiple data sets 37-40, 120
commas 61-2, 79, 86, 94, 98, 101, 106, 111, 120
format variable 62
COMMAw 46, 61-2, 120
compilation 31, 36, 41, 96, 120
compilation phase 28, 30, 109, 116, 120
concatenation 38, 90, 109, 113, 115, 117, 120
Conditional processing 32, 84, 103, 112, 120
conditions 25-6, 34-5, 43, 56, 63, 82, 84-5, 94, 104-5, 107-8, 113, 115-
16, 120
conjunction 36, 58, 109, 120
CONTENTS DATA 13-14, 120
contents-file-specification, procedure output 77
CONTENTS statement 13, 120
Copyright The Art of Service
Brisbane, Australia │ Email: service@theartofservice.com │Web: http://theartofservice.com 120
│eLearning: http://theartofservice.org
Phone: +61 (0)7 3252 2055
Continuous data values 68, 120
control 10, 25, 35-6, 53-4, 68, 71, 86, 95, 111, 121
conversion 87, 121
correct raw data value 102, 121
created data set name 108, 121
CROSSLIST 74, 121
crosstabulation 72-4, 101, 112, 121
D
DATA and PROC statement 9, 121
DATA and PROC steps 98, 121
Data and Time informats 51, 121
data output 62, 121
DATA output-SAS-data-set 37-40, 42-3, 121
DATA SAS-data-set 33, 35, 121
data set names 30, 121
data set 28, 37, 121
DATA statement 19, 21, 33-4, 37-40, 83, 121
DATA statement and SET statement Format 33, 121
DATA statement Format 21, 31, 121
data step 3, 21, 36, 104, 106, 113, 115-16, 121
DATA step 8, 19, 21, 24, 26-31, 35-6, 42, 53-4, 62, 75, 90, 93, 95-6,
101, 104, 106 [2]
DATA Step 28-9, 121
DATA step Copyright 81, 121
DATA step executes 53-4, 97, 121
DATA step process 97, 121
DATA step program 19, 41, 121
DATA step 54, 121
DATALINES 26, 121
DATALINES statement 26, 121
DATALINES statement Format 26, 121
date 17, 51, 88-9, 112, 121
DATE 17, 61, 88, 121
Date values 51, 61, 88, 121
Create SAS 86
datetime value 112, 121
days 7, 51-2, 88-9, 112, 121
DB2 12, 121
Debugging DATA Steps 3, 30, 121
decimal places 16, 46, 61-2, 70, 121
Default delimiters 49, 90, 121
default names 97
Default reports list observation 57, 121
default value 47
Default variable names 97
Copyright The Art of Service
121 Brisbane, Australia │ Email: service@theartofservice.com │Web: http://theartofservice.com
│eLearning: http://theartofservice.org
Phone: +61 (0)7 3252 2055
delimiters 44, 46-50, 52, 89-91, 101-2, 112, 121
DESCENDING 40, 57-8, 64, 121
descriptive labels formatting variable values 59, 121
descriptive portion 14-15, 102, 112, 121
Descriptive Statistics 3, 68-9, 100, 122
descriptor information 13-14, 122
descriptor portion 27-8, 36, 122
designations 5, 122
Desired Format 61-2, 122
destination 75-6, 122
default 76
detail rows 66
deviation, standard 67, 69, 106
dimension 95-8, 122
default 95, 97
display 19, 31, 52, 64, 66, 80, 109, 122
display values 70, 122
display variables 66, 122
DLM 49-50, 122
dollar sign 23, 46, 61-2, 79, 83, 97, 122
DOLLARw 61-2, 122
DSD 49-50, 122
E
eBook 2
END 36, 84-5, 93-4, 113, 122
end-of-file marker 29, 35-6, 122
end-of-record marker 47, 122
END statement 94, 116, 122
engine 11-12, 122
environment, operating 10, 12, 47, 59, 75
Error messages 30, 38, 99, 102, 112, 122
errors 4, 8-9, 27-30, 32, 36, 47, 98-9, 106, 109-10, 122
common 98-9
syntax 28, 30, 96, 99, 116
exam 1, 7, 122
excerpt 91, 122
Exclusion of unmatched observations 42, 122
execute 9, 20, 82-3, 85, 93-5, 122
Execute DATA step 20, 122
execution 31, 41, 54, 81, 96-7, 101, 122
execution phase 27, 29-30, 36, 106, 122
exporting raw data files xf0b7 6, 122
expression 24-6, 31-2, 56, 81-4, 86-8, 90-2, 94-5, 100, 111, 122
Extracts 88-90, 122
G
group processing 84, 124
group variables 66-7, 95, 124
groups 34, 39, 58-9, 64, 66-7, 70, 84-5, 93, 103, 109, 116, 124, 127
H
Hexadecimal numbers 110, 124
hh 52, 124
I
ID/BY value 58, 124
ID statement 56, 58, 124
IF/THEN 103, 107, 112-13, 124
IF-THEN 82, 124
IF-THEN statement 82, 124
increment values 93, 95, 124
INDEX 89, 91, 119, 124
index value 96, 124
index variable 93, 95, 124
index-variable name 124
unique 94, 108, 116
INFILE statement 19, 21, 26, 29, 31, 47, 49, 113, 124
INFILE statement and DLM-option Format 48, 124
INFILE statement Format 21, 124
infinite number 16, 124
information 5, 13-16, 22, 52, 54-5, 75, 78, 99, 102, 118, 124
informats 16, 38, 45-6, 51, 87, 124
initialize 81-2, 124
input 123, 129, 131
INPUT 28-9, 45, 51, 87, 107, 115, 124
input, formatted 44, 113, 123
input buffer 28-9, 54, 106, 110, 115, 124
input data set name 18, 124
input data sets 34, 36, 38-42, 57-8, 67, 124
input pointer 29, 45-6, 51-4, 102, 124
input record 54
INPUT statement 19, 22, 50, 52-4, 87-8, 106, 109, 124
multiple 52
INPUT statement executes 54, 124
INPUT statement Format 23, 45, 47, 51, 124
Copyright The Art of Service
Brisbane, Australia │ Email: service@theartofservice.com │Web: http://theartofservice.com 124
│eLearning: http://theartofservice.org
Phone: +61 (0)7 3252 2055
instructions 5, 11, 19, 24, 53, 124
integer 51-2, 91, 96, 124
time values fractions xf0b7 45
Intersperses observations 37, 124
Interweaving 39, 107, 109, 115, 124
interweaving readings 39-40, 124
iteration 29, 36, 53-4, 93-5, 106, 112, 115-16, 124
J
justification 64-5, 125
K
keywords 8, 72, 76, 80, 100, 105, 110-11, 116, 125
L
label 16, 18, 34, 38, 60, 62, 64, 79-81, 102, 125
label columns 60, 125
label name 56, 125
LABEL statement 60, 125
single 60
length 16, 38, 47, 50, 65, 81, 83, 86, 90, 97, 125
LENGTH statement 50, 83, 86, 90, 125
letters 11-12, 14-15, 20, 23, 55, 89, 114, 125
liability 5, 125
libname 12, 21, 108, 110, 117, 125
LIBNAME libref 11, 20, 55, 125
LIBNAME libref engine 12, 125
LIBNAME statement 11, 19-20, 78, 125
LIBNAME statement Format 11-12, 20, 125
libraries 10-12, 20, 33, 55, 78, 80, 108, 116-17, 125
formats 78
permanent 10, 20, 78, 80
temporary 11, 78, 80
library contents 13, 125, 130
library name 10-11, 125
library NODETAILS 13-14
libref 10-14, 20, 33, 55, 78, 116, 125
libref.filename 10, 125
limited number 70, 125
line pointer control 52-3, 125
lines 17, 27, 49, 53, 58, 60, 100, 111-12, 114, 125
links 2, 25, 77, 125
list input 47-9, 102, 125
listing 13-14, 17, 76, 125
location 19-21, 27, 29, 48, 77-8, 99, 125
log 2, 17-18, 23, 30-1, 125
Copyright The Art of Service
125 Brisbane, Australia │ Email: service@theartofservice.com │Web: http://theartofservice.com
│eLearning: http://theartofservice.org
Phone: +61 (0)7 3252 2055
log message 99, 125
log Values 30, 125
loops 4, 29, 85, 93-5, 98, 108, 116, 125
Lower quartile 70, 125
lowercase 9, 14-15, 23, 89, 100, 125
M
match 41-2, 79, 88, 125
Match-merging 42, 107, 109, 117, 125
Matches observations 37, 126
MAX 18, 67, 69, 72, 126
maximum value 67, 69, 114, 126
memory 28, 126
merge 40-3, 82, 111, 115, 126
MERGE SAS-data-set-1 40, 42-3, 126
MERGE statement 41-2, 117, 126
MERGE statement Format 40, 43, 126
Miller 105, 126
minimum value 67, 69, 106, 126
missing value 49, 126
MISSOVER option 49, 54, 102, 109, 112, 126
modifiers 49, 91, 126
Modifying Character Values 89, 126
Modifying Date Values 88, 126
Modifying Numeric Values 92, 126
multiplication 100, 126
N
name 10-12, 14-16, 19-21, 24, 27-8, 31, 37-40, 42-3, 47-8, 50-1, 55,
63-4, 71-3, 77, 79, 81-2 [10]
negative numbers 22, 45, 117, 126
negative value 94, 126
newdata.dat 12, 126
NODATE 17, 126
NODETAILS 13, 126
Nonstandard numeric data values 22, 45, 126
NONUMBER 17, 126
NOTSORTED 58, 126
NULL statement 31, 126
number 11-12, 14-17, 20, 23, 28, 31, 38, 46, 51, 59-60, 67, 69-70, 88,
93-8, 104-6, 112-14 [11]
numbered heading 77, 126
numbered range 96, 126
numeric 16, 22-3, 70, 81, 87-8, 92, 96, 126
numeric data values 86, 126
numeric value 87, 126
Copyright The Art of Service
Brisbane, Australia │ Email: service@theartofservice.com │Web: http://theartofservice.com 126
│eLearning: http://theartofservice.org
Phone: +61 (0)7 3252 2055
numeric values 16, 55, 79, 86-8, 92, 97, 106-7, 112, 117, 126
numeric values 21, 79, 126
numeric values Representation 16, 126
numeric variables 16, 56, 58, 65, 67, 69-70, 72, 81, 88, 92, 96, 103,
126
O
obs 18, 127
OBS 18, 23, 31, 104, 113, 127
OBS column 56, 58, 127
Observation numbers 35, 55, 127
observations 3, 15, 17-18, 26, 28-9, 34-43, 52-3, 55-6, 66-7, 69-70,
73, 83, 94-5, 104-5, 107-8, 113-17 [6]
changing 98
combined 40
first 18, 29, 36, 38, 81
group 34, 105
group of 105, 114
last 18, 34, 36
multiple 3, 54, 106, 115
multiple SAS 54
observations change 95
reading 35, 129
sample 95
selecting 56, 107
single 37, 52, 105
observations 98, 127
rearranged 57
observations change 127
observations number 15, 127
ODS (Output Delivery System) 75-7, 127
ODS column format 74, 127
ODS destinations 75, 127
ODS statement 76, 127
One-dimensional Arrays 96, 127
One-sided confidence limit 69, 127
One-to-One Reading 37-8, 113, 127
online 2
operators 24-5, 56, 87, 127
comparison 25, 120
logical 25, 56, 82
OPTIONS statement 17, 127
OS 10-12, 127
output 3, 13-14, 17, 35, 40, 50, 56, 60-1, 65, 68-9, 71-2, 74-7, 113-14,
127
formatted 75-6
Copyright The Art of Service
127 Brisbane, Australia │ Email: service@theartofservice.com │Web: http://theartofservice.com
│eLearning: http://theartofservice.org
Phone: +61 (0)7 3252 2055
printed 57, 107
output data 72, 127
output data set 41, 57, 83, 127
Output Delivery System, see ODS
output file 27, 50, 127
output objects 75, 127
output objects Output 75, 127
output SAS data set 71, 127
output-SAS-data-set names 37-40, 42-3, 128
OUTPUT statement 35, 94, 108, 116, 128
OUTPUT statement Format 35, 71, 128
output Links 77, 128
P
PAD option 47, 128
PAGEBY statement 59, 128
parentheses 18, 21, 25, 43, 82, 90, 94, 96-7, 101, 111, 128
percentile 70, 128
performance 104, 113, 128
physical names 11, 128
pointer 46, 53, 102, 112, 128
position 19, 45-6, 52, 90-1, 128
relative 37-8
predetermined number 47, 128
printing 17, 128
priorities 25, 100, 111, 128
PROC 8, 19-20, 23, 55, 59-60, 62-3, 68-72, 99, 106, 113-14, 128
PROC CONTENTS statement Format 13, 128
PROC DATASETS 13, 128
PROC DATASETS statement 13, 128
PROC EXPORT statement Format 50, 128
PROC FORMAT 78, 128
PROC FORMAT statement 78, 81, 128
PROC FREQ 72-4, 128
PROC REPORT 65-7, 128
PROC REPORT statement 63, 128
PROC REPORT statement Format 63, 128
PROC SORT statement 57, 128
PROC SORT statement Format 57, 128
PROC statement 9, 99, 121, 128
PROC step 98, 128
PROC steps 8, 16, 59, 98, 121, 128
PROC SUMMARY 72, 128
procedure output 120, 123
processing 9, 14, 26-8, 38, 71, 83-4, 99, 116, 128
Processing DATA Steps 3, 27, 128
Copyright The Art of Service
Brisbane, Australia │ Email: service@theartofservice.com │Web: http://theartofservice.com 128
│eLearning: http://theartofservice.org
Phone: +61 (0)7 3252 2055
processing errors 116, 128
program data vector 28-30, 36-7, 41, 50, 81, 93, 96, 110, 115, 117,
128
program data vector 36, 48, 128
program statement 128
final 20
Prometric 7, 128
publisher 5, 128
PUT 27, 31-2, 88, 128
PUT statement 27, 31, 88, 114, 128
PUT statement Format 27, 50, 129
Q
QTR value 88, 129
qualified name 20, 129
QUIT 13-14, 113, 129
QUIT statement 9, 13, 99, 103, 116, 129
R
random numbers 86, 129
range 18, 22, 49, 67, 69, 79, 81, 96, 106, 115, 129
raw data 20-3, 26-7, 29, 36, 44-6, 51-2, 78, 105, 114-15, 117, 129
raw data file 19, 23, 26, 29, 50, 105, 110, 114, 117, 129
character-delimited 50
Raw data files 19, 129
Raw Data Files 3, 19, 129
Raw data files, software programs use 19
Reading Data and Time Values 3, 51, 129
Reading Free Format Data 3, 47, 129
Reading Missing Values 49, 129
Rearrange observations 107, 129
Reasoning 111-17, 129
record formats 46, 129
common 46
fixed-length 47
records 19, 23, 27-8, 46-7, 49, 52-4, 105, 114, 129
fixed-length 46-7
free format 47
free-format 47
multiple 3, 52-3, 105
single fixed field 106
variable-length 47
reference 10, 19-20, 78, 96, 114, 117
RENAME 42, 129
rename variables 42, 129
replacement 1, 92, 129
Copyright The Art of Service
129 Brisbane, Australia │ Email: service@theartofservice.com │Web: http://theartofservice.com
│eLearning: http://theartofservice.org
Phone: +61 (0)7 3252 2055
report 17, 55-7, 59, 63-6, 68, 72, 107, 109, 112, 115, 129
review 2
round-off-unit 92, 129
Rounded 61, 129
rows 15, 63, 66, 74, 98, 101, 129
order of 64, 66
S
Same-named variables 41-2, 130
sample 11, 127, 130
SAS 1, 6, 9-11, 19-20, 28, 30, 36, 41, 44-5, 49, 51-2, 80-2, 84, 93-4,
96-8, 102-3 [7]
SAS arrays 95, 108, 116, 130
SAS Certified Base Programmer for SAS 1, 3, 6-7, 130
SAS data 11, 51, 88, 130
SAS-data-library 11-12, 20, 55, 130
SAS data set 8, 13-16, 19, 21, 26-7, 33, 36-7, 55-7, 63, 68, 71-3, 98,
107, 130
SAS-data-set 33, 35, 50, 55, 57, 59, 63, 68, 71-3, 130
SAS-data-set names 50, 130
SAS-data-set-out 71, 130
SAS data set 8, 19, 57, 130
SAS Data Sets 3, 14, 19, 33, 37, 130
SAS data step 23, 130
SAS datetime value 51, 88, 130
SAS expressions 24, 56, 84, 93, 130
valid 24, 26, 81-2, 94
SAS files 10, 14, 130
SAS formats 17, 61, 130
SAS functions 85-6, 100, 111, 130
SAS library 13-14, 130
SAS listing output 60, 130
SAS log 9, 99, 130
SAS name 23, 130
SAS output of library contents 13, 130
SAS procedure output Markup 130
traditional 75
SAS procedure steps 83, 130
SAS programming 1, 6, 130
SAS programs 8-9, 26, 53, 75, 98-100, 110, 112, 130
SAS Programs 3, 8, 130
SAS session 11, 21, 60, 78, 108, 130
SAS statement 84, 130
executable 82, 84
SAS stores 51, 88, 130
SAS System Outputs 3, 17, 130
Copyright The Art of Service
Brisbane, Australia │ Email: service@theartofservice.com │Web: http://theartofservice.com 130
│eLearning: http://theartofservice.org
Phone: +61 (0)7 3252 2055
SAS uses Output Delivery System 75, 130
scan 48, 89-90, 130
SCAN function 89-90, 130
search 80, 91, 130
character variable's values 89
Searches 89, 130
seconds 51-2, 88, 112, 130
semicolons 8, 26, 100-1, 109, 111, 130
omitted 99
separators 89-91, 131
sequences 24-5, 131
session 10-11, 131
SET SAS-data-set 33, 35, 131
SET SAS-data-set-1 37-9, 131
SET statement 33-8, 95, 101, 114, 131
SET statement Format 26, 38-9, 131
Set.name 108, 131
sign 46, 54, 81, 131
Single Records 3, 52, 54, 115, 131
source 18, 87-8, 91-2, 131
spaces 9, 61, 65, 86, 96, 101, 131
decimal 61-2
spacing 64-5, 131
extra 60
specifier 54, 109, 116, 131
squares 67, 69, 131-2
ss 52, 131
Standard error 67, 69, 131
Standard numeric data values 22, 45, 110, 117, 131
statement 20, 26-8, 34, 42-3, 55-6, 58-60, 63-6, 71, 77, 81-5, 94, 97-
101, 103-4, 106-9, 111, 114-15 [3]
assignment 24, 82
global 17
infile 23
input 29
multiple 111
programming 103
statement Copyright 108, 131
statement executes 83, 131
statement Format 26, 35, 55, 58, 64, 68, 76-7, 82-4, 93-4, 131
statistic-keyword 68, 71-2, 131
statistics 66, 68, 70-2, 74, 105, 114, 131
summary 71-2
STD 67, 69, 72, 131
STDERR 67, 69, 131
step 8-9, 11, 19, 23, 30, 62, 99, 103, 106, 109, 126, 131
Copyright The Art of Service
131 Brisbane, Australia │ Email: service@theartofservice.com │Web: http://theartofservice.com
│eLearning: http://theartofservice.org
Phone: +61 (0)7 3252 2055
stop 35, 93, 95, 131
STOP statement 35, 131
Stored Value 61-2, 131
string 31, 89-92, 131
subsetting 26, 42-3, 131
SUBSTR 89-90, 103, 131
SUBSTR function 90, 131
substring 56, 89, 91, 131
subtotals 58, 63, 132
Sum 67, 69, 132
SUM 58, 66-7, 69, 132
sum statement 81, 132
SUM statement 58, 103, 112, 132
SUM variable, changing report characteristics 55
Summarized output data set 72, 132
SUMWGT 67, 69, 132
system options 17-18, 65, 132
T
table 15, 73-4, 101, 105, 132
n-way 73-4
two-way 73-4
table of contents 77, 132
Table of Contents 3, 132
TABLES statement 74, 101, 132
TABLES statement Format 73, 132
TABLES variable-1 73-4, 132
Target variables 86, 90, 132
Temporary array elements 97, 132
Temporary files 10, 132
temporary variables 34, 36, 132
text 59-60, 132
time informats 51, 121, 132
time values 3, 51, 88, 129, 132
time values fractions 22, 132
time values fractions xf0b7 124
time number 15, 132
title 59-60, 132
higher-numbered 60
TITLE statement 59, 132
tracking pointers 41, 132
trade name 5, 132
trademarks 5, 132
trailing blanks 89-90, 113, 132
TRIM 89-90, 103, 113, 132
V
Valid data set names 14, 133
valid SAS variable name 22, 133
VALUE format name 79, 133
VALUE format-name 79, 133
VALUE statement 79-80, 106, 133
VALUE statement Copyright 106, 133
value 126, 133
smallest 57
value number 133
longest 81
value Numeric variables 16
values 15-16, 23-4, 27-9, 31, 33-8, 40-1, 46-9, 53, 56-7, 61-2, 65-8,
70-1, 73-4, 81-2, 91-4, 113 [15]
values 24, 86, 133
character variable's 130
VAR 67, 69, 133
VAR statement 56, 58, 70, 72, 133
variable-2 73-4, 133
Variable conditions 33-4, 133
variable informat 45, 51, 133
variable-length record format 47
variable names 133
invalid 28
variable values 64, 133
variablen 43, 133
variablen names 43, 133
variable's values 79, 133
variables number 15, 133
Variance 67, 69, 133
W
Weight variable values 67, 69, 133
when-expression-1 84, 133
width 17, 64-5, 133
maximum 16-17
Copyright The Art of Service
133 Brisbane, Australia │ Email: service@theartofservice.com │Web: http://theartofservice.com
│eLearning: http://theartofservice.org
Phone: +61 (0)7 3252 2055
windowing mode 63, 133
Work.Formats 78, 133
Work‟ 10-11, 133
www.emereo.org 2