SAS Reading Data
SAS has procedures for automating the import of data files, but sometimes it's necessary to manually read data from a text file.
Input
The primary way to read data into a SAS table is with a data step and the INFILE, INPUT, and OUTPUT statements.
InFile Statement
data LIBREF.TABLE;
infile "data.txt" pad missover lrecl=80;
run;The LRECL option specifies the fixed-width size of a record. The MISSOVER and PAD options together ensure that unspecified fields are set to missing.
Input Statement
data LIBREF.TABLE;
infile "data.txt" pad missover lrecl=80;
input
RECTYPE $ 1-1 @
;
if RECTYPE = "1" then do;
input
RECTYPE $ 1-1
VAR1 2-5
;
output LIBREF.TABLE1;
end;
else RECTYPE = "2" then do;
input
RECTYPE $ 1-1
VAR1 2-2
;
output LIBREF.TABLE2;
end;
run;As demonstrated above, records can be partially input, processed, then completely input later.
