Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- How do you print the last observation of a SAS data set?
- proc print data=apple(firstobs = 1000 obs = 1000);
- run;
- proc sql noprint;
- select n(var1) into :nobs
- from apple;
- quit;
- proc print data=apple(firstobs=&nobs); run;
- data tmp / view=tmp;
- set apple nobs=nobs;
- if _n_=nobs;
- run;
- proc print data=tmp; run;
- %macro nobs (dsn);
- %let nobs=0;
- %let dsid = %sysfunc(open(&dsn));
- %if &dsid %then %let nobs = %sysfunc(attrn(&dsid,nobs));
- %let rc = %sysfunc(close(&dsid));
- &nobs
- %mend nobs;
- %let n = %nobs(apple);
- proc print data=apple (firstobs=&n obs=&n); run;
- data x;
- do i = 1 to 1000;
- output;
- end;
- run;
- data x;
- set x end = _end;
- end = _end;
- proc print data = x;
- where end;
- run;
Add Comment
Please, Sign In to add comment