how do i get last 10obs from a dataset when we don't know
about the number of obsevations in that dataset?

Answers were Sorted based on User's Feedback



how do i get last 10obs from a dataset when we don't know about the number of obsevations in ..

Answer / raghu

proc sql;
select count(*) into : cnt from ds;
quit;

data ds1;
set ds(firstobs=%eval(&cnt-9) obs=&cnt);
run;

Is This Answer Correct ?    21 Yes 0 No

how do i get last 10obs from a dataset when we don't know about the number of obsevations in ..

Answer / shiva

data a;
do i=1 to 100;
output;
end;
run;

data data1;
set a nobs=tot;
if _n_ gt( tot-10) then output data1;
run;

Is This Answer Correct ?    20 Yes 4 No

how do i get last 10obs from a dataset when we don't know about the number of obsevations in ..

Answer / harshal r

data air;
set sashelp.air nobs=tot;
if _n_ gt( tot-10) then output;
run;

Is This Answer Correct ?    8 Yes 1 No

how do i get last 10obs from a dataset when we don't know about the number of obsevations in ..

Answer / naveen

Thank you Shiva

Is This Answer Correct ?    6 Yes 6 No

how do i get last 10obs from a dataset when we don't know about the number of obsevations in ..

Answer / pratik

Suppose we have dataset like sasuser.admit.

we dontknow how many obs are there in this dataset.

then we can use
Proc contents data=sasuser.admit n;
run;
it will come the total no of obs in this dataset.

after doing this you will get 21 obs are there.

data dsn1;
set sasuser.admit(firstobs=12 obs=21);
run;
proc print data=dsn1;
run;
then you will get last 10 obs.

Is This Answer Correct ?    2 Yes 2 No

how do i get last 10obs from a dataset when we don't know about the number of obsevations in ..

Answer / sumit

data new;
set old;
n = _N_;
run;

Proc sort data = new;
by descending n;
run;
Option OBS= 10;
Proc sort data = new (drop = n);
by descending n;
run;

Is This Answer Correct ?    2 Yes 3 No

how do i get last 10obs from a dataset when we don't know about the number of obsevations in ..

Answer / its me

Shiva, ur answer is also correct . and here goes another
one dear..

data W;
set X;
if _n_ > 95 then output;
run;


As the total no. of obs are 100, the last five observations
will be be in ur output dataset..
Cheers!!!

Is This Answer Correct ?    1 Yes 14 No

Post New Answer

More SAS Interview Questions

What are the statements that are executed only?

0 Answers  


what do you mean by data staging area? : Sas-di

0 Answers  


what is the one statement to set the criteria of data that can be coded in any step? : Sas programming

0 Answers  


How to write duplicate records into a separate dataset using sort?

4 Answers   HSBC,


explain about various caches available in data integrator? : Sas-di

0 Answers  






is it possible to generate sas datasets using proc print ???

1 Answers   GSK GlaxoSmithKline,


For what purposes have you used sas macros? : sas-macro

0 Answers  


What is the length assigned to the target variable by the scan function?

0 Answers  


in data set200 observation how to take 110,150,170 using sql procedure?

7 Answers   Accenture,


If a variable contains letters or special characters, can it be numeric data type?

0 Answers  


What is the order of evaluation of the comparison && logical && relational operators:?

2 Answers   CitiGroup,


I am looking to buy a sas advance book. So any one can guide me that which one i should buy.

0 Answers  


Categories