<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: Computation using loop in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/Computation-using-loop/m-p/511903#M137793</link>
    <description>&lt;DIV&gt;Thank you so much for your prompt response&lt;/DIV&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;My actual data is as follows.&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;data have;&lt;BR /&gt;input year firm $&amp;nbsp;B0&amp;nbsp;A;&lt;BR /&gt;datalines;&lt;/DIV&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;DIV&gt;&lt;BR /&gt;1992&amp;nbsp; A 0.2 .&lt;BR /&gt;1993&amp;nbsp; A&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;25&lt;BR /&gt;1994&amp;nbsp; A&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;30&lt;BR /&gt;1995&amp;nbsp; A&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;40&lt;BR /&gt;2002&amp;nbsp; B 0.3 .&lt;BR /&gt;2003&amp;nbsp; B&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;50&lt;BR /&gt;2004&amp;nbsp; B&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;100&lt;BR /&gt;2005&amp;nbsp; B&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;150&lt;/DIV&gt;&lt;DIV&gt;&lt;BR /&gt;I need to start from B0 and compute Bt in each year.&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;B&lt;/DIV&gt;&lt;DIV&gt;&lt;DIV&gt;1992&amp;nbsp; B0=0.2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0.2&lt;/DIV&gt;&lt;DIV&gt;1993 B1=0.5*B0 + A(25)&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0.2*0.5+25=25.1&lt;/DIV&gt;&lt;DIV&gt;1994&amp;nbsp; B2=0.5*B1 + A(30)&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 25.1*0.5+30=42.55&lt;/DIV&gt;&lt;DIV&gt;1995&amp;nbsp; B3=0.5*B2 + A(40)&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 42.55*0.5+40=83.05&lt;/DIV&gt;&lt;DIV&gt;2002 &amp;nbsp;B0=0.3&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0.3&lt;/DIV&gt;&lt;DIV&gt;2003&amp;nbsp;&amp;nbsp;B1=0.5*B0 + A(50)&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0.3*0.5 +50=50.15&lt;/DIV&gt;&lt;DIV&gt;2004&amp;nbsp; B2=0.5*B1 + A(100)&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 50.15*0.5+100=125.075&lt;/DIV&gt;&lt;DIV&gt;2005 B3=0.5*B2 + A(150)&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 125.075*0.5+150=212.5375&lt;/DIV&gt;&lt;/DIV&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
    <pubDate>Sat, 10 Nov 2018 03:23:34 GMT</pubDate>
    <dc:creator>joon1</dc:creator>
    <dc:date>2018-11-10T03:23:34Z</dc:date>
    <item>
      <title>Computation using loop</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Computation-using-loop/m-p/511846#M137761</link>
      <description>&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I would like to make program in order to do the following in the financial dataset using a sort of loop.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; A&lt;/P&gt;&lt;P&gt;1992&amp;nbsp; firm A&amp;nbsp;&amp;nbsp; B0=0.2&lt;/P&gt;&lt;P&gt;1993 firm&amp;nbsp; A&amp;nbsp;&amp;nbsp; B1=0.5*B0 +&amp;nbsp;A,1993&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 25&amp;nbsp;&lt;/P&gt;&lt;P&gt;1994 firm&amp;nbsp;&amp;nbsp;A&amp;nbsp;&amp;nbsp; B2=0.5*B1 +&amp;nbsp;A, 1994&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 30&lt;/P&gt;&lt;P&gt;1995 firm&amp;nbsp; A&amp;nbsp;&amp;nbsp; B3=0.5*B2 + A, 1995&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 40&lt;/P&gt;&lt;P&gt;2002 firm&amp;nbsp; B&amp;nbsp;&amp;nbsp; B0=0.3&lt;/P&gt;&lt;P&gt;2003 firm&amp;nbsp; B&amp;nbsp;&amp;nbsp; B1=0.5*B0 + A,2003&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 50&lt;/P&gt;&lt;P&gt;2004 firm&amp;nbsp; B&amp;nbsp;&amp;nbsp; B2=0.5*B1 + A,2004&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 100&lt;/P&gt;&lt;P&gt;2005 firm B&amp;nbsp;&amp;nbsp;&amp;nbsp; B3=0.5*B2 + A,2005&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 150&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;It will be very appreciative if you can help me.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Fri, 09 Nov 2018 21:40:24 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Computation-using-loop/m-p/511846#M137761</guid>
      <dc:creator>joon1</dc:creator>
      <dc:date>2018-11-09T21:40:24Z</dc:date>
    </item>
    <item>
      <title>Re: Computation using loop</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Computation-using-loop/m-p/511855#M137763</link>
      <description>We can't really help given what you've shown. What are you starting with? What do you want as output? What approach have you tried already? Please show any code.</description>
      <pubDate>Fri, 09 Nov 2018 22:11:22 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Computation-using-loop/m-p/511855#M137763</guid>
      <dc:creator>Reeza</dc:creator>
      <dc:date>2018-11-09T22:11:22Z</dc:date>
    </item>
    <item>
      <title>Re: Computation using loop</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Computation-using-loop/m-p/511886#M137783</link>
      <description>&lt;P&gt;Like this?&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data have;
