<?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 subtraction on group by in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/subtraction-on-group-by/m-p/179755#M34339</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I have below input dataset, variables C1, C2, N1.&lt;/P&gt;&lt;P&gt;C1&amp;nbsp; C2&amp;nbsp; N1&lt;BR /&gt;--------------&lt;BR /&gt;R1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 10&lt;BR /&gt;R1&amp;nbsp; S1&amp;nbsp;&amp;nbsp; 1&lt;BR /&gt;R1&amp;nbsp; S2&amp;nbsp;&amp;nbsp; 2&lt;BR /&gt;R2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 20&lt;BR /&gt;R2&amp;nbsp; S5&amp;nbsp;&amp;nbsp; 4&lt;BR /&gt;R2&amp;nbsp; S9&amp;nbsp;&amp;nbsp; 1&lt;/P&gt;&lt;P&gt;R3&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 9&lt;/P&gt;&lt;P&gt;R4 S4&amp;nbsp;&amp;nbsp; 1&lt;/P&gt;&lt;P&gt;Output would be in below format(subtraction results would be on R1 and R2 record where C2 is missing and keep all records in below output format), Can u suggested with either proc or datastep&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;Output:&lt;/P&gt;&lt;P&gt;C1&amp;nbsp; C2&amp;nbsp; N1&lt;BR /&gt;-------------&lt;BR /&gt;R1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 7&lt;BR /&gt;R1&amp;nbsp; S1&amp;nbsp;&amp;nbsp; 1&lt;BR /&gt;R1&amp;nbsp; S2&amp;nbsp;&amp;nbsp; 2&lt;BR /&gt;R2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 15&lt;BR /&gt;R2&amp;nbsp; S5&amp;nbsp;&amp;nbsp; 4&lt;BR /&gt;R2&amp;nbsp; S9&amp;nbsp;&amp;nbsp; 1&lt;/P&gt;&lt;P&gt;R3&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 9&lt;/P&gt;&lt;P&gt;R4 S4&amp;nbsp;&amp;nbsp; 1&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Sat, 31 May 2014 20:12:58 GMT</pubDate>
    <dc:creator>sunilreddy</dc:creator>
    <dc:date>2014-05-31T20:12:58Z</dc:date>
    <item>
      <title>subtraction on group by</title>
      <link>https://communities.sas.com/t5/SAS-Programming/subtraction-on-group-by/m-p/179755#M34339</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I have below input dataset, variables C1, C2, N1.&lt;/P&gt;&lt;P&gt;C1&amp;nbsp; C2&amp;nbsp; N1&lt;BR /&gt;--------------&lt;BR /&gt;R1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 10&lt;BR /&gt;R1&amp;nbsp; S1&amp;nbsp;&amp;nbsp; 1&lt;BR /&gt;R1&amp;nbsp; S2&amp;nbsp;&amp;nbsp; 2&lt;BR /&gt;R2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 20&lt;BR /&gt;R2&amp;nbsp; S5&amp;nbsp;&amp;nbsp; 4&lt;BR /&gt;R2&amp;nbsp; S9&amp;nbsp;&amp;nbsp; 1&lt;/P&gt;&lt;P&gt;R3&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 9&lt;/P&gt;&lt;P&gt;R4 S4&amp;nbsp;&amp;nbsp; 1&lt;/P&gt;&lt;P&gt;Output would be in below format(subtraction results would be on R1 and R2 record where C2 is missing and keep all records in below output format), Can u suggested with either proc or datastep&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;Output:&lt;/P&gt;&lt;P&gt;C1&amp;nbsp; C2&amp;nbsp; N1&lt;BR /&gt;-------------&lt;BR /&gt;R1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 7&lt;BR /&gt;R1&amp;nbsp; S1&amp;nbsp;&amp;nbsp; 1&lt;BR /&gt;R1&amp;nbsp; S2&amp;nbsp;&amp;nbsp; 2&lt;BR /&gt;R2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 15&lt;BR /&gt;R2&amp;nbsp; S5&amp;nbsp;&amp;nbsp; 4&lt;BR /&gt;R2&amp;nbsp; S9&amp;nbsp;&amp;nbsp; 1&lt;/P&gt;&lt;P&gt;R3&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 9&lt;/P&gt;&lt;P&gt;R4 S4&amp;nbsp;&amp;nbsp; 1&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 31 May 2014 20:12:58 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/subtraction-on-group-by/m-p/179755#M34339</guid>
      <dc:creator>sunilreddy</dc:creator>
      <dc:date>2014-05-31T20:12:58Z</dc:date>
    </item>
    <item>
      <title>Re: subtraction on group by</title>
      <link>https://communities.sas.com/t5/SAS-Programming/subtraction-on-group-by/m-p/179756#M34340</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;data have;&lt;/P&gt;&lt;P&gt;infile cards truncover;&lt;/P&gt;&lt;P&gt;input C1 $ C2 $&amp;nbsp; N1;&lt;/P&gt;&lt;P&gt;cards;&lt;/P&gt;&lt;P&gt;R1&amp;nbsp;&amp;nbsp; .&amp;nbsp;&amp;nbsp;&amp;nbsp; 10&lt;/P&gt;&lt;P&gt;R1&amp;nbsp; S1&amp;nbsp;&amp;nbsp; 1&lt;/P&gt;&lt;P&gt;R1&amp;nbsp; S2&amp;nbsp;&amp;nbsp; 2&lt;/P&gt;&lt;P&gt;R2&amp;nbsp;&amp;nbsp; .&amp;nbsp;&amp;nbsp;&amp;nbsp; 20&lt;/P&gt;&lt;P&gt;R2&amp;nbsp; S5&amp;nbsp;&amp;nbsp; 4&lt;/P&gt;&lt;P&gt;R2&amp;nbsp; S9&amp;nbsp;&amp;nbsp; 1&lt;/P&gt;&lt;P&gt;;&lt;/P&gt;&lt;P&gt;run;&lt;/P&gt;&lt;P&gt;data want;&lt;/P&gt;&lt;P&gt;&amp;nbsp; do i=1 by 1 until(last.c1);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; set have;&lt;/P&gt;&lt;P&gt;&amp;nbsp; by c1;&lt;/P&gt;&lt;P&gt;&amp;nbsp; retain amount;&lt;/P&gt;&lt;P&gt;&amp;nbsp; if not first.c1 then amount+n1;&lt;/P&gt;&lt;P&gt;&amp;nbsp; end;&lt;/P&gt;&lt;P&gt;&amp;nbsp; do i=1 by 1 until (last.c1);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; set have;&lt;/P&gt;&lt;P&gt;&amp;nbsp; by c1;&lt;/P&gt;&lt;P&gt;&amp;nbsp; if first.c1 then n1=n1-amount;&lt;/P&gt;&lt;P&gt;&amp;nbsp; output;&lt;/P&gt;&lt;P&gt;&amp;nbsp; end;&lt;/P&gt;&lt;P&gt;&amp;nbsp; call missing(amount);&lt;/P&gt;&lt;P&gt;&amp;nbsp; drop i amount;&lt;/P&gt;&lt;P&gt;run;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 31 May 2014 21:39:37 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/subtraction-on-group-by/m-p/179756#M34340</guid>
      <dc:creator>slchen</dc:creator>
      <dc:date>2014-05-31T21:39:37Z</dc:date>
    </item>
    <item>
      <title>Re: subtraction on group by</title>
      <link>https://communities.sas.com/t5/SAS-Programming/subtraction-on-group-by/m-p/179757#M34341</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Try this code for the desired output.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Naeem&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;proc sql;&lt;/P&gt;&lt;P&gt;select a.c1,a.c2,case when a.c2 is null and a.c1 in ('R1','R2') then N1-b.tot else N1 end as N1&lt;/P&gt;&lt;P&gt;from have a left join (select C1,sum(N1) as tot from have where c1 in ('R1','R2') and c2 is not null group by C1) b&lt;/P&gt;&lt;P&gt;on a.C1=b.C1&lt;/P&gt;&lt;P&gt;order by a.c1,a.c2,a.n1;&lt;/P&gt;&lt;P&gt;quit;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 31 May 2014 23:38:04 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/subtraction-on-group-by/m-p/179757#M34341</guid>
      <dc:creator>stat_sas</dc:creator>
      <dc:date>2014-05-31T23:38:04Z</dc:date>
    </item>
    <item>
      <title>Re: subtraction on group by</title>
      <link>https://communities.sas.com/t5/SAS-Programming/subtraction-on-group-by/m-p/179758#M34342</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Naeem,&lt;/P&gt;&lt;P&gt;Your code is ONLY good if OP's problem is an AS-IS assignment instead of a simplified example implicating a more complicated real life scenario. Here is an Proc SQL approach aiming for broader applications per OP's rules:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&lt;SPAN style="color: navy; background: white; font-size: 10.0pt; font-family: 'Courier New';"&gt;&lt;STRONG&gt;data&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt; have;&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: blue; background: white;"&gt;input&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt; C1 :$ C2 :$ N1;&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: blue; background: white;"&gt;cards&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt;;&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: #FFFFC0;"&gt;R1&amp;nbsp;&amp;nbsp; . 10&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: #FFFFC0;"&gt;R1&amp;nbsp; S1&amp;nbsp;&amp;nbsp; 1&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: #FFFFC0;"&gt;R1&amp;nbsp; S2&amp;nbsp;&amp;nbsp; 2&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: #FFFFC0;"&gt;R2&amp;nbsp;&amp;nbsp;&amp;nbsp; . 20&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: #FFFFC0;"&gt;R2&amp;nbsp; S5&amp;nbsp;&amp;nbsp; 4&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: #FFFFC0;"&gt;R2&amp;nbsp; S9&amp;nbsp;&amp;nbsp; 1&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: #FFFFC0;"&gt;R3&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; . 9&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: #FFFFC0;"&gt;R3&amp;nbsp; S10&amp;nbsp; 2&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: #FFFFC0;"&gt;R4 S4&amp;nbsp;&amp;nbsp; 1&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt;;&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&lt;SPAN style="color: navy; background: white; font-size: 10.0pt; font-family: 'Courier New';"&gt;&lt;STRONG&gt;proc&lt;/STRONG&gt;&lt;/SPAN&gt; &lt;SPAN style="color: navy; background: white; font-size: 10.0pt; font-family: 'Courier New';"&gt;&lt;STRONG&gt;sql&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt;;&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&amp;nbsp; &lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: blue; background: white;"&gt;select&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt; c1, c2, &lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: blue; background: white;"&gt;case&lt;/SPAN&gt; &lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: blue; background: white;"&gt;when&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt; missing (c2) &lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: blue; background: white;"&gt;then&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt; (&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: blue; background: white;"&gt;select&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt; a.n1-coalesce(sum(n1),&lt;/SPAN&gt;&lt;SPAN style="color: teal; background: white; font-size: 10.0pt; font-family: 'Courier New';"&gt;&lt;STRONG&gt;0&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt;) &lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: blue; background: white;"&gt;from&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt; have &lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: blue; background: white;"&gt;where&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt; not missing(c2) &lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: blue; background: white;"&gt;and&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt; a.c1=c1 ) &lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: blue; background: white;"&gt;else&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt; n1 &lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: blue; background: white;"&gt;end&lt;/SPAN&gt; &lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: blue; background: white;"&gt;as&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt; n1&lt;/SPAN&gt;&lt;/P&gt;&lt;P style="margin-bottom: .0001pt;"&gt;&amp;nbsp; &lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: blue; background: white;"&gt;from&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt; have a;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: navy; background: white; font-size: 10.0pt; font-family: 'Courier New';"&gt;&lt;STRONG&gt;quit&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt;;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt;Regards,&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt;Haikuo&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sun, 01 Jun 2014 03:37:41 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/subtraction-on-group-by/m-p/179758#M34342</guid>
      <dc:creator>Haikuo</dc:creator>
      <dc:date>2014-06-01T03:37:41Z</dc:date>
    </item>
    <item>
      <title>Re: subtraction on group by</title>
      <link>https://communities.sas.com/t5/SAS-Programming/subtraction-on-group-by/m-p/179759#M34343</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Another way is to get the sum of non-missing value and merge it back to subtract it . Here is DOW skill.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE&gt;data have;
