I want to import a file and in that file I want to read only last 10 records (not sure how many observation/records we have in that file)?
thanks in advance..
data want;
set sashelp.class nobs=nobs;
if _n_>nobs-10 ;
run;
data want;
set sashelp.class nobs=nobs;
if _n_>nobs-10 ;
run;
After import, SAS knows the record number:
data want;
set imported nobs=all_obs;
if _n_ > all_obs - 10;
run;
If you absolutely want to do it in the import data step, you can use an external command:
filename oscmd pipe "wc -l &filename.";
data _null_;
infile oscmd;
input lines;
call symputx('lines',lines);
run;
data want;
infile "&filename." /* other options */;
input
........
;
if _n_ > &lines. - 10;
run;
April 27 – 30 | Gaylord Texan | Grapevine, Texas
Walk in ready to learn. Walk out ready to deliver. This is the data and AI conference you can't afford to miss.
Register now and lock in 2025 pricing—just $495!
Still thinking about your presentation idea? The submission deadline has been extended to Friday, Nov. 14, at 11:59 p.m. ET.
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.