input year firm $ factor A;
datalines;
1992  A 0.2 .
1993  A 0.5 25 
1994  A 0.5 30
1995  A 0.5 40
2002  B 0.3 .
2003  B 0.5 50
2004  B 0.5 100
2005  B 0.5 150
;

data want;
set have;
by firm;
if first.firm then B = factor;
else B = factor*prevB + A;
retain prevB;
prevB = B;
drop prevB;
run;

proc print data=want noobs; run;&lt;/CODE&gt;&lt;/PRE&gt;
&lt;PRE&gt;                      year    firm    factor     A           B

                      1992     A        0.2       .      0.200
                      1993     A        0.5      25     25.100
                      1994     A        0.5      30     42.550
                      1995     A        0.5      40     61.275
                      2002     B        0.3       .      0.300
                      2003     B        0.5      50     50.150
                      2004     B        0.5     100    125.075
                      2005     B        0.5     150    212.538
&lt;/PRE&gt;</description>
      <pubDate>Fri, 09 Nov 2018 23:48:19 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Computation-using-loop/m-p/511886#M137783</guid>
      <dc:creator>PGStats</dc:creator>
      <dc:date>2018-11-09T23:48:19Z</dc:date>
    </item>
    <item>
      <title>Re: Computation using loop</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Computation-using-loop/m-p/511894#M137787</link>
      <description>&lt;DIV&gt;Hi PGStats,&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;Thank you so much for your help&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;My actual data is as follows. 0.5 is just constant and it can be included in the program. I am not sure where you defined 'prevB' in the previous program.&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;data have;&lt;BR /&gt;input year firm $ factor B0&amp;nbsp;A;&lt;BR /&gt;datalines;&lt;/DIV&gt;&lt;DIV&gt;&lt;BR /&gt;1992&amp;nbsp; A 0.2 .&lt;BR /&gt;1993&amp;nbsp; A&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;25&lt;BR /&gt;1994&amp;nbsp; A&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;30&lt;BR /&gt;1995&amp;nbsp; A&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;40&lt;BR /&gt;2002&amp;nbsp; B 0.3 .&lt;BR /&gt;2003&amp;nbsp; B&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;50&lt;BR /&gt;2004&amp;nbsp; B&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;100&lt;BR /&gt;2005&amp;nbsp; B&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;150&lt;/DIV&gt;&lt;DIV&gt;&lt;BR /&gt;I need to start from B0 and compute Bt in each year.&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&lt;DIV&gt;1992&amp;nbsp; B0=0.2&lt;/DIV&gt;&lt;DIV&gt;1993 B1=0.5*B0 + A(25)&lt;/DIV&gt;&lt;DIV&gt;1994&amp;nbsp; B2=0.5*B1 + A(30)&lt;/DIV&gt;&lt;DIV&gt;1995&amp;nbsp; B3=0.5*B2 + A(40)&lt;/DIV&gt;&lt;DIV&gt;2002 &amp;nbsp;B0=0.3&lt;/DIV&gt;&lt;DIV&gt;2003&amp;nbsp;&amp;nbsp;B1=0.5*B0 + A(50)&lt;/DIV&gt;&lt;DIV&gt;2004&amp;nbsp; B2=0.5*B1 + A(100)&lt;/DIV&gt;&lt;DIV&gt;2005 B3=0.5*B2 + A(150)&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;It will be grateful if you can help me a bit more.&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;Sincerely,&lt;/DIV&gt;&lt;DIV&gt;Joon1&lt;/DIV&gt;&lt;/DIV&gt;</description>
      <pubDate>Sat, 10 Nov 2018 01:31:05 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Computation-using-loop/m-p/511894#M137787</guid>
      <dc:creator>joon1</dc:creator>
      <dc:date>2018-11-10T01:31:05Z</dc:date>
    </item>
    <item>
      <title>Re: Computation using loop</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Computation-using-loop/m-p/511896#M137789</link>
      <description>&lt;P&gt;With sample data this becomes much clearer.&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Though please test your data step before posting, you list 5 variables but only have four.&amp;nbsp;&lt;/P&gt;
