<?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: substract data from different rows in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/substract-data-from-different-rows/m-p/819650#M323536</link>
    <description>&lt;P&gt;because I don't want to subtract different group values.&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;the diff value not always 1 this is just dummy&amp;nbsp;&lt;/P&gt;</description>
    <pubDate>Wed, 22 Jun 2022 14:52:49 GMT</pubDate>
    <dc:creator>mona4u</dc:creator>
    <dc:date>2022-06-22T14:52:49Z</dc:date>
    <item>
      <title>substract data from different rows</title>
      <link>https://communities.sas.com/t5/SAS-Programming/substract-data-from-different-rows/m-p/819494#M323480</link>
      <description>&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Hi All,&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Below is an example of what I'm trying to achieve. My goal is to get the variable diff.&amp;nbsp;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;TABLE style="border-collapse: collapse; width: 200pt;" border="0" width="268" cellspacing="0" cellpadding="0"&gt;
&lt;TBODY&gt;
&lt;TR style="height: 14.4pt;"&gt;
&lt;TD width="67" height="19" class="xl63" style="height: 14.4pt; width: 50pt;"&gt;X&lt;/TD&gt;
&lt;TD width="67" class="xl63" style="border-left: none; width: 50pt;"&gt;Y&lt;/TD&gt;
&lt;TD width="67" class="xl63" style="border-left: none; width: 50pt;"&gt;LAG&lt;/TD&gt;
&lt;TD width="67" class="xl63" style="border-left: none; width: 50pt;"&gt;DIFF&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR style="height: 14.4pt;"&gt;
&lt;TD height="19" align="right" class="xl64" style="height: 14.4pt;"&gt;1&lt;/TD&gt;
&lt;TD&gt;A&lt;/TD&gt;
&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD class="xl65"&gt;&amp;nbsp;&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR style="height: 14.4pt;"&gt;
&lt;TD height="19" align="right" class="xl64" style="height: 14.4pt;"&gt;2&lt;/TD&gt;
&lt;TD&gt;A&lt;/TD&gt;
&lt;TD align="right"&gt;1&lt;/TD&gt;
&lt;TD align="right" class="xl65"&gt;1&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR style="height: 14.4pt;"&gt;
&lt;TD height="19" align="right" class="xl64" style="height: 14.4pt;"&gt;3&lt;/TD&gt;
&lt;TD&gt;A&lt;/TD&gt;
&lt;TD align="right"&gt;2&lt;/TD&gt;
&lt;TD align="right" class="xl65"&gt;1&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR style="height: 14.4pt;"&gt;
&lt;TD height="19" align="right" class="xl64" style="height: 14.4pt;"&gt;4&lt;/TD&gt;
&lt;TD&gt;A&lt;/TD&gt;
&lt;TD align="right"&gt;3&lt;/TD&gt;
&lt;TD align="right" class="xl65"&gt;1&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR style="height: 14.4pt;"&gt;
&lt;TD height="19" align="right" class="xl64" style="height: 14.4pt;"&gt;5&lt;/TD&gt;
&lt;TD&gt;A&lt;/TD&gt;
&lt;TD align="right"&gt;4&lt;/TD&gt;
&lt;TD align="right" class="xl65"&gt;1&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR style="height: 14.4pt;"&gt;
&lt;TD height="19" align="right" class="xl64" style="height: 14.4pt;"&gt;1&lt;/TD&gt;
&lt;TD&gt;B&lt;/TD&gt;
&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD class="xl65"&gt;&amp;nbsp;&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR style="height: 14.4pt;"&gt;
&lt;TD height="19" align="right" class="xl64" style="height: 14.4pt;"&gt;2&lt;/TD&gt;
&lt;TD&gt;B&lt;/TD&gt;
&lt;TD align="right"&gt;1&lt;/TD&gt;
&lt;TD align="right" class="xl65"&gt;1&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR style="height: 14.4pt;"&gt;
&lt;TD height="19" align="right" class="xl64" style="height: 14.4pt;"&gt;3&lt;/TD&gt;
&lt;TD&gt;B&lt;/TD&gt;
&lt;TD align="right"&gt;2&lt;/TD&gt;
&lt;TD align="right" class="xl65"&gt;1&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR style="height: 14.4pt;"&gt;
&lt;TD height="19" align="right" class="xl64" style="height: 14.4pt;"&gt;4&lt;/TD&gt;
&lt;TD&gt;B&lt;/TD&gt;
&lt;TD align="right"&gt;3&lt;/TD&gt;
&lt;TD align="right" class="xl65"&gt;1&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR style="height: 14.4pt;"&gt;
&lt;TD height="19" align="right" class="xl66" style="height: 14.4pt;"&gt;5&lt;/TD&gt;
&lt;TD class="xl67"&gt;B&lt;/TD&gt;
&lt;TD align="right" class="xl67"&gt;4&lt;/TD&gt;
&lt;TD align="right" class="xl68"&gt;1&lt;/TD&gt;
&lt;/TR&gt;
&lt;/TBODY&gt;
&lt;/TABLE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Mona&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 22 Jun 2022 01:33:15 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/substract-data-from-different-rows/m-p/819494#M323480</guid>
      <dc:creator>mona4u</dc:creator>
      <dc:date>2022-06-22T01:33:15Z</dc:date>
    </item>
    <item>
      <title>Re: substract data from different rows</title>
      <link>https://communities.sas.com/t5/SAS-Programming/substract-data-from-different-rows/m-p/819507#M323487</link>
      <description>&lt;P&gt;Why is the first diff 1 when there's no previous value?&lt;BR /&gt;If it's always 1 why is this needed? It would be good to include a use case that illustrates a different scenario.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;I suspect this is what you're after?&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data want;
