Hi
I have 1 variabel A. I need to create a new variabel B thats i created through the retain function. For the first observation must B must be equal to 1.
For all the other values B=1-B*A - where B is the retained result.
As an example:
Data have:
A:
0,5
0,5
0,5
Data want
A: B
0,5 1
0,5 0,5 (calculated as: 1-1*0,5)
0,5 0,75 (calculated as: 1-0,5*0,5)
Best regards
data want;
set have;
retain b 1;
if _n_ > 1 then b= 1- b*a;
run;
DATA A10Aug2015_1;
retain B 1;
INPUT A;
OUTPUT;
B=1-B*A;
DATALINES;
0.5
0.5
0.5
;
I am not clear on what the dataset A is for, it doesn't add anything to the mix. Adjust the do loop for number of iterations:
data want (drop=i);
retain b 1;
do i=1 to 5;
b=1 - (b * 0.5);
output;
end;
run;
Don't miss out on SAS Innovate - Register now for the FREE Livestream!
Can't make it to Vegas? No problem! Watch our general sessions LIVE or on-demand starting April 17th. Hear from SAS execs, best-selling author Adam Grant, Hot Ones host Sean Evans, top tech journalist Kara Swisher, AI expert Cassie Kozyrkov, and the mind-blowing dance crew iLuminate! Plus, get access to over 20 breakout sessions.
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.