&lt;P&gt;This worked for me - I dropped the 'factor' whatever that was supposed to be.&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data want;
set have;
retain B1;
if not missing(B0) then B1=B0;
else B1 = B1*0.5 + A;

drop B0;
run;&lt;/CODE&gt;&lt;/PRE&gt;
&lt;BLOCKQUOTE&gt;&lt;HR /&gt;&lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/107110"&gt;@joon1&lt;/a&gt;&amp;nbsp;wrote:&lt;BR /&gt;
&lt;DIV&gt;Hi PGStats,&lt;/DIV&gt;
&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV&gt;Thank you so much for your help&lt;/DIV&gt;
&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV&gt;My actual data is as follows. 0.5 is just constant and it can be included in the program. I am not sure where you defined 'prevB' in the previous program.&lt;/DIV&gt;
&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV&gt;data have;&lt;BR /&gt;input &lt;FONT color="#FF0000"&gt;&lt;STRONG&gt;year firm $ factor B0&amp;nbsp;A&lt;/STRONG&gt;&lt;/FONT&gt;; &amp;nbsp;&lt;FONT color="#FF0000"&gt;&lt;STRONG&gt;*&amp;lt;- 5 variables listed?;&lt;/STRONG&gt;&lt;/FONT&gt;&lt;BR /&gt;datalines;&lt;/DIV&gt;
&lt;DIV&gt;&lt;BR /&gt;1992&amp;nbsp; A 0.2 .&lt;BR /&gt;1993&amp;nbsp; A&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;25&lt;BR /&gt;1994&amp;nbsp; A&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;30&lt;BR /&gt;1995&amp;nbsp; A&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;40&lt;BR /&gt;2002&amp;nbsp; B 0.3 .&lt;BR /&gt;2003&amp;nbsp; B&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;50&lt;BR /&gt;2004&amp;nbsp; B&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;100&lt;BR /&gt;2005&amp;nbsp; B&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;150&lt;/DIV&gt;
&lt;DIV&gt;&lt;BR /&gt;I need to start from B0 and compute Bt in each year.&lt;/DIV&gt;
&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV&gt;
&lt;DIV&gt;1992&amp;nbsp; B0=0.2&lt;/DIV&gt;
&lt;DIV&gt;1993 B1=0.5*B0 + A(25)&lt;/DIV&gt;
&lt;DIV&gt;1994&amp;nbsp; B2=0.5*B1 + A(30)&lt;/DIV&gt;
&lt;DIV&gt;1995&amp;nbsp; B3=0.5*B2 + A(40)&lt;/DIV&gt;
&lt;DIV&gt;2002 &amp;nbsp;B0=0.3&lt;/DIV&gt;
&lt;DIV&gt;2003&amp;nbsp;&amp;nbsp;B1=0.5*B0 + A(50)&lt;/DIV&gt;
&lt;DIV&gt;2004&amp;nbsp; B2=0.5*B1 + A(100)&lt;/DIV&gt;
&lt;DIV&gt;2005 B3=0.5*B2 + A(150)&lt;/DIV&gt;
&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV&gt;It will be grateful if you can help me a bit more.&lt;/DIV&gt;
&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;
&lt;DIV&gt;Sincerely,&lt;/DIV&gt;
&lt;DIV&gt;Joon1&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;HR /&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Sat, 10 Nov 2018 01:46:27 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Computation-using-loop/m-p/511896#M137789</guid>
      <dc:creator>Reeza</dc:creator>
      <dc:date>2018-11-10T01:46:27Z</dc:date>
    </item>
    <item>
      <title>Re: Computation using loop</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Computation-using-loop/m-p/511897#M137790</link>
      <description>&lt;P&gt;Thank you so much again&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;However, be0 should remain in the first year when observation of a company is available. If the code you provided is used, B0 is dropped and B1(be1) is computed for the first year. B1 should be computed from 1984 for the company with gvkey 1001 and 1983 for the company with gvkey 1003. Could you please help me this part?&amp;nbsp; Thank you again&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Obs GVKEY FYEAR XAD be11234567891011&lt;/P&gt;&lt;TABLE cellspacing="0" cellpadding="5"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;001001&lt;/TD&gt;&lt;TD&gt;1983&lt;/TD&gt;&lt;TD&gt;1.3300&lt;/TD&gt;&lt;TD&gt;-3.325&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;001001&lt;/TD&gt;&lt;TD&gt;1984&lt;/TD&gt;&lt;TD&gt;1.8400&lt;/TD&gt;&lt;TD&gt;0.178&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;001001&lt;/TD&gt;&lt;TD&gt;1985&lt;/TD&gt;&lt;TD&gt;3.0390&lt;/TD&gt;&lt;TD&gt;3.128&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;001003&lt;/TD&gt;&lt;TD&gt;1982&lt;/TD&gt;&lt;TD&gt;0.1610&lt;/TD&gt;&lt;TD&gt;-0.403&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;001003&lt;/TD&gt;&lt;TD&gt;1983&lt;/TD&gt;&lt;TD&gt;0.1540&lt;/TD&gt;&lt;TD&gt;-0.047&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;001003&lt;/TD&gt;&lt;TD&gt;1984&lt;/TD&gt;&lt;TD&gt;0.2150&lt;/TD&gt;&lt;TD&gt;0.191&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;001003&lt;/TD&gt;&lt;TD&gt;1985&lt;/TD&gt;&lt;TD&gt;1.0260&lt;/TD&gt;&lt;TD&gt;1.122&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;001003&lt;/TD&gt;&lt;TD&gt;1986&lt;/TD&gt;&lt;TD&gt;1.7720&lt;/TD&gt;&lt;TD&gt;2.333&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;001003&lt;/TD&gt;&lt;TD&gt;1987&lt;/TD&gt;&lt;TD&gt;2.3980&lt;/TD&gt;&lt;TD&gt;3.564&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;001003&lt;/TD&gt;&lt;TD&gt;1988&lt;/TD&gt;&lt;TD&gt;2.1080&lt;/TD&gt;&lt;TD&gt;3.890&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;001003&lt;/TD&gt;&lt;TD&gt;1989&lt;/TD&gt;&lt;TD&gt;1.0070&lt;/TD&gt;&lt;TD&gt;2.952&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;</description>
      <pubDate>Sat, 10 Nov 2018 02:14:32 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Computation-using-loop/m-p/511897#M137790</guid>
      <dc:creator>joon1</dc:creator>
      <dc:date>2018-11-10T02:14:32Z</dc:date>
    </item>
    <item>
      <title>Re: Computation using loop</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Computation-using-loop/m-p/511898#M137791</link>
      <description>Thank you so much again&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;However, be0 should remain in the first year when observation of a company&lt;BR /&gt;is available. If the code you provided is used, B0 is dropped and B1(be1)&lt;BR /&gt;is computed for the first year. B1 should be computed from 1984 for the&lt;BR /&gt;company with gvkey 1001 and 1983 for the company with gvkey 1003. Could you&lt;BR /&gt;please help me this part? Thank you again&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;BR /&gt;Obs GVKEY FYEAR XAD be11234567891011&lt;BR /&gt;001001 1983 1.3300 -3.325&lt;BR /&gt;001001 1984 1.8400 0.178&lt;BR /&gt;001001 1985 3.0390 3.128&lt;BR /&gt;001003 1982 0.1610 -0.403&lt;BR /&gt;001003 1983 0.1540 -0.047&lt;BR /&gt;001003 1984 0.2150 0.191&lt;BR /&gt;001003 1985 1.0260 1.122&lt;BR /&gt;001003 1986 1.7720 2.333&lt;BR /&gt;001003 1987 2.3980 3.564&lt;BR /&gt;001003 1988 2.1080 3.890&lt;BR /&gt;001003 1989 1.0070 2.952&lt;BR /&gt;</description>
      <pubDate>Sat, 10 Nov 2018 02:16:10 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Computation-using-loop/m-p/511898#M137791</guid>
      <dc:creator>joon1</dc:creator>
      <dc:date>2018-11-10T02:16:10Z</dc:date>
    </item>
    <item>
      <title>Re: Computation using loop</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Computation-using-loop/m-p/511902#M137792</link>
      <description>Post the exact results you want for the sample data you posted. My answer matches your initial post, as far as I can see. I see you’ve posted new data but again no indication of what’s input vs output or how this would align with your previous data.</description>
      <pubDate>Sat, 10 Nov 2018 02:47:24 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Computation-using-loop/m-p/511902#M137792</guid>
      <dc:creator>Reeza</dc:creator>
      <dc:date>2018-11-10T02:47:24Z</dc:date>
    </item>
    <item>
      <title>Re: Computation using loop</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Computation-using-loop/m-p/511903#M137793</link>
      <description>&lt;DIV&gt;Thank you so much for your prompt response&lt;/DIV&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;My actual data is as follows.&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;data have;&lt;BR /&gt;input year firm $&amp;nbsp;B0&amp;nbsp;A;&lt;BR /&gt;datalines;&lt;/DIV&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;DIV&gt;&lt;BR /&gt;1992&amp;nbsp; A 0.2 .&lt;BR /&gt;1993&amp;nbsp; A&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;25&lt;BR /&gt;1994&amp;nbsp; A&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;30&lt;BR /&gt;1995&amp;nbsp; A&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;40&lt;BR /&gt;2002&amp;nbsp; B 0.3 .&lt;BR /&gt;2003&amp;nbsp; B&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;50&lt;BR /&gt;2004&amp;nbsp; B&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;100&lt;BR /&gt;2005&amp;nbsp; B&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;150&lt;/DIV&gt;&lt;DIV&gt;&lt;BR /&gt;I need to start from B0 and compute Bt in each year.&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;B&lt;/DIV&gt;&lt;DIV&gt;&lt;DIV&gt;1992&amp;nbsp; B0=0.2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0.2&lt;/DIV&gt;&lt;DIV&gt;1993 B1=0.5*B0 + A(25)&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0.2*0.5+25=25.1&lt;/DIV&gt;&lt;DIV&gt;1994&amp;nbsp; B2=0.5*B1 + A(30)&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 25.1*0.5+30=42.55&lt;/DIV&gt;&lt;DIV&gt;1995&amp;nbsp; B3=0.5*B2 + A(40)&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 42.55*0.5+40=83.05&lt;/DIV&gt;&lt;DIV&gt;2002 &amp;nbsp;B0=0.3&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0.3&lt;/DIV&gt;&lt;DIV&gt;2003&amp;nbsp;&amp;nbsp;B1=0.5*B0 + A(50)&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0.3*0.5 +50=50.15&lt;/DIV&gt;&lt;DIV&gt;2004&amp;nbsp; B2=0.5*B1 + A(100)&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 50.15*0.5+100=125.075&lt;/DIV&gt;&lt;DIV&gt;2005 B3=0.5*B2 + A(150)&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 125.075*0.5+150=212.5375&lt;/DIV&gt;&lt;/DIV&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Sat, 10 Nov 2018 03:23:34 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Computation-using-loop/m-p/511903#M137793</guid>
      <dc:creator>joon1</dc:creator>
      <dc:date>2018-11-10T03:23:34Z</dc:date>
    </item>
    <item>
      <title>Re: Computation using loop</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Computation-using-loop/m-p/511906#M137794</link>
      <description>Those are the exact numbers in my output, is that not what you get? If not post the code and log.</description>
      <pubDate>Sat, 10 Nov 2018 03:37:27 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Computation-using-loop/m-p/511906#M137794</guid>
      <dc:creator>Reeza</dc:creator>
      <dc:date>2018-11-10T03:37:27Z</dc:date>
    </item>
    <item>
      <title>Re: Computation using loop</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Computation-using-loop/m-p/511938#M137808</link>
      <description>&lt;DIV&gt;&lt;DIV&gt;&lt;DIV&gt;Hi Reeza,&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;The following is the dataset.&lt;/DIV&gt;&lt;DIV&gt;Obs GVKEY FYEAR XAD be01234567891011 &lt;TABLE cellspacing="0" cellpadding="5"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;001001&lt;/TD&gt;&lt;TD&gt;1983&lt;/TD&gt;&lt;TD&gt;1.3300&lt;/TD&gt;&lt;TD&gt;-3.3250&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;001001&lt;/TD&gt;&lt;TD&gt;1984&lt;/TD&gt;&lt;TD&gt;1.8400&lt;/TD&gt;&lt;TD&gt;.&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;001001&lt;/TD&gt;&lt;TD&gt;1985&lt;/TD&gt;&lt;TD&gt;3.0390&lt;/TD&gt;&lt;TD&gt;.&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;001003&lt;/TD&gt;&lt;TD&gt;1982&lt;/TD&gt;&lt;TD&gt;0.1610&lt;/TD&gt;&lt;TD&gt;-0.4025&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;001003&lt;/TD&gt;&lt;TD&gt;1983&lt;/TD&gt;&lt;TD&gt;0.1540&lt;/TD&gt;&lt;TD&gt;.&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;001003&lt;/TD&gt;&lt;TD&gt;1984&lt;/TD&gt;&lt;TD&gt;0.2150&lt;/TD&gt;&lt;TD&gt;.&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;001003&lt;/TD&gt;&lt;TD&gt;1985&lt;/TD&gt;&lt;TD&gt;1.0260&lt;/TD&gt;&lt;TD&gt;.&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;001003&lt;/TD&gt;&lt;TD&gt;1986&lt;/TD&gt;&lt;TD&gt;1.7720&lt;/TD&gt;&lt;TD&gt;.&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;001003&lt;/TD&gt;&lt;TD&gt;1987&lt;/TD&gt;&lt;TD&gt;2.3980&lt;/TD&gt;&lt;TD&gt;.&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;001003&lt;/TD&gt;&lt;TD&gt;1988&lt;/TD&gt;&lt;TD&gt;2.1080&lt;/TD&gt;&lt;TD&gt;.&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;001003&lt;/TD&gt;&lt;TD&gt;1989&lt;/TD&gt;&lt;TD&gt;1.0070&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;The following is the program and log.&lt;/DIV&gt;&lt;DIV&gt;&lt;P&gt;167 data s7;&lt;/P&gt;&lt;P&gt;168 set s6;&lt;/P&gt;&lt;P&gt;169 by gvkey;&lt;/P&gt;&lt;P&gt;170 retain be1;&lt;/P&gt;&lt;P&gt;171 if not missing(be0) then be1=be0;&lt;/P&gt;&lt;P&gt;172 else be1 = be1*0.5 + xad;&lt;/P&gt;&lt;P&gt;173 drop=be0;&lt;/P&gt;&lt;P&gt;174 run;&lt;/P&gt;&lt;P&gt;NOTE: There were 78993 observations read from the data set WORK.S6.&lt;/P&gt;&lt;P&gt;NOTE: The data set WORK.S7 has 78993 observations and 25 variables.&lt;/P&gt;&lt;P&gt;NOTE: DATA statement used (Total process time):&lt;/P&gt;&lt;P&gt;real time 0.15 seconds&lt;/P&gt;&lt;P&gt;cpu time 0.04 seconds&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;The following is output.&lt;/P&gt;Obs GVKEY FYEAR XAD be11234567891011 &lt;TABLE cellspacing="0" cellpadding="5"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;001001&lt;/TD&gt;&lt;TD&gt;1983&lt;/TD&gt;&lt;TD&gt;1.3300&lt;/TD&gt;&lt;TD&gt;-3.325&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;001001&lt;/TD&gt;&lt;TD&gt;1984&lt;/TD&gt;&lt;TD&gt;1.8400&lt;/TD&gt;&lt;TD&gt;0.178&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;001001&lt;/TD&gt;&lt;TD&gt;1985&lt;/TD&gt;&lt;TD&gt;3.0390&lt;/TD&gt;&lt;TD&gt;3.128&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;001003&lt;/TD&gt;&lt;TD&gt;1982&lt;/TD&gt;&lt;TD&gt;0.1610&lt;/TD&gt;&lt;TD&gt;-0.403&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;001003&lt;/TD&gt;&lt;TD&gt;1983&lt;/TD&gt;&lt;TD&gt;0.1540&lt;/TD&gt;&lt;TD&gt;-0.047&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;001003&lt;/TD&gt;&lt;TD&gt;1984&lt;/TD&gt;&lt;TD&gt;0.2150&lt;/TD&gt;&lt;TD&gt;0.191&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;001003&lt;/TD&gt;&lt;TD&gt;1985&lt;/TD&gt;&lt;TD&gt;1.0260&lt;/TD&gt;&lt;TD&gt;1.122&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;001003&lt;/TD&gt;&lt;TD&gt;1986&lt;/TD&gt;&lt;TD&gt;1.7720&lt;/TD&gt;&lt;TD&gt;2.333&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;001003&lt;/TD&gt;&lt;TD&gt;1987&lt;/TD&gt;&lt;TD&gt;2.3980&lt;/TD&gt;&lt;TD&gt;3.564&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;001003&lt;/TD&gt;&lt;TD&gt;1988&lt;/TD&gt;&lt;TD&gt;2.1080&lt;/TD&gt;&lt;TD&gt;3.890&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;001003&lt;/TD&gt;&lt;TD&gt;1989&lt;/TD&gt;&lt;TD&gt;1.0070&lt;/TD&gt;&lt;TD&gt;2.952&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;/DIV&gt;&lt;/DIV&gt;&lt;DIV&gt;be0 should remain in 1983 for gvkey 1001 firm and in 1982 for gvkey 1003. be1 should be computed from 1984 for gvkey 1001 firm and 1983 for gvkey 1984 firm.&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;It will be appreciative if you can help me to fix this issue.&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;Sincerely,&lt;/DIV&gt;&lt;DIV&gt;Joon1&lt;/DIV&gt;</description>
      <pubDate>Sat, 10 Nov 2018 17:10:21 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Computation-using-loop/m-p/511938#M137808</guid>
      <dc:creator>joon1</dc:creator>
      <dc:date>2018-11-10T17:10:21Z</dc:date>
    </item>
    <item>
      <title>Re: Computation using loop</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Computation-using-loop/m-p/511955#M137815</link>
      <description>The numbers are correct then,just not in the right variables? If so You should be able to fix it yourself. There’s enough info there to try adjusting the IF condition. Also you should understand your code.</description>
      <pubDate>Sat, 10 Nov 2018 18:44:41 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Computation-using-loop/m-p/511955#M137815</guid>
      <dc:creator>Reeza</dc:creator>
      <dc:date>2018-11-10T18:44:41Z</dc:date>
    </item>
  </channel>
</rss>