input C1 :$ C2 :$ N1;
cards;
R1&amp;nbsp;&amp;nbsp; . 10
R1&amp;nbsp; S1&amp;nbsp;&amp;nbsp; 1
R1&amp;nbsp; S2&amp;nbsp;&amp;nbsp; 2
R2&amp;nbsp;&amp;nbsp;&amp;nbsp; . 20
R2&amp;nbsp; S5&amp;nbsp;&amp;nbsp; 4
R2&amp;nbsp; S9&amp;nbsp;&amp;nbsp; 1
R3&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; . 9
R4 S4&amp;nbsp;&amp;nbsp; 1
;
run;
data want;
 sum=0;
 do until(last.c1);
&amp;nbsp; set have;
&amp;nbsp; by c1;
&amp;nbsp; if not missing(c2) then sum+n1;
 end;
&amp;nbsp; do until(last.c1);
&amp;nbsp; set have;
&amp;nbsp; by c1;
&amp;nbsp; if&amp;nbsp; missing(c2) then n1=n1-sum;
&amp;nbsp; output;
 end;
 drop sum;
run;
&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Xia Keshan&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sun, 01 Jun 2014 04:21:22 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/subtraction-on-group-by/m-p/179759#M34343</guid>
      <dc:creator>Ksharp</dc:creator>
      <dc:date>2014-06-01T04:21:22Z</dc:date>
    </item>
  </channel>
</rss>

