0% found this document useful (0 votes)
48 views8 pages

Part 1: Getting Acquainted With The SAS Studio Environment ...................................................................... 1

indice libro data mining
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
48 views8 pages

Part 1: Getting Acquainted With The SAS Studio Environment ...................................................................... 1

indice libro data mining
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 8

From An Introduction to SAS University Edition.

Full book available for purchase here.

Contents
List of Programs ........................................................................................ xi
About This Book ...................................................................................... xvii
About the Author ...................................................................................... xxi
Acknowledgments .................................................................................. xxiii

Part 1: Getting Acquainted with the SAS Studio


Environment ...................................................................... 1
Chapter 1: Introduction to the SAS University Edition ................................ 3
Introduction: An Overview of SAS and the SAS University Edition........................................... 3
Obtaining Your Free Copy of SAS ................................................................................................ 4
Installing the SAS University Edition ............................................................................................ 6
Conclusion .................................................................................................................................... 10

Chapter 2: The SAS Studio Interface ........................................................ 11


Introduction .................................................................................................................................. 11
Exploring the Built-In Data Sets ................................................................................................. 13
Sorting Your Data......................................................................................................................... 17
Switching Between Column Names and Column Labels ........................................................ 19
Resizing Tables ............................................................................................................................ 20
Creating Filters ............................................................................................................................. 20
Conclusion .................................................................................................................................... 23

Chapter 3: Importing Your Own Data ........................................................ 25


Introduction .................................................................................................................................. 25
Exploring the Utilities Tab ........................................................................................................... 25
Importing Data from an Excel Workbook .................................................................................. 27
Listing the SAS Data Set ............................................................................................................. 32
Importing an Excel Workbook with Invalid SAS Variable Names ........................................... 33
Importing an Excel Workbook That Does Not Have Variable Names .................................... 34

iv

Importing Data from a CSV File .................................................................................................. 35


Conclusion .................................................................................................................................... 36

Chapter 4: Creating Reports ..................................................................... 37


Introduction .................................................................................................................................. 37
Using the List Data Task to Create a Simple Listing ................................................................ 38
Filtering Data ................................................................................................................................ 44
Sorting Data .................................................................................................................................. 46
Outputting PDF and RTF Files .................................................................................................... 52
Joining Tables (Using the Query Window)................................................................................. 53
Conclusion .................................................................................................................................... 63

Chapter 5: Summarizing Data Using SAS Studio ....................................... 65


Introduction .................................................................................................................................. 65
Summarizing Numeric Variables ................................................................................................ 65
Adding a Classification Variable ................................................................................................. 70
Summarizing Character Variables.............................................................................................. 72
Conclusion .................................................................................................................................... 75

Chapter 6: Graphing Data ......................................................................... 77


Introduction .................................................................................................................................. 77
Creating a Frequency Bar Chart ................................................................................................. 77
Creating a Bar Chart with a Response Variable ....................................................................... 81
Adding a Group Variable ............................................................................................................. 83
Creating a Pie Chart .................................................................................................................... 84
Creating a Scatter Plot ................................................................................................................ 86
Conclusion .................................................................................................................................... 88

Part 2: Learning How to Write Your Own SAS Programs .. 89


Chapter 7: An Introduction to SAS Programming ...................................... 91
SAS as a Programming Language ............................................................................................. 91
The SAS Studio Programming Windows ................................................................................... 92
Your First SAS Program .............................................................................................................. 92
How the DATA Step Works ......................................................................................................... 97
How the INPUT Statement Works ............................................................................................ 102
Reading Delimited Data............................................................................................................. 102
How Procedures (PROCS) Work .............................................................................................. 104

How SAS Works: A Look Inside the Black Box ................................................................... 106
Conclusion .................................................................................................................................. 106

Chapter 8: Reading Data from External Files .......................................... 107


Introduction ................................................................................................................................ 107
Reading Data Values Separated by Delimiters ....................................................................... 107
Reading Comma-Separated Values Files ......................................................................... 110
Reading Data Separated by Other Delimiters .................................................................. 111
Reading Data in Fixed Columns ............................................................................................... 112
Column Input........................................................................................................................ 112
Formatted Input ................................................................................................................... 114
Reading Excel Files .................................................................................................................... 116
Reading from an Excel Workbook where Column Headings Are Invalid SAS Variable
Names ................................................................................................................................... 118
Conclusion .................................................................................................................................. 119
Problems ..................................................................................................................................... 120

Chapter 9: Reading and Writing SAS Data Sets ....................................... 123


What's a SAS Data Set? ............................................................................................................ 123
Temporary versus Permanent SAS Data Sets ........................................................................ 125
Shared Folders: Communicating between Your Virtual Computer and Your Real
Computer .................................................................................................................................... 126
Creating a Shared Folder and Reading Data from It .............................................................. 128
Creating a Permanent SAS Data Set........................................................................................ 133
Reading from a Permanent SAS Data Set ............................................................................... 134
Conclusion .................................................................................................................................. 135
Problems ..................................................................................................................................... 136

