I want to tell SAS to read columns 1 to 500. I could tell it to read COL1 COL2 COL3 ... COL500 but that would take forever.
Here is a more detailed example
VAR COL1 COL2 COL3 COL4 COL5 COL6 COL7 ............................................ COL500
Is there a shorter way to tell SAS to read the columns?
And if you are reading an external file you can use a range list on the input statement:
input var1 col1-col500;
Or
input var1 col001 - col500;
Yes several:
data want;
set have;
keep=col1-col500;
/* Or */
keep=col:;
/* Or */
array col{500};
do i=1 to 500;
...;
end;
run;
And if you are reading an external file you can use a range list on the input statement:
input var1 col1-col500;
Or
input var1 col001 - col500;
very helpful. Thanks!
Hi elopomorph,
I'm glad you found some useful info! If one of the replies was the exact solution to your problem, can you "Accept it as a solution"? Or if one was particularly helpful, feel free to "Like" it. This will help other community members who may run into the same issue know what worked.
Thanks!
Anna
Registration is now open for SAS Innovate 2025 , our biggest and most exciting global event of the year! Join us in Orlando, FL, May 6-9.
Sign up by Dec. 31 to get the 2024 rate of just $495.
Register now!
Need to connect to databases in SAS Viya? SAS’ David Ghan shows you two methods – via SAS/ACCESS LIBNAME and SAS Data Connector SASLIBS – in this video.
Find more tutorials on the SAS Users YouTube channel.