Below is my code.
In file_a, there are 99 columnswith over 100K rows.
There is one column in this file that has either numeric or alpha data (not alpha-numeric) for each entry. The format for this column in DATAROW=2 is numeric. When I run this file, SAS thinks the column is numeric. If it comes to a cell with ALPHA, it returns "." for missing.
How can I fix the code - without having to list EVERY INFORMAT, FORMAT and INPUT for all 99 variables?
Thanks!
********************************
PROC IMPORT OUT=LIBNAME.file_b
DATAFILE = 'file_a'
DBMS=CSV replace;
GETNAME=YES;
DATAROW=2;
RUN;
You also might be able to address this using the GUESSINGROWS statement in PROC IMPORT.
I think it might be DBTYPE option, see the documentation...
SAS/ACCESS(R) 9.2 Interface to PC Files: Reference, Second Edition
You also might be able to address this using the GUESSINGROWS statement in PROC IMPORT.
I didn't know how to use DBTYPE with PROC IMPORT.
I tried GUESSINGROWS with PROC IMPORT. The results look like they match the input file - # of rows in dataset matches .csv file. However, I got an error:
NOTE: Invalid data for Glob_Function_Id in line 94102 839-842.
Errors detected in submitted DATA step. Examine log.
108956 rows created in libname.file_b from file_a.csv.
ERROR: Import unsuccessful. See SAS Log for details.
I got many of the NOTE in the log. I checked the line and everything looks good. Any thoughts as to the error? What do the numbers 839-842 mean?
Thanks!!!
839-842 are the columns for the variable that SAS had trouble reading.
I thought they refer to columns, but my file has 99 columns (variables). So that confused me.
Anyway, I checked the entire row and everything matched with the original file. So I am not sure what the error is.
It's finally time to hack! Remember to visit the SAS Hacker's Hub regularly for news and updates.
Check out this tutorial series to learn how to build your own steps in SAS Studio.
Find more tutorials on the SAS Users YouTube channel.
Ready to level-up your skills? Choose your own adventure.