Chapter 10: Creating Formats and Labels .............................................. 137


What Is a SAS Format and Why Is It Useful? .......................................................................... 137
Using SAS Built-in Formats ...................................................................................................... 144
More Examples to Demonstrate How to Write Formats ........................................................ 145
Describing the Difference between a FORMAT Statement in a Procedure and a FORMAT
Statement in a DATA Step......................................................................................................... 146
Making Your Formats Permanent ............................................................................................ 147
Creating Variable Labels ........................................................................................................... 150
Conclusion .................................................................................................................................. 151
Problems ..................................................................................................................................... 151

vi

Chapter 11: Performing Conditional Processing ..................................... 153


Introduction ................................................................................................................................ 153
Grouping Age Using Conditional Processing ......................................................................... 153
Using Conditional Logic to Check for Data Errors ................................................................. 156
Describing the IN Operator ....................................................................................................... 157
Using Boolean Logic (AND, OR, and NOT Operators)............................................................ 158
A Special Caution When Using Multiple OR Operators ......................................................... 159
Conclusion .................................................................................................................................. 161
Problems ..................................................................................................................................... 162

Chapter 12: Performing Iterative Processing: Looping ........................... 165


Introduction ................................................................................................................................ 165
Demonstrating a DO Group ...................................................................................................... 166
Describing a DO Loop ............................................................................................................... 166
Using a DO Loop to Graph an Equation .................................................................................. 169
DO Loops with Character Values ............................................................................................. 170
Leaving a Loop Based on Conditions (DO WHILE and DO UNTIL Statements) .................. 172
DO WHILE ............................................................................................................................. 172
Combining an Iterative Loop with a WHILE Condition .................................................... 174
Do UNTIL .............................................................................................................................. 174
Demonstrating That a DO UNTIL Loop Executes at Least Once ................................... 175
Combining an Iterative Loop with an UNTIL Condition ................................................... 175
LEAVE and CONTINUE Statements ......................................................................................... 176
Conclusion .................................................................................................................................. 178
Problems ..................................................................................................................................... 178

Chapter 13: Working with SAS Dates ...................................................... 181


Introduction ................................................................................................................................ 181
Reading Dates from Text Data ................................................................................................. 181
Creating a SAS Date from Month, Day, and Year Values ...................................................... 184
Describing a Date Constant ...................................................................................................... 184
Extracting the Day of the Week, Day of the Month, and Year from a SAS Date ................. 186
Adding a Format to the Bar Chart ............................................................................................ 188
Computing Age from Date of Birth: The YRDIF Function ...................................................... 190
Conclusion .................................................................................................................................. 190
Problems ..................................................................................................................................... 191

vii

Chapter 14: Subsetting and Combining SAS Data Sets ........................... 193
Introduction ................................................................................................................................ 193
Subsetting (Filtering) Data in a SAS Data Set ......................................................................... 194
Describing a WHERE= Data Set Option................................................................................... 197
Describing a Subsetting IF Statement ..................................................................................... 198
A More Efficient Way to Subset Data When Reading Raw Data ........................................... 199
Creating Several Data Subsets in One DATA Step ................................................................. 199
Combining SAS Data Sets (Combining Rows) ........................................................................ 200
Adding a Few Observations to a Large Data Set (PROC APPEND) ...................................... 202
Interleaving Data Sets ............................................................................................................... 203
Merging Two Data Sets (Adding Columns) ............................................................................. 203
Controlling Which Observations Are Included in a Merge (IN= Data Set Option) ............... 205
Performing a One-to-Many or Many-to-One Merge .............................................................. 208
Merging Two Data Sets with Different BY Variable Names................................................... 210
Merging Two Data Sets with One Character and One Numeric BY Variable ...................... 211
Updating a Master File from a Transaction File (UPDATE Statement) ................................. 214
Conclusion .................................................................................................................................. 216
Problems ..................................................................................................................................... 217

Chapter 15: Describing SAS Functions ................................................... 219


Introduction ................................................................................................................................ 220
Describing Some Useful Numeric Functions .......................................................................... 220
Function Name: MISSING ................................................................................................... 221
Function Name: N ................................................................................................................ 221
Function Name: NMISS ....................................................................................................... 222
Function Name: SUM .......................................................................................................... 222
Function Name: MEAN ........................................................................................................ 223
Function Name: MIN............................................................................................................ 223
Function Name: MAX .......................................................................................................... 224
Function Name: SMALLEST ............................................................................................... 224
Function Name: LARGEST .................................................................................................. 225
Programming Example Using the N, NMISS, MAX, LARGEST, and MEAN Functions . 226
Function Name: INPUT........................................................................................................ 227
CALL Routine: CALL SORTN .............................................................................................. 227
Function Name: LAG ........................................................................................................... 229
Function Name: DIF ............................................................................................................. 231

