Hi all,
When it comes to reading in raw data with Infile statements, can someone explain what a 'short line' is?
This seems to play a big part in distinguishing between Missover, stopover and truncover?
(It would be great to get an explanation of the differences here too!)
Is it to do with the row of data being read in to have fewer columns or entries than expected?
Thanks very much,
Bhagya
If you're just asking what the term "short line" is, then yes, it's a line of input data that has a record length that is less than the longest requested record length by the INPUT statement.
The missover/stopover/truncover options determine what to do when that happens (when SAS attempts to read past a line delimiter, meaning a CR/LF/whichever or both are used by your OS/program).
Kiranv's linked paper explains them well, but in brief: STOPOVER says to treat as an error any time it attempts to read past a line delimiter. MISSOVER says to treat any variable that extends past the line delimiter as missing (including one that starts before it). TRUNCOVER is similar but does not treat a variable that starts before the line delimiter as missing, it just truncates it to the line delimiter. FLOWOVER basically ignores the line delimiter and keeps looking for more data after it (and is default).
SAS Innovate 2025 is scheduled for May 6-9 in Orlando, FL. Sign up to be first to learn about the agenda and registration!
Learn how use the CAT functions in SAS to join values from multiple variables into a single value.
Find more tutorials on the SAS Users YouTube channel.
Ready to level-up your skills? Choose your own adventure.