I am currently using this code:
proc import datafile="&BaseFolder.&FileName." out=LatestData replace; guessingrows=10000; run;
In most scenarios this works fine for a column X if it contains a number in the first 10000 rows. Sometimes my file's column is empty. How can I force proc import to use a numeric datatype for column X? Thanks!
If your files referenced &BaseFolder.&FileName are supposed to have the same structure then they should be read with a data step where you have control.
Proc Import is a guessing procedure and apparently the behavior is to guess that a column with missing values is character.
A minor suggestion would be to bump the guessing rows up to 32000 but that may not help.
If your files referenced &BaseFolder.&FileName are supposed to have the same structure then they should be read with a data step where you have control.
Proc Import is a guessing procedure and apparently the behavior is to guess that a column with missing values is character.
A minor suggestion would be to bump the guessing rows up to 32000 but that may not help.
Right, proc imoprt is a Guessing Procedure. It looks at the file and Guesses what the data looks like. If you don't like its guess then its time for you to put the effort in to specify what each column should be. Never rely on guessing procedures. You can take the datastep code which proc import creates in the log, and then modify that to your needs, so it would look like:
data want; infile "your-file"; length ...; informat ...; format ...; input ...; run;
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.