viii

Describing Some Useful Character Functions........................................................................ 231


Function Names: LENGTHN and LENGTHC ..................................................................... 231
Function Names: TRIMN and STRIP .................................................................................. 233
Function Names: UPCASE, LOWCASE, and PROPCASE (Functions That Change
Case) ..................................................................................................................................... 234
Function Name: PUT ........................................................................................................... 235
Function Name: SUBSTRN (Newer Version of the SUBSTR Function) .......................... 236
Function Names: FIND and FINDC .................................................................................... 237
Function Names: CAT, CATS, and CATX .......................................................................... 238
Function Names: COUNT and COUNTC ........................................................................... 240
Function Name: COMPRESS .............................................................................................. 241
Function Name: SCAN ........................................................................................................ 244
CALL Routine: CALL MISSING ........................................................................................... 245
Function Names: NOTDIGIT, NOTALPHA, and NOTALNUM ........................................... 246
Function Names: ANYDIGIT, ANYALPHA, and ANYALNUM ........................................... 246
Function Name: TRANWRD ................................................................................................ 247
Conclusion .................................................................................................................................. 247
Problems ..................................................................................................................................... 248

Chapter 16: Working with Multiple Observations per Subject ................. 251
Introduction ................................................................................................................................ 251
Useful Tools for Working with Longitudinal Data ................................................................... 251
Describing First. and Last. Variables ....................................................................................... 252
Computing Visit-to-Visit Differences ....................................................................................... 253
Computing Differences Between the First and Last Visits .................................................... 255
Counting the Number of Visits for Each Patient ..................................................................... 256
Conclusion .................................................................................................................................. 258
Problems ..................................................................................................................................... 258

Chapter 17: Describing Arrays ............................................................... 261


Introduction ................................................................................................................................ 261
What Is an Array? ....................................................................................................................... 261
Describing a Character Array ................................................................................................... 264
Performing an Operation on Every Numeric Variable in a Data Set ..................................... 265
Performing an Operation on Every Character Variable in a Data Set .................................. 265
Converting a Data Set with One Observation per Subject into a Data Set with Multiple
Observations per Subject.......................................................................................................... 266

ix

Converting a Data Set with Multiple Observations per Subject into a Data Set with One
Observation per Subject............................................................................................................ 268
Conclusion .................................................................................................................................. 269
Problems ..................................................................................................................................... 270

Chapter 18: Displaying Your Data ........................................................... 273


Introduction ................................................................................................................................ 273
Producing a Simple Report Using PROC PRINT .................................................................... 273
Using Labels Instead of Variable Names as Column Headings ............................................ 277
Including a BY Variable in a Listing.......................................................................................... 279
Including the Number of Observations in a Listing ................................................................ 280
Conclusion .................................................................................................................................. 280
Problems ..................................................................................................................................... 281

Chapter 19: Summarizing Data with SAS Procedures ............................. 283


Introduction ................................................................................................................................ 283
Using PROC MEANS (with the Default Options) ..................................................................... 283
Using PROC MEANS Options to Customize the Summary Report ...................................... 286
Computing Statistics for Each Value of a BY Variable........................................................... 288
Using a CLASS Statement Instead of a BY Statement .......................................................... 289
Including Multiple CLASS Variables with PROC MEANS ....................................................... 290
Statistics Broken Down Every Way .......................................................................................... 291
Using PROC MEANS to Create a Summary Data Set ............................................................ 293
Letting PROC MEANS Name the Variables in the Output Data Set ...................................... 294
Creating a Summary Data Set with CLASS Variables ............................................................ 295
Using a Formatted CLASS Variable ......................................................................................... 297
Demonstrating PROC UNIVARIATE ......................................................................................... 298
Conclusion .................................................................................................................................. 302
Problems ..................................................................................................................................... 303

Chapter 20: Computing Frequencies ...................................................... 305


Introduction ................................................................................................................................ 305
Creating a Data Set to Demonstrate Features of PROC FREQ............................................. 305
Using PROC FREQ to Generate One-Way Frequency Tables ............................................... 307
Creating Two-Way Frequency Tables ...................................................................................... 309
Creating Three-Way Frequency Tables ................................................................................... 311
Using Formats to Create Groups for Numeric Variables ....................................................... 313

Conclusion .................................................................................................................................. 314


Problems ..................................................................................................................................... 314

Appendix: Solutions to the Odd-Numbered Problems ............................. 315


Index ...................................................................................................... 329

From An Introduction to SAS University Edition, by Ron Cody. Copyright 2015, SAS Institute Inc.,
Cary, North Carolina, USA. ALL RIGHTS RESERVED.

You might also like