calculate the sum of value using only DATA STEP.
data count_;
input year name $ value;
cards;
2006 xxx 10
2007 yyy 12
2006 xxx 20
2008 yyy 15
2007 xxx 15
;

out put should be like this
year name T_value
-----------------------
2006 xxx 30
2007 xxx 15
2007 yyy 12
2008 xxx 15

Answers were Sorted based on User's Feedback



calculate the sum of value using only DATA STEP. data count_; input year name $ value; cards; 20..

Answer / rpd

I can give logic part, rest kindly manage :)

step 1:proc sort the dataset by "PID YEAR"
step2 :in the datastep "SET" it using by PID YEAR
create a temp variable say _SUM and RETAIN _SUM,
reset _SUM=0 on FIRST.YEAR.
T_VALUE=_SUM+VALUE

I guess this will work

Is This Answer Correct ?    2 Yes 0 No

calculate the sum of value using only DATA STEP. data count_; input year name $ value; cards; 20..

Answer / ravi s

it need two steps

step 1 : proc sort; by year name;run;

Step 2: data total (drop = value);
set count_;
by year name;
if first.name then T_value =0 ;
T_value + value;
if last.name then output ;
run;

Note: Hence i am doing work in data step. i need to sort
the data first by using "Proc Sort".

Kindly let me know is the any other method to do?

Is This Answer Correct ?    2 Yes 0 No

calculate the sum of value using only DATA STEP. data count_; input year name $ value; cards; 20..

Answer / xxx

here i can write the code using PROC SQL;
plz ans in DATA STEP;

proc sql;
select year,name, sum(value)as T_value from count_ group by
year, name having sum(value) order by name;
quit;

Is This Answer Correct ?    1 Yes 0 No

calculate the sum of value using only DATA STEP. data count_; input year name $ value; cards; 20..

Answer / nani

proc sort data=a;
by year ;
run;

data total ;
set a;
retain T_value;
by year ;
if first.year then T_value =0 ;
T_value + value;
if last.year then output ;
run;

proc print ;
run;

Is This Answer Correct ?    1 Yes 0 No

calculate the sum of value using only DATA STEP. data count_; input year name $ value; cards; 20..

Answer / aaa

PROC SORT DATA=COUNT_;
BY YEAR NAME;
RUN;

DATA TEST (DROP=VALUE);
SET COUNT_;
BY YEAR NAME;
RETAIN COUNT;
IF FIRST.NAME THEN COUNT = 0;
COUNT = COUNT + VALUE;
IF LAST.NAME THEN OUTPUT;
RUN;

Is This Answer Correct ?    0 Yes 0 No

calculate the sum of value using only DATA STEP. data count_; input year name $ value; cards; 20..

Answer / ashish

data new;

set tech ;
by year name;
if first.year or first.name then do;
sum=0;
end;
sum+value;
if last.year or last.name ;

run;

Is This Answer Correct ?    0 Yes 0 No

Post New Answer

More SAS Interview Questions

what is the difference between x=substr(name,1,2); and substr(name,1,2)='x';

3 Answers   HSBC,


What is the registered Key word is sas????

2 Answers   TCS,


What is the difference between %local and %global? : sas-macro

0 Answers  


what is OLAP?

4 Answers   CitiGroup, TCS,


What was the last computer book you purchased? Why?

0 Answers   Oracle,






If you were told to create many records from one record, show how you would do this using array and with proc transpose?

0 Answers  


sas implimented companies in hyderabad

11 Answers   CTS, HSBC,


What are the functions done while Compilation...?

1 Answers   TCS,


How would you include common or reuse to be processed along with your statements?

0 Answers  


Differentiate input and infile.

0 Answers  


data task; input id date date9. visit; cards; 101 01jan2015 1 101 02jan2015 2 101 06jan2015 3 102 04jan2015 1 102 07jan2015 2 102 12jan2015 3 103 06jan2015 1 103 13jan2015 2 ; run; write a program to find out missing dates between visits by each subject.

1 Answers  


how to generate report for 0 observation dataset?

3 Answers   Mind Tree, Student,


Categories