set have;
by y;
_dif = dif(x);
_lag = lag(x);
if first.y then call missing(_dif, _lag);
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/134228"&gt;@mona4u&lt;/a&gt;&amp;nbsp;wrote:&lt;BR /&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Hi All,&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Below is an example of what I'm trying to achieve. My goal is to get the variable diff.&amp;nbsp;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;TABLE style="border-collapse: collapse; width: 200pt;" border="0" width="268" cellspacing="0" cellpadding="0"&gt;
&lt;TBODY&gt;
&lt;TR style="height: 14.4pt;"&gt;
&lt;TD width="67" height="19" class="xl63" style="height: 14.4pt; width: 50pt;"&gt;X&lt;/TD&gt;
&lt;TD width="67" class="xl63" style="border-left: none; width: 50pt;"&gt;Y&lt;/TD&gt;
&lt;TD width="67" class="xl63" style="border-left: none; width: 50pt;"&gt;LAG&lt;/TD&gt;
&lt;TD width="67" class="xl63" style="border-left: none; width: 50pt;"&gt;DIFF&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR style="height: 14.4pt;"&gt;
&lt;TD height="19" align="right" class="xl64" style="height: 14.4pt;"&gt;1&lt;/TD&gt;
&lt;TD&gt;A&lt;/TD&gt;
&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD class="xl65"&gt;&amp;nbsp;&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR style="height: 14.4pt;"&gt;
&lt;TD height="19" align="right" class="xl64" style="height: 14.4pt;"&gt;2&lt;/TD&gt;
&lt;TD&gt;A&lt;/TD&gt;
&lt;TD align="right"&gt;1&lt;/TD&gt;
&lt;TD align="right" class="xl65"&gt;1&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR style="height: 14.4pt;"&gt;
&lt;TD height="19" align="right" class="xl64" style="height: 14.4pt;"&gt;3&lt;/TD&gt;
&lt;TD&gt;A&lt;/TD&gt;
&lt;TD align="right"&gt;2&lt;/TD&gt;
&lt;TD align="right" class="xl65"&gt;1&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR style="height: 14.4pt;"&gt;
&lt;TD height="19" align="right" class="xl64" style="height: 14.4pt;"&gt;4&lt;/TD&gt;
&lt;TD&gt;A&lt;/TD&gt;
&lt;TD align="right"&gt;3&lt;/TD&gt;
&lt;TD align="right" class="xl65"&gt;1&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR style="height: 14.4pt;"&gt;
&lt;TD height="19" align="right" class="xl64" style="height: 14.4pt;"&gt;5&lt;/TD&gt;
&lt;TD&gt;A&lt;/TD&gt;
&lt;TD align="right"&gt;4&lt;/TD&gt;
&lt;TD align="right" class="xl65"&gt;1&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR style="height: 14.4pt;"&gt;
&lt;TD height="19" align="right" class="xl64" style="height: 14.4pt;"&gt;1&lt;/TD&gt;
&lt;TD&gt;B&lt;/TD&gt;
&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD class="xl65"&gt;&amp;nbsp;&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR style="height: 14.4pt;"&gt;
&lt;TD height="19" align="right" class="xl64" style="height: 14.4pt;"&gt;2&lt;/TD&gt;
&lt;TD&gt;B&lt;/TD&gt;
&lt;TD align="right"&gt;1&lt;/TD&gt;
&lt;TD align="right" class="xl65"&gt;1&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR style="height: 14.4pt;"&gt;
&lt;TD height="19" align="right" class="xl64" style="height: 14.4pt;"&gt;3&lt;/TD&gt;
&lt;TD&gt;B&lt;/TD&gt;
&lt;TD align="right"&gt;2&lt;/TD&gt;
&lt;TD align="right" class="xl65"&gt;1&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR style="height: 14.4pt;"&gt;
&lt;TD height="19" align="right" class="xl64" style="height: 14.4pt;"&gt;4&lt;/TD&gt;
&lt;TD&gt;B&lt;/TD&gt;
&lt;TD align="right"&gt;3&lt;/TD&gt;
&lt;TD align="right" class="xl65"&gt;1&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR style="height: 14.4pt;"&gt;
&lt;TD height="19" align="right" class="xl66" style="height: 14.4pt;"&gt;5&lt;/TD&gt;
&lt;TD class="xl67"&gt;B&lt;/TD&gt;
&lt;TD align="right" class="xl67"&gt;4&lt;/TD&gt;
&lt;TD align="right" class="xl68"&gt;1&lt;/TD&gt;
&lt;/TR&gt;
&lt;/TBODY&gt;
&lt;/TABLE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Mona&amp;nbsp;&lt;/P&gt;
&lt;HR /&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 22 Jun 2022 02:25:15 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/substract-data-from-different-rows/m-p/819507#M323487</guid>
      <dc:creator>Reeza</dc:creator>
      <dc:date>2022-06-22T02:25:15Z</dc:date>
    </item>
    <item>
      <title>Re: substract data from different rows</title>
      <link>https://communities.sas.com/t5/SAS-Programming/substract-data-from-different-rows/m-p/819650#M323536</link>
      <description>&lt;P&gt;because I don't want to subtract different group values.&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;the diff value not always 1 this is just dummy&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 22 Jun 2022 14:52:49 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/substract-data-from-different-rows/m-p/819650#M323536</guid>
      <dc:creator>mona4u</dc:creator>
      <dc:date>2022-06-22T14:52:49Z</dc:date>
    </item>
    <item>
      <title>Re: substract data from different rows</title>
      <link>https://communities.sas.com/t5/SAS-Programming/substract-data-from-different-rows/m-p/819653#M323539</link>
      <description>&lt;P&gt;Did you try the code posted?&lt;/P&gt;
&lt;P&gt;I'm assuming groups are defined by Y as you never stated. I'm assuming you want the lag of the variable X, also not specifically stated.&amp;nbsp;&lt;/P&gt;
&lt;P&gt;If the above is true the answer should be correct. Use the DIF/LAG function and reset at the first of each group.&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 22 Jun 2022 15:04:25 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/substract-data-from-different-rows/m-p/819653#M323539</guid>
      <dc:creator>Reeza</dc:creator>
      <dc:date>2022-06-22T15:04:25Z</dc:date>
    </item>
  </channel>
</rss>

