Index
Special Characters
_ALL_ variable name list 88
in PUT statements 308-309
_CHARACTER_ variable name list 88-89
_ERROR_ automatic variable 198
invalid data message 302-303
_FREQ_ variable in MEANS procedure 114-115
_N_ automatic variable 198-199
invalid data message 302-303
_NAME_ variable, TRANSPOSE procedure 196-197
_NULL_ data set name 111, 288-289
_NUMERIC_ variable name list 88-89
_PAGE_ keyword in PUT statements 110-111
_TYPE_ variable, MEANS procedure 114-115
; semicolon 2
missing 296-297
: colon modifier 42-43
! comparison operator 67, 96
?? informat modifier 303
@ line-hold specifier 48-49, 288
compared to @@ 49
@@ line-hold specifier 46-47
compared to @ 49
@’character’ column pointer 48-49
@n column pointer 40-41, 288-289
* ; comments 3
/ line pointer 44-45, 288
/* */ comments 3
& ampersand modifier 42-43
& comparison operator 67, 96
& macro variable prefix 202
&SYSDATE macro variable 206-207
&SYSDAY macro variable 206
&SYSNOBS macro variable 206
#n line pointer 44-45, 288
% in LIKE comparisons 96-97
% macro prefix 202
%DO statements 212-215
%ELSE statement 212-213
%END statement 212-215
%IF-%THEN statements 212-213
%LET statement 204-207
%MACRO statement 208-211
%MEND statement 208-209
%PUT statement 220
^= comparison operator 66, 96
+n column pointer 37
<= comparison operator 66, 96
< comparison operator 66-67, 96
= comparison operator 66-67, 96-97
=: comparison operator 66
=* comparison operator 96-97
> = comparison operator 66, 96
> comparison operator 66-67, 96
| comparison operator 67, 96
|| concatenation operator 63
~= comparison operator 66, 96
¬= comparison operator 82, 102
$CHARw. informat 38-39
$UPCASEw. format 106-107
$UPCASEw. informat 38-39
$w. format 106-107
$w. informat 38-39
A
ACROSS usage option 132, 134-135
ACROSS= option in KEYLEGEND statement 240
AFTER location in REPORT procedure 136-137
age, calculating 80-81
AGREE option in FREQ procedure 260, 262
AGREEMENTPLOT option in TTEST procedure 258
AGREEPLOT option in FREQ procedure 262
ALL keyword in TABULATE procedure 124
ALL option in TTEST procedure 258
ALPHA= option
fitted curves 236
MEANS procedure 254-255
TTEST procedure 256
VBAR or HBAR statement 226
analysis of variance 272-275
ANALYSIS usage option 132-133
AND operator 66-67, 96
annotation in graphics 240-241
ANOVA procedure 272-275
ANYALNUM function 62-63
ANYALPHA function 62-63
ANYDIGIT function 62-63
ANYDTDTEw. informat 15, 38-39, 82-83
ANYSPACE function 62-63
arithmetic operators 58-59
ARRAY statement 86-87
ASCII files 18, 30
ASCII sort order 100
assignment statements 58-59
dates 80-81
functions 60-63
ATTRIB statement 314
attributes, style
PRINT procedure 156-157
REPORT procedure 158-159
Table of 164-165
TABULATE procedure 160-161
autocall library, macro 209
autoexec file or process flow 14
automatic variables
_ERROR_ 198
_N_ 198-199
FIRST.byvariable 198-199
LAST.byvariable 198-199
macro 206-207
axes, controlling in graphs 238-239
AXIS= option in REFLINE statement 238
B
BACKGROUND style attribute 164-165
BACKGROUNDCOLOR style attribute 164-165
BACKGROUNDIMAGE style attribute 164-165
bar charts 226-227, 262-263
BARWIDTH= option in VBAR or HBAR statement 226
batch mode 11
BCOLOR= option in TITLE statement 154-155
BEFORE location in REPORT procedure 136
BESTw. format 106-107
BETA option for distribution plots 252
BETWEEN AND operator 96
BINSTART= option in HISTOGRAM statement 228
BINWIDTH= option in HISTOGRAM statement 228-229
BMP image format 246-247
BODY= option in ODS HTML statement 146-147
BODYTITLE option in ODS RTF statement 148-149
BOLD option in TITLE statement 154-155
bolding in graphics 242-243
BON option in ANOVA procedure 272
Bonferroni t tests 272
BORDER option in INSET option 240
BOTTOMMARGIN= system option 15
Bowker’s test 264
box plots 230-231, 272-273
BOX= option in TABULATE procedure 126-127
BOXPLOT option in TTEST procedure 258
BREAK statement in REPORT procedure 136-137
BY groups, definition 98
BY statement 94
compared to PANELBY 245
FIRST.byvariable 198-199
LAST.byvariable 198-199
MERGE statement 176-179
PRINT procedure 102-103
SET statement 174-175
SGPLOT procedure 245
SORT procedure 98-101
TRANSPOSE procedure 196-197
UPDATE statement 188-189
BY variables
definition 98
FIRST. and LAST. 198-199
sorting 98-101
C
calculated variables in SQL procedure 72-73
CALL SYMPUTX 216-217
capitalization in SAS programs xiii, 3, 5
CARDS statement 30
CAT function 62-63
CATEGORY= option HBOX or VBOX statement 230-231
CATS function 62-63
CATX function 62-63
CDFPLOT statement in UNIVARIATE procedure 252
CENTER system option 15
CHAR option in REPORT procedure 140-141
character data
converting to numeric 306-307
definition 4
formats 106-107
functions 62-63
informats 38-39
length 314-315
sorting 100-101
truncation error 314-315
character-values-converted note 306-307
charts, bar 226-227
chi-square statistic with FREQ procedure 260-262
CHISQ option in FREQ procedure 260-262
CI= option in TTEST procedure 256
CLASS statement
ANOVA procedure 272-275
MEANS procedure 112-113
STYLE= option in TABULATE procedure 160
TABULATE procedure 122-129
TTEST procedure 256
CLASSLEV statement in TABULATE procedure 160
CLI option in fitted curves 236
CLM option in fitted curves 236-237
CLM option in MEANS procedure 254-255
CLMTRANSPARENCY= option in fitted curves 236
CLOSE option
ODS HTML statement 146-147
ODS LISTING statement 152-153
ODS PDF statement 150-151
ODS RTF statement 148-149
Cochran-Armitage test 260
Cochran-Mantel-Haenszel statistics 260
Cochran’s Q test 264
coded data, custom formats 108-109
coefficient of variation
ANOVA procedure 274-275
MEANS procedure 254
REG procedure 268
COLAXIS statement 244
collating sequence 100
colon informat modifier 42-43
color
graph attributes 242
PRINT procedure 156-157
REPORT procedure 158-159
style attributes 164-165
style templates 145
TABULATE procedure 160-161
COLOR style attribute 164-165
COLOR= option for graph attributes 242
COLOR= option in TITLE statement 154
COLUMN location in STYLE= option 158-159
column pointers
@n 40-41, 288-289
+n 37
COLUMN statement in REPORT procedure 130-139
column-style input 34-35
columns of data, definition 4
COLUMNS= option
ODS PDF statement 150
ODS RTF statement 148-149
PANELBY statement 244
combining SAS data sets
concatenating data sets 172-173
grand total with original data 184-185
interleaving data sets 174-175
merging summary statistics 182-183
one observation with many 184-185
one-to-many match merge 178-183
one-to-one match merge 176-177
selecting observations during a merge 192-193
stacking data sets 172-173
updating a master data set 188-189
using SQL procedure 180-181
commas
reading comma-delimited data 28-29, 52-53
reading numbers containing commas 36, 38-39
writing comma-delimited data 280-283
writing numbers containing commas 106-107
COMMAw.d format 106-107
COMMAw.d informat 38-39
COMMAXw.d informat 38-39
Comments 3
comparison operators 66-67, 96-97
compile and execute phases 216
COMPRESS function 62-63
COMPRESS= data set option 317
COMPUTE statement in REPORT procedure 140-141
COMPUTED usage option 132, 140-141
concatenating SAS data sets 172-173
concatenation
function 62-63
operator, || 63
conditional statements
macro 212-213
standard 66-71
confidence limits 254-260
plotting 236-237
CONFIDENCE option in CORR procedure 266
constants
ASCII 52
character 58
date 80-81
hexadecimal 52
numeric 58
CONTAINS operator 96
CONTENTS procedure 22-23
debugging programs 313
POSITION option 88
converting character to numeric and vice versa 306-307
COOKSD option in REG procedure 270
CORR procedure 264-267
correlations 264-265
counts, frequency 116-121, 124-125, 138-139
CREATE TABLE clause in SQL procedure 72-73, 180-181, 186-187
CROSSLIST option in FREQ procedure 118
crosstabulations 118-123
CSS option in MEANS procedure 254
CSV destination 282-283
CSV files
reading 28-29, 52-53
writing 280-283
CSV value in the DBMS= option
EXPORT procedure 280
IMPORT procedure 28
CSVALL destination 282
CUMFREQPLOT option in FREQ procedure 262
cumulative distribution function plots 252
cumulative totals
FREQ procedure 116-119
sum statement in DATA step 84-85
CURVELABEL= option
fitted curves 236
SERIES statement 234
custom formats, FORMAT procedure 108-109
CV option in MEANS procedure 254
D
DATA _NULL_
writing custom reports 110-111
writing raw data files 288-289
data dictionary 22-23
data engines 19
Data Grid 18
DATA location in STYLE= option 156-157
data set options
compared to statement options 190-191
compared to system options 190-191
COMPRESS= 317
DROP= 190-191, 317
FIRSTOBS= 190-191, 293
IN= 190-193
KEEP= 190-191, 317
OBS= 190-191, 293
RENAME= 190-191
data sets, SAS
changing observations to variables 196-197
combining a grand total with data 184-185
combining one observation with many 184-185
compressing 317
concatenating 172-173
contents of 22-23
creating 20-21
creating from procedure output 168-169
definition 4
deleting 316
interleaving data sets 174-175
inverting, TRANSPOSE procedure 196-197
joining using SQL procedure 180-181
LABEL= data set option 190-191
merging summary statistics 182-187
merging, one-to-many 178-183
merging, one-to-one 176-177
modifying a single data set 56-57
names 5, 20-21
options 190-195
permanent 20-21
printing 102-103
reading a single data set 56-57
saving 20-21
saving summary statistics to 114-115, 168-169
selecting observations during a merge 192-193
size 5
sorting 98-101
stacking data sets 172-173
subsetting IF statement 70-71
subsetting OUTPUT statement 74-75
subsetting using SQL procedure 72-73
subsetting WHERE statement 70, 96-97
subsetting WHERE= data set option 190, 194-195
temporary versus permanent 20-21
updating a master data set 188-189
WORK library 20-21
writing multiple data sets 74-75
DATA statement 6-7, 20-21
_NULL_ data set name 110-111, 288-289
multiple data sets 74-75
permanent data sets 20-21
DATA step 6-9, 20-21
built-in loop 8-9
combining SAS data sets 172-193
creating and modifying variables 58-59
definition 6
reading a single SAS data set 56-57
reading raw data files 18-19, 30-53
writing raw data files 288-289
wrong results, no message 308-309
data types 4
assignment statements 58-59
converting, character to numeric 306-307
converting, numeric to character 306-307
data, reading 18-21, 24-53
column style 34-35
comma-separated values 28-29, 52-53
delimited data 28-29, 52-53
Excel files 24-27
internal 30
messy data 42-43
methods for getting into SAS 18-19
missing data at end of line 51
mixing input styles 40-41
multiple lines of data per observation 44-45
multiple observations per line of data 46-47, 77
non-standard format 36-37
part of a data file 48-49, 293
PC files 24-25
skipping lines of raw data 44-45, 50
skipping over variables 34-35
space-delimited 32-33
variable length records 51
variable length values 42-43
data, writing 278-283
delimited 280-283, 288-289
methods 278-279
PC files 284-287
procedure results 282-283, 286-287
raw data 280-281, 282-283, 288-289
DATA= option 94, 190-191
DATAFILE= option in IMPORT procedure 24-25, 28-29
DATALABEL= option
SCATTER statement 232
SERIES statement 234
VBAR or HBAR statement 226
DATALINES statement 30
DATAROWS= statement in the IMPORT procedure 28-29
DATASTMTCHK= system option 15, 297
DATE system option 15
DATEJUL function 64-65, 82-83
dates 80-83
automatic macro variables 206-207
constants 80-81
converting dates 64-65, 80-81
definition of a SAS date 80
formats, table of 82-83, 106-107
functions, table of 64-65, 82-83
informats, table of 38-39, 82-83
Julian dates 82-83
printing current date on output 15
reading raw data with 15, 36-37
setting default century 14-15, 80
DATESTYLE= system option 15
DATETIMEw. informat 38-39
DATETIMEw.d format 106-107
DATEw. format 82-83, 106-107
DATEw. informat 38-39, 82-83
DAY function 61, 64-65, 82-83
DBMS= option
EXPORT procedure 280-281, 284-285
IMPORT procedure 24-25, 28-29
DDMMYYw. informat 38-39, 82-83
debugging SAS programs 292-317
INPUT reached past end of line 298-299, 301
invalid data 301-303
invalid option 310-311
lost card 300-301
macros 220-221
missing semicolon 296-297
missing values were generated 304-305
option not recognized 310-311
out of memory or disk space 316-317
statement not valid 310-311
truncation of character data 314-315
values have been converted 306-307
variable not found 312-313
variable uninitialized 312-313
wrong results, no message 308-309
decimal places
printing data 104-105
reading data 36-37
DEFINE statement in REPORT procedure 132-135, 140-141
DELETE procedure 316
DELETE statement 70-71
deleting
data sets 316
observations 70-73
variables 190-191
delimited data
reading 28-29, 32-33, 52-53
writing 280-283
DELIMITER= option
FILE statements 288
INFILE statements 52-53
DELIMITER= statement in IMPORT procedure 28-29
density curves 228-229
DENSITY statement in SGPLOT procedure 228-229
DESCENDING option in SORT procedure 98
descriptive statistics 112-139, 250-255
descriptor portion of data sets 5, 22-23
destinations, output
CSV 144
EXCEL 144
for graphics 225, 246-247
HTML 144-147
LISTING 144, 152-153, 225
OUTPUT 144
PDF 144, 150-151
POWERPOINT 144
PS 144
RTF 144-145, 148-149
SASREPORT 144
WORD 144
detail report 102-105, 130-131
DEVIATIONPLOT option in FREQ procedure 262
DIAGNOSTICS option in REG procedure 270-271
dictionary, data 22-23
dimensions in TABULATE procedure 122-125
dimensions of graph images 246
DISCRETE option in XAXIS or YAXIS statement 238-239
DISCRETEOFFSET= option in VBAR or HBAR statement 226
disk space, running out of 316-317
Display Manager 10-11
DISPLAY usage option 132
dividing
data file 48-49
SAS data set 74-75, 194-195
DLM value in the DBMS= option
EXPORT procedure 280
IMPORT procedure 28
DLM= option
FILE statements 288
INFILE statements 52-53
DLMSTR= option in INFILE statements 52
DO statement 66-67
arrays 86-87
iterative 78-79
loops 78-79
with OUTPUT statement 76
DO UNTIL statement 78-79
DO WHILE statement 78-79
documenting
data sets 5, 22-23, 190-191
programs 3
dollar signs
printing data 106-107
reading data 36, 38-39
DOLLARw.d format 106-107
DOWN= option in KEYLEGEND statement 240
DROP= data set option 190-191, 317
DSD option
FILE statements 288
INFILE statements 52-53
DTDATEw. format 106-107
DUNCAN option in ANOVA procedure 272
Duncan’s multiple range test 276
duplicate observations, eliminating 98-99
DUPOUT= option in SORT procedure 98
E
EBCDIC sort order 100
editor, syntax sensitive 293
ELLIPSE= option in CORR procedure 266
ELSE statement 68-69
END statement 66-67
ENDCOMP statement in REPORT procedure 140-141
engines, data 19
Excel files 26-27
entering data in SAS data sets 18
Enterprise Guide, SAS 10
EQ comparison operator 66, 96
equations, assignment statements 58-59
errors
avoiding errors 292-293
fixing errors 294-295
INPUT reached past end of line 298-299, 301
invalid data 302-303
invalid option 310-311
lost card 300-301
missing semicolon 296-297
missing values were generated 304-305
option not recognized 310-311
out of memory or disk space 316-317
statement not valid 310-311
truncation of character data 314-315
values have been converted 306-307
variable not found 312-313
variable uninitialized 312-313
wrong results, no message 308-309
EURDFDDw. format 82-83, 106-107
EUROXw.d format 106-107
Ew. format 106-107
EXACT option in FREQ procedure 260
EXCEL destination 144, 286-287
EXCEL engine 19
Excel files
reading 24-27
writing 284-287
excluding output objects 167
executing SAS programs
methods 10-11
EXPONENTIAL option in distribution plots 252
EXPORT procedure
delimited files 280-281
Excel files 284-285
exporting data 278-283
delimited files 280-283, 288-289
methods 278-279
PC files 284-287
procedure results 282-283, 286-287
raw data files 280-283, 288-289
to other software 284
expressions
mathematical 58-59
using dates 80-81
using functions 60-61
external data 30-31
EXTREME option in HBOX or VBOX statement 230
F
F value
ANOVA procedure 274-275
REG procedure 268
FILE statement
DLM= option 288
DSD option 288
PRINT option 110-111
writing raw data files 288-289
writing reports 110-111
FILE= option
ODS HTML statement 146-147
ODS LISTING statement 152-153
ODS PDF statement 150-151
ODS RTF statement 148-149
FILLATTRS= option for graph attributes 242
FIRST.byvariable 198-199
FIRSTOBS= option
data set option 190-191, 293
INFILE statement 50, 293
Fisher’s exact test 264
fit plots 270-271
FITPLOT option in REG procedure 270-271
fitted curves 236-237
flat files 18, 30
FLYOVER style attribute 164-165
font
graph attributes 242-243
style attributes 164-165
titles 154-155
FONT_FACE style attribute 164-165
FONT_SIZE style attribute 164-165
FONT_STYLE style attribute 164-165
FONT_WEIGHT style attribute 164-165
FONT= option in TITLE statement 154-155
FONTFAMILY style attribute 164-165
FONTSIZE style attribute 164-165
FONTSTYLE style attribute 164-165
FONTWEIGHT style attribute 164-165
FOOTNOTE statement 94-95, 154-155
FOREGROUND style attribute 164-165
FORMAT procedure 108-109
grouping with 120-121
with SGPLOT procedure 227
with TABULATE procedure 128-129
FORMAT statement 104-105
DATA step compared to PROC step 104
FORMAT= option in TABULATE procedure 126-127
formats
ATTRIB statement 314
dates 81-83
FORMAT statement 104-105
grouping with 120-121
input formats 36-39
table of 106-107
use 104-105
user-defined 108-109, 120-121
formatted style input 36-37
free formatted style input 32-33
FREQ procedure 116-119, 121, 260-263
FREQPLOT option in FREQ procedure 262-263
frequency tables 116-125, 138-139, 260-261
FROM clause in SQL procedure 72-73, 180-181, 186-187
functions
dates 80-83
INPUT function 307
PUT function 307
table of 62-65, 82-83
use 60-61
G
gamma 260
GAMMA option in distribution plots 252
GE comparison operator 66, 96
generating data
DO and OUTPUT statements 78-79
GETNAMES= statement 24, 28-29
GIF image format 246
global macro variables 202-203
global statements
OPTIONS 14-15
RUN 6
TITLE and FOOTNOTE 94
GPATH= option in ODS statement 247
GRANDTOTAL location in STYLE= option 156
graphics, ODS 224-225
ANOVA procedure 272-273
CORR procedure 266-267
FREQ procedure 262-263
image formats 246
image properties 246-247
insets 240-241
legends 240-241
REG procedure 270-271
saving graphs 246-247
SGPANEL procedure 244-245
SGPLOT procedure 226-237
style attributes 242-243
TTEST procedure 258-259
UNIVARIATE procedure 252-253
grayscale style for graphics 225
GRID option in XAXIS or YAXIS statement 238
GROUP BY clause in SQL procedure 186-187
GROUP usage option 132, 134-135
GROUP= option
DENSITY statement 228
fitted curves 236
HBOX or VBOX statement 230
HISTOGRAM statement 228
SCATTER statement 232-233
SERIES statement 234
VBAR statement 226-227
GROUPDISPLAY= option in VBAR or HBAR statement 226-227
GROUPHORIZONTAL option in FREQ procedure 262-263
grouping observations
BY statement 94
FREQ procedure 116-119, 121
IF-THEN/ELSE statements 68-69
MEANS procedure 112-113
PUT function 120-121
REPORT procedure 132-135
SORT procedure 98-101
TABULATE procedure 122-123
trafficlighting 162-163
user-defined format 120-121, 162-163
GT comparison operator 66, 96
GUESSINGROWS= statement in the IMPORT procedure 28-29
H
H0= option in TTEST procedure 256
HAVING clause in SQL procedure 218-219
HBAR statement in SGPLOT procedure 226
HBOX statement in SGPLOT procedure 230
HEADER location in STYLE= option 156-158
headers
changing in TABULATE output 128-129
reading raw data 50
specifying style for 156-161
HEIGHT= option
ODS GRAPHICS statement 246-247
TITLE statement 154-155
hexadecimal constants 52
HIGH keyword in FORMAT procedure 108-109
HISTOGRAM option
CORR procedure 266
TTEST procedure 258
HISTOGRAM statement
SGPLOT procedure 228-229
UNIVARIATE procedure 252-253
histograms 228-229, 252-253, 258, 266
HOEFFDING option in CORR procedure 264
HTML output 144-147
hypertext links, style attribute 164-165
HyperText Markup Language 144-147
I
ID statement
PRINT procedure 102
STYLE= option in PRINT procedure 156-157
TRANSPOSE procedure 196-197
IF statement, subsetting 70-71
IF-THEN statements 66-67
IF-THEN/ELSE statements 68-69
IMAGE_DPI= option in ODS LISTING statement 247
IMAGENAME= option in ODS GRAPHICS statement 246-247
images
inserting in output 164-165
saving 246-247
IMPORT procedure 19
delimited files 28-29
PC files 24-25
variable names 90-91
WHERE= data set option 194-195
importing data
delimited 28-29
Excel files 26-27
from other software 24-25
methods 18-19
PC files 24-25
IN operator 96
in-stream data 30
IN= data set option 190-193
indention in SAS programs 3
INDEX function 62-63
INFILE statement 30-31
DELIMITER= option 52-53
DLM= option 52-53
DSD option 52-53
examples by operating environment 30-31
FIRSTOBS= option 50, 293
MISSOVER option 51, 299
OBS= option 50, 293
TRUNCOVER option 51, 299
informats
ATTRIB statement 314
colon modifier 42-43
dates 80-83
invalid data 302-303
table of 38-39
use 36-37
INNER JOIN clause in SQL procedure 180-181
input formats 36-41
INPUT function 307
INPUT reached past end of line
message in log 298-299, 301
INPUT statement
column style 34-35
data with embedded blanks 34-35
delimited data 52-53
formatted style 36-39
free formatted 32-33
list style 32-33
mixing input styles 40-41
multiple INPUT statements 48-49, 77
multiple lines per observation 44-45
multiple observations per line 46-47
reading blanks as missing 34-35
reading non-standard data 36-37
reading part of a raw data file 48-49
skipping lines of raw data 44-45
skipping over variables 34-35
space-delimited 32-33
INSET statement in SGPLOT procedure 240-241
INT function 60, 64-65
integer data
data types 4
truncating decimal places 64-65
interleaving SAS data sets 174-175
internal data 30
internet browser, creating files for 146-147
INTERVALPLOT option in TTEST procedure 258
INTO clause in SQL procedure 218-219
invalid data message in log 302-303
lost card note 301
invalid option message in log 310-311
inverting data sets 196-197
IS NOT MISSING operator 96
ITALIC option in TITLE statement 154-155
italics, explanation of usage xiii
iterative logic 78-79, 86-87
in macros 214-215
J
JITTER option in SCATTER statement 232
JMP files
reading 19
writing 278
joining SAS data sets 176-181
JPEG image format 246
Julian dates 82-83
JULIANw. format 82-83, 106-107
JULIANw. informat 38-39, 82-83
JUST style attribute 159, 161, 164-165
justification
character variables 62-63
output 15
style attributes 159, 161, 164-165
titles and footnotes 154-155
JUSTIFY= option in TITLE statement 154-155
K
kappa statistics 260
KAPPAPLOT option in FREQ procedure 262
KEEP= data set option 190-191, 317
KENDALL option in CORR procedure 264
Kendall’s tau-b 264, 268
kernel density plot 228-229
KERNEL option in DENSITY statement 228-229
KEYLEGEND statement in SGPLOT procedure240-241
kurtosis
MEANS procedure 254
UNIVARIATE procedure 250-251
KURTOSIS option in MEANS procedure 254
L
LABEL option in PRINT procedure 102
LABEL statement 95
SGPLOT procedure 227
TABULATE procedure 128
LABEL= option
data set option 190-191
REFLINE statement 238-239
XAXIS or YAXIS statement 238-239
LABELATTRS= option for graph attributes 242-243
labels
ATTRIB statement 314
data set 22-23, 190-191
value 108-109
variable 22-23, 95
lambda 260
LAST.byvariable 198-199
LCLM option in MEANS procedure 254
LE comparison operator 66
LEFT function 62-63
LEFTMARGIN= system option 15
legends for graphs 240-241
length of a variable 23, 68-69, 314-317
LENGTH statement
character data 68-69, 314-317
numeric data 316-317
LENGTH= option in REPORT procedure 140-141
LIBNAME engines 19
Excel files 26-27
LIBNAME statement 19, 21
Excel files 26-27
library, SAS data 5, 20-21
librefs 20-21
LIKE comparison operator 96-97
LIMITSTAT= option in VBAR or HBAR statement 226
line plots 234-235
line pointers
/ 44-45, 288
#n 44-45, 288
line-hold specifiers
@ compared to @@ 49
@, trailing 48-49, 288
@@, double trailing 46-47
line, graph attributes 242-243
LINEAR option in XAXIS or YAXIS statement 238
LINEATTRS= option for graph attributes 242-243
LINESTABLE option in MEANS statement 275
LINGUISTIC sort option 100-101
links, style attributes for hypertext 164-165
Linux
direct referencing of SAS data sets 20-21
INFILE statement 31
LIBNAME statement 20-21
LIST option in FREQ procedure 118
list style input 32-33
LISTING output 144, 152-153, 225, 246
lists, variable names 88-89
local macro variables 202-203
LOCATION= option in KEYLEGEND statement 240-241
locations in STYLE= option 156-159
loess curves 236-237
LOESS statement in SGPLOT procedure 236-237
LOG function 60, 64-65
LOG option in XAXIS or YAXIS statement 238
log, SAS 12-13
errors, warnings, and notes 294-295
writing in with PUT statements 308-309
LOG10 function 64-65
logarithmic functions 64-65
logical operators 66-67, 96-97
LOGNORMAL option in distribution plots 252
loop
DATA step, built-in 8-9
DO loop 78-79, 86-87
lost card note in log 300-301
LOW keyword in FORMAT procedure 108
LT comparison operator 66, 96
M
MACRO system option 203
macro variables, creating
using %LET 204-205
using CALL SYMPUTX 216-217
using SQL procedure 218-219
macros 202-221
&SYSDATE macro variable 206-207
&SYSDAY macro variable 206
&SYSNOBS macro variable 206
%DO loops 214-215
%DO statements 212-213
%ELSE statement 212-213
%END statement 212-215
%IF-%THEN statements 212-213
%LET statement 204-207
%MACRO statement 208-211
%MEND statement 208-209
%THEN statement 212-213
autocall libraries 209
automatic macro variables 206-207
CALL SYMPUTX 216-217
concepts 202-203
debugging errors 220-221
invoking 208
iterative %DO loop 214-215
local versus global variables 202-203
MACRO system option 203
macro variables, definition 202
macro variables, listing 220
MERROR system option 220-221
MLOGIC system option 220-221
MPRINT system option 220-221
parameters 210-211
quotation marks 203, 220
SAS macro processor 202-203
SERROR system option 220-221
SYMBOLGEN system option 220-221
MARKERATTRS= option for graph attributes 242-243
MARKERS option in SERIES statement 234-235
master data set definition 188
match merging
IN= data set option 190-193
one-to-many match merge 178-183
one-to-one match merge 176-177, 180-181
summary statistics 182-185
mathematical expressions 58-59
MATRIX option in CORR procedure 266-267
MAX function 64-65
MAX keyword
REPORT procedure 138
TABULATE procedure 124
MAX option in MEANS procedure 112
MAXDEC= option in MEANS procedure 112-113
maximum value
across observations 64-65
across variables 84-85, 112-113, 198-199
FIRST. and LAST. byvariable 198-199
HBOX or VBOX statement 230-231
MAX function 64-65
MEANS procedure 112-113
REPORT procedure 138
RETAIN statement 84-85
TABULATE procedure 124
UNIVARIATE procedure 251
McNemar’s test 264
MDY function 60, 64-65, 82-83
MEAN function 61, 64-65
missing data 305
MEAN keyword
REPORT procedure 138-139
TABULATE procedure 124-125
MEAN option in MEANS procedure 112
mean square
ANOVA procedure 274-275
REG procedure 268
means
HBOX or VBOX statement 230-231
MEAN function 61, 64-65
MEANS procedure 112-113
multiple comparisons 272-275
pairwise comparisons 256-259
REPORT procedure 138-139
TABULATE procedure 124-125
testing 256-259
UNIVARIATE procedure 251
MEANS procedure 112-115, 182-185, 254-255
MEANS statement, ANOVA procedure 272-275
MEASURES option in FREQ procedure 260, 262
median
HBOX or VBOX statement 230-231
MEANS procedure 112, 254-255
REPORT procedure 138
TABULATE procedure 124
UNIVARIATE procedure 250-251
MEDIAN option in MEANS procedure 112, 254-255
member, SAS data set 5
memory, running out 316-317
MERGE statement 176-183
BY statement 176-183
IN= data set option 190-193
one-to-many match merge 178-183
one-to-one match merge 176-177
summary statistics 182-183
MERROR system option 220-221
messy raw data, reading 42-43
Microsoft Excel files
reading 24-27
writing 284-287
MIN function 64-65
MIN keyword
REPORT procedure 138
TABULATE procedure 124
MIN option in MEANS procedure 112
minimum value
across observations 64-65
across variables 84-85, 112-113, 198-199
FIRST. and LAST. byvariable 198-199
HBOX or VBOX statement 230-231
MEANS procedure 112-113
MIN function 64-65
REPORT procedure 138
RETAIN statement 84-85
TABULATE procedure 124
UNIVARIATE procedure 251
missing data values 5
assignment statements 59, 304-305
end of raw data line 51
finding number 112-113, 116-119
IF-THEN statements 68-69
match merge 177
MEANS procedure 112
reading blanks as 34-35
REPORT procedure 132-133
SET statement 173
SORT procedure 98-99
TABULATE statement 122
UPDATE statement 188-189
MISSING option
FREQ procedure 116, 118-119
HBOX or VBOX statement 230
MEANS procedure 112
PANELBY statement 244
REPORT procedure 132-133
TABULATE procedure 122
VAR or HBAR statement 226
missing semicolon 296-297
missing values generated note 59, 304-305
MISSING= system option 15, 282-283, 286-287
MISSOVER option in INFILE statements 51, 299
MISSPRINT option in FREQ procedure 116
MISSTEXT= option in TABULATE procedure 126-127
MIXED= statement in the IMPORT procedure 25
MLOGIC system option 220-221
MMDDYYw. format 82-83, 106-107
MMDDYYw. informat 38-39, 82-83
mode of a variable
MEANS procedure 112, 254
REPORT procedure 138
TABULATE procedure 124
UNIVARIATE procedure 250-251
MODEL statement
ANOVA procedure 272-274
REG procedure 268-269
modes of running SAS 10-11
modifying SAS data sets
joining using SQL procedure 180-181
MERGE statement 176-183
SET statement 56-57, 172-173, 184-185
UPDATE statement 188-189
MONTH function 64-65, 82-83
MPRINT system option 220-221
multiple comparisons 272-275
multiple lines per observation, reading 44-45
multiple observations per line, reading 46-47
N
N function 64-65
N keyword
REPORT procedure 138-139
TABULATE procedure 124
N option in MEANS procedure 112, 254-255
name literals 90-91
names for
data sets 5, 20
formats 108
librefs 20-21
macro variables 204
macros 208
variable lists 88-89
variables 5, 90-91
NBINS= option in HISTOGRAM statement 228
NE comparison operator 66, 96
NMISS function 64-65
NMISS keyword
REPORT procedure 138
TABULATE procedure 124
NMISS option in MEANS procedure 112
NOBORDER option in KEYLEGEND statement 240
NOBYVAR option in TTEST procedure 256
NOCENTER system option 15
NOCOL option in FREQ procedure 118-119, 121
NOCUM option in FREQ procedure 116
NODATE system option 15
NODUPKEY option in SORT procedure 98-99
NOHEADERBORDER option in PANELBY statement 244
NOLEGCLI option in fitted curves 236
NOLEGCLM option in fitted curves 236-237
NOLEGFIT option in fitted curves 236
NOMARKERS option in fitted curves 236-237
NOMISSINGGROUP option
SCATTER statement 232
SERIES statement 234
NONE option
CORR procedure 266
TTEST procedure 258
NONUMBER system option 15
NOOBS option in PRINT procedure 102
NOPERCENT option in FREQ procedure 116, 118-119, 121
NOPRINT option
FREQ procedure 116
MEANS procedure 114-115
normal density plot 228-229
NORMAL option
CDFPLOT statement 252
DENSITY statement 228-229
HISTOGRAM statement 252-253
UNIVARIATE procedure 250
normality test 250
NOROW option in FREQ procedure 118-119, 121
notes in SAS log 12-13, 294-295
INPUT reached past end line 298-299, 301
invalid data 302-303
lost card 300-301
missing values were generated 59, 304-305
values have been converted 306-307
variable uninitialized 312-313
NOVARNAME option in PANELBY statement 244-245
NUMBER system option 15
numbering observations, _N_ variable 198-199
numeric data
commas, reading 36, 38-39
commas, writing 106-107
converting to character 306-307
definition 4
formats 106-107
functions 64-65
informats 38-39
length 316-317
reading non-standard 36-37
reading standard 32-35
numeric values converted note 306-307
NUMERIC_COLLATION= suboption in SORT procedure 100-101
O
OBS location in STYLE= option 156
OBS= option
data set option 190-191, 293
INFILE statements 50, 293
observations
changing to variables 196-197
combining single observation with many 184-185
creating a numbering variable 198-199
definition 4
deleting in DATA step 70-71
deleting using SQL procedure 72-73
duplicate, eliminating 98-99
grouping in procedures 120-121
grouping with IF-THEN/ELSE 68-69
interleaving 174-175
joining using SQL procedure 180-181
making several from one 76-79
merging 176-179
printing 102-103
reading multiple lines per observation 44-45
reading multiple observations per line 46-47
sorting 98-101
subsetting DELETE statements 70-71
subsetting FIRSTOBS= option 190-191
subsetting IF statement 70-71
subsetting IN= data set option 190-193
subsetting OBS= option 190-191
subsetting OUTPUT statements 74-75
subsetting using SQL procedure 72-73
subsetting WHERE statements 70, 96-97
subsetting WHERE= data set option 190, 194-195
tracking with IN= data set option 190-193
updating 188-189
OBSERVEDBYPREDICTED option in REG procedure 270
OBSHEADER location in STYLE= option 156
odds ratios 260-261
ODDSRATIOPLOT option in FREQ procedure 262
ODS 144-165, 224-247
ODS CSV statement 282-283
ODS EXCEL statement 286-287
ODS EXCLUDE statement 167
ODS Graphics 145, 224-225
ANOVA procedure 272-273
CORR procedure 266-267
FREQ procedure 262-263
image properties 246-247
insets 240-241
legends 240-241
REG procedure 270-271
saving graphs 246-247
SGPANEL procedure 244-245
SGPLOT procedure 226-237
style attributes 242-243
TTEST procedure 258-259
UNIVARIATE procedure 252-253
ODS GRAPHICS statement 224, 246-247
ODS HTML statement 146-147
ODS LISTING statement 152-153, 225, 246
ODS NOPROCTITLE statement 146-151
ODS OUTPUT statement 168-169
ODS PDF statement 150-151
ODS RTF statement 148-149
ODS SELECT statement 167
ODS TRACE statement 166-167
ON clause in SQL procedure 180-181
OnDemand for Academics 11
one-to-many match merge 178-183
one-to-one match merge 176-177
one-way frequency table 116-117
operators
arithmetic 58-59
comparison 66-67, 96-97
logical 66-67, 96-97
option not recognized error in log 310-311
options
comparison of types of options 190-191
data set 190-195
system 14-15
OPTIONS procedure 14
OPTION= option 203
OPTIONS statement 14-15
macro debugging options 220-221
OR operator 66-67, 96
ORDER usage option 132-133
ordering observations 98-101
ORIENTATION= system option 15
OS X operating environment 11
OTHER keyword FORMAT procedure 108
out of disk space message 316-317
out of memory message 316-317
OUT= option
FREQ procedure 116
IMPORT procedure 24-25, 28-29
MEANS procedure 114-115
SORT procedure 98-99
OUTFILE= option in EXPORT procedure 280-281, 284-285
outliers 230-231, 250-251
output
centering 15
changing appearance of data in 81-83, 104-109
creating SAS data sets from 168-169
customizing with STYLE= option 144-151
footnotes 94-95, 154-155
graphics 224-225
HTML 146-147, 225
labels 95
LISTING 152-153, 225
PDF 150-151, 225
RTF 148-149, 225
text 152-153
titles 94-95, 154-155
titles, removing 94-95, 146-151
Output Delivery System 144-165, 224-247
OUTPUT destination 144, 168-169
output object 145, 166-169
OUTPUT statement 9
DATA step 74-77
DO statement 76, 78-79
MEANS procedure 114-115
multiple observations from one 76-79
writing multiple data sets 74-75
OUTPUTFMT= option in ODS GRAPHICS statement 246-247
P
P1 option in MEANS procedure 254
P5 option in MEANS procedure 254
P10 option in MEANS procedure 254
P25 option in MEANS procedure 254
P50 option in MEANS procedure 254
P75 option in MEANS procedure 254
P90 option in MEANS procedure 254
P95 option in MEANS procedure 254
P99 option in MEANS procedure 254
page breaks
ODS output 148-151
PUT statement 110-111
PAGE option in REPORT procedure 136
PAGENO= system option 15
PAIRED statement in TTEST procedure 256-257
pairwise t test 256-259
PANELBY statement 244-245
parameter estimates 269
parameters, macro 210-211
PATH= option
ODS HTML statement 146-147
ODS RTF statement 148-149
PATTERN= option for graph attributes 242
PBSPLINE statement in SGPLOT procedure 236
PC files
reading 24, 26-27
writing 284-287
PC Files Server 284
PCTN keyword
REPORT procedure 138
TABULATE procedure 124
PCTSUM keyword
REPORT procedure 138
TABULATE procedure 124
PDF output 144, 150-151
PEARL style template 145, 150-151
Pearson coefficient 260, 264-265
percentages
calculating in DATA step 182-183
FREQ procedure 116-119
REPORT procedure 138
TABULATE procedure 124
percentiles
HBOX or VBOX statement 230-231
MEANS procedure 254
REPORT procedure 138
UNIVARIATE procedure 251
PERCENTw. informat 38-39
PERCENTw.d format 106-107
permanent SAS data sets 20-21
plots 224-253, 258-259, 262-263
PLOTS= option
CORR procedure 266-267
FREQ procedure 262-263
REG procedure 270-271
TTEST procedure 258-259
PNG image format 246
pointers
@n column pointer 40-41, 288-289
/ line pointer 44-45, 110-111, 288
#n line pointer 44-45, 288
+n column pointer 36-37
INPUT statements 36-37, 40-45
PUT statements 110-111, 288-289
POSITION option in CONTENTS procedure 88
POSITION= option in INSET or KEYLEGEND statement 240-241
POSTIMAGE style attribute 164-165
PostScript output 144, 246
POSTTEXT style attribute 164-165
POWERPOINT destination 144
PPLOT statement in UNIVARIATE procedure 252
precedence, mathematical rules 58
predicted values in regression 268-269
PREIMAGE style attribute 164-165
PRETEXT style attribute 164-165
PRIMARY option in SORT procedure 100-101
print formats 104-109
user-defined 108-109
PRINT option in FILE statements 110-111
PRINT procedure 102-103
STYLE= option 156-157
printed values, changing appearance 104-105
probability plot 252-253
probability-probability plot 252
PROBPLOT statement in UNIVARIATE procedure 252-253
PROBT option in MEANS procedure 254
PROC ANOVA 272-275
PROC CONTENTS 22-23
for debugging programs 313
POSITION option 88
PROC CORR 264-267
PROC DELETE 316
PROC EXPORT
delimited files 280-281
PC files 284-285
PROC FORMAT 108-109
with SGPLOT procedure 227
with TABULATE procedure 128-129
PROC FREQ 116-119, 121, 260-263
PROC IMPORT 19
delimited files 28-29
PC files 24-25
variable names 90-91
WHERE= data set option 194-195
PROC MEANS 112-115, 182-183, 254-255
PROC OPTIONS 14, 203
PROC PRINT 102-103
STYLE= option 156-157
PROC REG 268-271
PROC REPORT 130-141
STYLE= option 158-159
PROC SGPANEL 224, 244-245
PROC SGPLOT 224, 226-243
PROC SORT 98-101
PROC SQL
calculated variables 72-73
combining SAS data sets 180-181
GROUP BY clause 186-187
HAVING clause 218-219
INNER JOIN clause 180-181
INTO clause 218-219
ON clause 180-181
SELECT clause 72-73, 186-187
subsetting data using 72-73
summarizing variables 186-187, 218-219
WHERE clause 72-73, 180-181
PROC statement 6-7, 94
DATA= option 94
PROC step
common statements and options 94-95
definition 6-7
PROC SUMMARY 115
PROC TABULATE 122-129
CLASSLEV statement 160
STYLE= option 160-161
PROC TRANSPOSE 196-197
PROC TTEST 256-259
PROC UNIVARIATE 250-253
procedures
common statements and options 94-95
definition 6-7
title, removing 146-153
PROFILESPLOT option in TTEST procedure 258
PROPCASE function 62-63
PS destination 144-145
PS image format 246
PUT function 120-121, 307
PUT statement
_ALL_ variable name list 308-309
_PAGE_ keyword 110-111
debugging with 308-309
writing a raw data file 288-289
writing in SAS log 308-309
writing reports 110-111
PUTLOG statement 308-309
Q
Q1 option in MEANS procedure 254
Q3 option in MEANS procedure 254
QQPLOT option
REG procedure 270
TTEST procedure 258-259
QQPLOT statement in UNIVARIATE procedure 252
QTR function 64-65, 82-83
quantile-quantile plot 252, 258-259
quantiles 230-231, 250-254
question mark informat modifier, double 303
QUIT statement 7, 72-73
quotation marks
FOOTNOTE statements 94-95
in macros 203-204
reading delimited data with 28-29, 52-53
TITLE statements 94-95
R
R-square
ANOVA procedure 274-275
REG procedure 268-269
RAND function 64-65
random numbers, generating 64-65
RANGE option in MEANS procedure 112, 254
RANGE= statement in the IMPORT procedure 24
RBREAK statement in REPORT procedure 136-137
reading data 18-21, 28-53
column style 34-35
comma-separated values 28-29, 52-53
delimited data 28-29, 52-53
Excel files 26-27
internal 30
messy data 42-43
methods for getting into SAS 18-19
missing data at end of line 51
mixing input styles 40-41
multiple lines of data per observation 44-45
multiple observations per line of data 46-47, 77
non-standard format 36-37
part of a data file 48-49, 293
PC files 24, 26-27
skipping lines of raw data 44-45, 50
skipping over variables 34-35
space-delimited 32-33
variable length records 51
variable length values 42-43
reading SAS data sets 20-21
a single data set 56-57
concatenating data sets 172-173
interleaving data sets 174-175
merging summary statistics 182-185
one-to-many match merge 178-183
one-to-one match merge 176-177, 180-181
stacking data sets 172-173
updating a master data set 188-189
record length of raw data files 31
REFLINE statement 238-239
REG procedure 268-271
REG statement in SGPLOT procedure 236-237
regression 268-269
lines, plotting 236-237
relative risk measures 260
RELRISK option in FREQ procedure 260, 262
RELRISKPLOT option in FREQ procedure 262
RENAME= data set option 190-191
REPLACE option
EXPORT procedure 280-281, 284-285
IMPORT procedure 24-25, 28-29
REPORT procedure 130-141
STYLE= option 158-159
reports
controlling style of 144-145, 156-165
PRINT procedure 102-109
REPORT procedure 130-141
TABULATE procedure 122-129
writing custom 110-111
RESET option in ODS GRAPHICS statement 246-247
RESIDUALHISTOGRAM option in REG procedure 270
RESIDUALS option in REG procedure 270
RESPONSE= option in VBAR statement 226
results
centering 15
changing appearance of data in 81-83, 104-109
creating SAS data sets from 168-169
customizing with STYLE= option 144-151
footnotes 94-95, 154-155
graphics 224-225
HTML 146-147, 225
labels 95
LISTING 152-153, 225
PDF 150-151, 225
RTF 148-149, 225
titles 94-95, 154-155
titles, removing 94-95, 146-151
RETAIN statement 9, 84-85
RFPLOT option in REG procedure 270
RIGHTMARGIN= system option 15
risk ratios 260
RISKDIFFPLOT option in FREQ procedure 262
ROUND function 64-65
ROW=FLOAT option in TABULATE procedure 128-129
ROWAXIS statement 244
rows of data, definition 4
ROWS= option in PANELBY statement 244
RSTUDENTBYLEVERAGE option in REG procedure 270
RSTUDENTBYPREDICTED option in REG procedure 270
RTF
output 144-145, 148-149
style template 145, 148-149
RULE, invalid data message 302-303
RUN statement 6
CALL SYMPUTX 216-217
running SAS programs, methods 10-11
S
SAS automatic variables
_ERROR_ 198
_N_ 198-199
FIRST.byvariable 198-199
LAST.byvariable 198-199
macro 206-207
SAS data library 20-21
SAS data sets
accessing 18-19
changing observations to variables 196-197
combining a grand total with data 184-185
combining one observation with many 184-185
compressing 317
concatenating 172-173
contents of 22-23
creating 20-21
creating from procedure output 168-169
definition 4
deleting 316
descriptor 5, 22-23
interleaving data sets 174-175
inverting, TRANSPOSE procedure 196-197
joining using SQL procedure 180-181
LABEL= data set option 190-191
library names 5
member names 5
merging summary statistics 182-187
merging, one-to-many 178-183
merging, one-to-one 176-177
modifying a single data set 56-57
names 5, 20-21
options 190-195
permanent 20-21
printing 102-103
reading a single data set 56-57
SASHELP library 20, 22
SASUSER library 20
saving 20-21
saving summary statistics to 114-115, 168-169
selecting observations during a merge 192-193
size 5
sorting 98-101
stacking data sets 172-173
subsetting IF statement 70-71
subsetting OUTPUT statement 74-75
subsetting using SQL procedure 72-73
subsetting WHERE statement 70, 96-97
subsetting WHERE= data set option 190, 194-195
temporary 20
temporary versus permanent 20-21
updating a master data set 188-189
WORK library 20
writing multiple data sets 74-75
SAS dates 80-83
automatic macro variables 206-207
constants 80-81
converting dates 64-65, 80-83
definition of a SAS date 80
formats, table of 82-83, 106-107
functions, table of 64-65, 82-83
informats, table of 38-39, 82-83
Julian dates 82-83
printing current date on output 15
reading raw data with 15, 36-37
setting default century 13-14, 80
SAS Enterprise Guide 10, 18
SAS functions
dates 80-83
INPUT function 307
PUT function 307
table 62-65
use 60-61
SAS Institute x
SAS language rules 2-3
SAS listing 144, 152-153, 225, 246
SAS log 12-13
errors, warnings, and notes 294-295
writing in log with PUT statements 308-309
SAS macro processor 202-203
SAS names, rules for 5
SAS OnDemand for Academics 10-11
SAS programs
capitalization xiii, 3, 5
comments 3
data driven 216-219
debugging 292-317
definition 2
documenting 3
finding missing semicolons 296-297
fixing 294-295
indention xiii, 3
major parts 6-7
submitting 10-11
testing 292-293, 295
SAS Studio 10-11
SAS University Edition 10-11
SAS windowing environment 11
SAS, modes of running 10-11
SAS/ACCESS 19, 24-25
SASDATE option in ODS RTF statement 148
SASHELP library 20, 22
SASREPORT destination 144
SASUSER library 20
saving images 246-247
saving SAS data sets 20-21
Scalable Vector Graphics image format 246
SCALE = option in HISTOGRAM statement 228-229
SCATTER option in CORR procedure 266-267
scatter plots 232-233, 266-267
SCATTER statement in SGPLOT procedure 232-233
SCHEFFE option in ANOVA procedure 272-275
Scheffe’s multiple-comparisons 276-279
scientific notation
format for writing 106-107
reading data with 34, 36
SELECT clause in SQL procedure 72-73, 180-181, 186-187
selecting observations
DELETE statements 70-71
IF statements 70-71
IN= data set option 192-193
INPUT statements 48-49
OUTPUT statement 74-75
reading raw data file 48-49
saving memory and disk space 317
SQL procedure 72-73
WHERE statement 70, 96-97
WHERE= data set option 194-195
selecting output objects 167
semicolon 2
missing 296-297
sequential files 18, 30
series plots 234-235
SERIES statement in SGPLOT procedure 234-235
SERROR system option 220-221
SET statement
BY statement 174-175
combining grand total with data 184-185
combining one observation with many 184-185
concatenating data sets 172-173
interleaving data sets 174-175
modifying single data set 56-57
multiple SET statements 184-185
reading single data set 56-57
stacking data sets 172-173
SGPANEL procedure 224, 244-245
SGPLOT procedure 224, 226-243
sharing data with other software 18-19
SHEET= statement in the IMPORT procedure 24
SHOWBINS option in HISTOGRAM statement 228-229
SIDES= option in TTEST procedure 256
size
data sets 5, 22-23
footnotes 154-155
graphics images 246
titles 154-155
variables 5, 22-23, 68-69, 314-317
SIZE= option for graph attributes 242-243
skewness
MEANS procedure 254
UNIVARIATE procedure 251
SKEWNESS option in MEANS procedure 254
skipping over variables at input 34-35
Somer’s D 264
SORT procedure 98-101
SORTSEQ= option in SORT procedure 100-101
Soundex comparisons 96-97
space-delimited raw data
reading 28-29
writing 280-281
SPACING= option in PANELBY statement 244-245
SPANROWS option in REPORT procedure 158-159
Spearman coefficient 260, 264
SPEARMAN option in CORR procedure 264
splitting
data file 48-49
SAS data set 74-75, 194-195
SPSS files data engine 19
SQL procedure
calculated variables 72-73
combining SAS data sets 180-181
GROUP BY clause 186-187
HAVING clause 218-219
INNER JOIN clause 180-181
INTO clause 218-219
ON clause 180-181
SELECT clause 72-73, 186-187
subsetting data using 72-73
summarizing variables 186-187, 218-219
WHERE clause 72-73, 180-181
STACKED option in FREQ procedure 262
stacking SAS data sets 172-173
standard deviation
MEANS procedure 112-113, 254
REPORT procedure 138
TABULATE procedure 124
UNIVARIATE procedure 250-251
standard error
MEANS procedure 254
REG procedure 269
STARTPAGE= option
ODS PDF statement 150-151
ODS RTF statement 148-149
STAT= option in VBAR statement 226
Stata files
reading 19
writing 278
statement not valid error in log 310-311
statement options compared to data set options 190-191
statistics
analysis of variance 272-275
categorical data 260-261
correlations 264-265
descriptive 112-139, 250-255
multiple comparisons 272-275
output data set, MEANS procedure 114-115
regression 268-269
t test 256-259, 272
STD keyword in REPORT procedure 138
STDDEV option
MEANS procedure 112, 254
TABULATE procedure 124
STDERR option in MEANS procedure 254
STIMERw. informat 38-39
STOP statement 7, 217
STRENGTH= suboption in SORT procedure 100-101
strings, character 4, 58-59
Stuart’s tau-c 264
student’s t 258
style attributes
for graphics 242-243
PRINT procedure 156-157
REPORT procedure 158-159
table of 164-165
TABULATE procedure 160-161
style templates 144-145
for graphics 225, 242-243, 247
STYLE= option
graph attributes 242
graphics 247
ODS HTML statement 146-147
ODS LISTING statement 225, 247
ODS PDF statement 150-151
ODS RTF statement 148-149
PRINT procedure 156-157
REPORT procedure 158-159
TABULATE procedure 160-161
trafficlighting 162-163
user-defined formats 162-163
submitting SAS programs, methods 10-11
subsetting observations
DELETE statements 70-71
IF statements 70-71
IN= data set option 192-193
INPUT statements 48-49
OUTPUT statement 74-75
reading raw data file 48-49
saving memory and disk space 317
SQL procedure 72-73
WHERE clause in SQL procedure 72-73
WHERE statement 70, 96-97
WHERE= data set option 194-195
SUBSTR function 62-63
subtotals
PRINT procedure 102-103
REPORT procedure 136-137
SUM function 64-65, 305
SUM keyword
REPORT procedure 138
TABULATE procedure 124
sum of squares
ANOVA procedure 274-275
MEANS procedure 254
REG procedure 268
SUM option in MEANS procedure 112, 254
SUM statement in PRINT procedure 102-103
sum statements, DATA step 84-85
SUMMARIZE option in REPORT procedure 136-137
SUMMARY location in STYLE= option 158
SUMMARY procedure 115
summary statistics
combining with data 182-187
MEANS procedure 112-113, 254-255
REPORT procedure 130-139
saving in SAS data set 114-115
TABULATE procedure 122-125
UNIVARIATE procedure 250-251
SUMMARYPLOT option in TTEST procedure 258-259
sums
across observations 84-85, 102-103, 112-115, 124-129
across variables 58-59, 64-65, 305
combining with data 182-187
controlling style in PRINT procedure 156
MEANS procedure 112-115
REPORT procedure 130-141
SUM function 64-65, 305
SUM keyword in TABULATE procedure 124
SUM option in MEANS procedure 112, 254
sum statement in DATA step 84-85
SUM statement in PRINT procedure 102-103
TABULATE procedure 124-129
SUMWGT option in MEANS procedure 254
SVG image format 246
SYMBOL= option for graph attributes 242-243
SYMBOLGEN system option 220-221
SYMPUTX, CALL 216-217
syntax of SAS programs 2-3
syntax-sensitive editor 10-11, 293
syntax, checking 295
system options 14-15
BOTTOMMARGIN= 15
CENTER/NOCENTER 15
compared to data set options 190-191
DATASTMTCHK= 15, 297
DATE/NODATE 15
DATESTYLE= 15, 80
LEFTMARGIN= 15
MACRO 203
MERROR 220-221
MISSING= 15, 282-283, 286-287
MLOGIC 220-221
MPRINT 220-221
NUMBER/NONUMBER 15
ORIENTATION= 15
PAGENO= 15
RIGHTMARGIN= 15
SERROR 220-221
SYMBOLGEN 220-221
TOPMARGIN= 15
VALIDVARNAME= 5, 15, 90-91
YEARCUTOFF= 15, 80
T
T option
ANOVA procedure 272
MEANS procedure 254
t tests
ANOVA procedure 272
MEANS procedure 254
TTEST procedure 256-259
TAB value in the DBMS= option
EXPORT procedure 280
IMPORT procedure 28
tab-delimited data
reading 28-29, 52-53
writing 280-281
TABLE statement in TABULATE procedure 122-129
STYLE= option 160-161
table templates 144-145
tables of data, definition 4
TABLES statement in FREQ procedure 116-119, 260-261
TABULATE procedure 122-129
CLASSLEV statement 160
STYLE= option 160-161
templates 144-145
temporary SAS data sets 20-21, 316
text files
reading 18, 30
writing 144, 152-153
text, adding to graphs 240-241
TEXTALIGN style attribute 164-165
THEN keyword 66-69
THICKNESS= option for graph attributes 242-243
TIFF image format 246
time data
formats 106-107
informats 38-39
TIME option in XAXIS or YAXIS statement 238
TIMEw. informat 38-39
TIMEw.d format 106-107
Title, removing procedure name 146-151
TITLE statement 94-95, 154-155
TODAY function 64-65, 80-83
TOPMARGIN= system option 15
TOTAL location in STYLE= option 156
totals
across observations 84-85, 102-103, 112-115, 124-129
across variables 58-59, 64-65, 305
combining with data 182-187
controlling style in PRINT procedure 156
MEANS procedure 112-115
REPORT procedure 130-141
SUM function 64-65, 305
SUM keyword in TABULATE procedure 124
SUM option in MEANS procedure 112, 254
sum statement in DATA step 84-85
SUM statement in PRINT procedure 102-103
TABULATE procedure 124-129
tracing output objects 166-167
tracking observations IN= data set option 192-193
trafficlighting 162-163
trailing @ 48-49, 288
trailing @@ 46-47
transaction-oriented data 188-189
TRANSLATE function 62-63
TRANSPARENCY= option
DENSITY statement 228
HBOX or VBOX statement 230
HISTOGRAM statement 228
LOESS statement 236
PBSPLINE statement 236
REFLINE statement 238-239
REG statement 236
SCATTER statement 232
SERIES statement 234
VBAR statement 226
TRANSPOSE procedure 196-197
transposing data with OUTPUT statement 76-77
TRANWRD function 62-63
TREND option in FREQ procedure 260
TRIM function 62-63
truncation of character data 68-69, 314-315
TRUNCOVER option on INFILE statement 51, 299
TTEST procedure 256-259
TUKEY option in ANOVA procedure 272
Tukey’s studentized range test 276
two-way frequency table 118-119, 260-261
TWOWAY= option in FREQ procedure 262-263
type of variable 4, 23
TYPE= option
DENSITY statement 228-229
XAXIS or YAXIS statement 238-239
U
UCLM option in MEANS procedure 254
uninitialized variables 312-313
UNISCALE= option in PANELBY statement 244
UNIVARIATE procedure 250-253
University Edition 11
UNIX
direct referencing of SAS data sets 20-21
INFILE statement 31
LIBNAME statement 20-21
UPCASE function 61-63
UPDATE statement 188-189
URL style attribute 164-165
usage options in REPORT procedure 132-133
user-defined formats 108-109
grouping with 120-121
trafficlighting 162-163
with TABULATE procedure 128-129
USS option in MEANS procedure 254
V
VALIDVARNAME= system option 5, 15, 90-91
VALUE statement FORMAT procedure 108-109
VALUEATTRS= option for graph attributes 242
VALUES= option in XAXIS or YAXIS statement 238
VAR option in MEANS procedure 254
VAR statement
CORR procedure 264-265
MEANS procedure 112-113, 254-255
PRINT procedure 102-103
STYLE= option in PRINT procedure 156-157
STYLE= option in TABULATE procedure 160
TABULATE procedure 124-129
TRANSPOSE procedure 196-197
TTEST procedure 256
UNIVARIATE procedure 250
variable length records, reading 51
variable length values, reading 42-43
variable name lists
_ALL_ 88-89, 308-309
_CHARACTER_ 88-89
_NUMERIC_ 88-89
name prefix 88
name ranges 88-89
numbered ranges 88-89
variable not found error in log 312-313
variable uninitialized note in log 312-313
variables
arrays 86-87
automatic 198-199
automatic macro 206-207
changing to observations 196-197
creating a grouping variable 68-69
creating in REPORT procedure 140-141
creating with assignment statements 58-59
definition 4
dropping 190-191
keeping 190-191
labels 22-23, 95
length 22-23, 68-69, 314-317
lists 88-89
means 112-113
names 5, 90-91
printing 102-103
renaming 190-191
retaining values between observations 84-85
skipping when reading raw data 34
type 4, 23
uninitialized 312-313
variance with MEANS procedure 254
VBAR statement in SGPLOT procedure 226-227
VBOX statement in SGPLOT procedure230-231
vector graphics, scalable 246
Viewtable window 18
W
w.d format 106-107
w.d informat 38-39
warnings in SAS log 294
Web, creating files for 146-147
WEEKDATEw. format 82-83, 106-107
WEEKDAY function 64-65, 82-83
WEIBULL option in distribution plots 252
WEIGHT= option for graph attributes 242-243
WHERE clause in SQL procedure 72-73, 180-181
WHERE statement
DATA steps 70
procedures 96-97
WHERE= data set option 190, 194-195
WIDTH= option in ODS GRAPHICS statement 246-247
windowing environment, SAS 10-11
Windows operating environment
direct referencing of SAS data sets 20-21
INFILE statement 31
LIBNAME statement 20-21
WITH statement in CORR procedure 264-265
WORD destination 144
WORDDATEw. format 82-83, 106-107
WORK library 20-21, 316
writing data 278-283
delimited 280-283, 288-289
methods 278-279
PC files 278-279, 284-285
raw data 280-283, 288-289
writing SAS data sets
DATA step 6-7
multiple data sets 74-75
permanent data sets 20-21
WTKAPPAPLOT option in FREQ procedure 262
X
XAXIS statement in SGPLOT procedure 238-239
XLSX LIBNAME engine 26-27
Y
YAXIS statement in SGPLOT procedure 238-239
YEAR function 64-65, 82-83
YEARCUTOFF= system option 15, 80
YRDIF function 64-65, 80-83
Z
z/OS
direct referencing of SAS data sets 20-21
INFILE statement 31
LIBNAME statement 20-21