<?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: sas base question in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/Select-increasing-values-over-time/m-p/308896#M66357</link>
    <description>&lt;P&gt;First make sure that your "month" variable is as SAS date valued variable.&lt;/P&gt;
&lt;P&gt;Sort by product and month.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Proc data=have;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp; by product;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp; model value= month;&lt;/P&gt;
&lt;P&gt;run;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;If the slope (parameter estimate for MONTH variable)&amp;nbsp;reported is greater than 0 the value&amp;nbsp;is increasing.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
    <pubDate>Wed, 02 Nov 2016 21:41:59 GMT</pubDate>
    <dc:creator>ballardw</dc:creator>
    <dc:date>2016-11-02T21:41:59Z</dc:date>
    <item>
      <title>Select increasing values over time</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Select-increasing-values-over-time/m-p/308887#M66353</link>
      <description>&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Hi, I have data like the below. I need to check if the value field is increasing across months by product. I created the diff field so that if that value is positive in all observations in a group then its increasing. &amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Please suggest how I can program to output only those products that are increasing in value over the months.&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;TABLE style="border-collapse: collapse; width: 192pt;" width="256" cellspacing="0" cellpadding="0" border="0"&gt;&lt;COLGROUP&gt;&lt;COL style="width: 48pt;" width="64" span="4" /&gt; &lt;/COLGROUP&gt;
&lt;TBODY&gt;
&lt;TR style="height: 15.0pt;"&gt;
&lt;TD class="xl65" style="height: 15.0pt; width: 48pt;" width="64" height="20"&gt;Product&lt;/TD&gt;
&lt;TD class="xl65" style="width: 48pt;" width="64"&gt;month&lt;/TD&gt;
&lt;TD class="xl65" style="width: 48pt;" width="64"&gt;value&lt;/TD&gt;
&lt;TD class="xl65" style="width: 48pt;" width="64"&gt;diff&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR style="height: 15.0pt;"&gt;
&lt;TD style="height: 15.0pt;" height="20"&gt;x&lt;/TD&gt;
&lt;TD&gt;2016/04&lt;/TD&gt;
&lt;TD align="right"&gt;104.94&lt;/TD&gt;
&lt;TD align="right"&gt;0&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR style="height: 15.0pt;"&gt;
&lt;TD style="height: 15.0pt;" height="20"&gt;x&lt;/TD&gt;
&lt;TD&gt;2016/05&lt;/TD&gt;
&lt;TD align="right"&gt;91.12&lt;/TD&gt;
&lt;TD align="right"&gt;-14&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR style="height: 15.0pt;"&gt;
&lt;TD style="height: 15.0pt;" height="20"&gt;x&lt;/TD&gt;
&lt;TD&gt;2016/06&lt;/TD&gt;
&lt;TD align="right"&gt;98&lt;/TD&gt;
&lt;TD align="right"&gt;7&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR style="height: 15.0pt;"&gt;
&lt;TD style="height: 15.0pt;" height="20"&gt;x&lt;/TD&gt;
&lt;TD&gt;2016/07&lt;/TD&gt;
&lt;TD align="right"&gt;117&lt;/TD&gt;
&lt;TD align="right"&gt;19&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR style="height: 15.0pt;"&gt;
&lt;TD style="height: 15.0pt;" height="20"&gt;x&lt;/TD&gt;
&lt;TD&gt;2016/08&lt;/TD&gt;
&lt;TD align="right"&gt;235.67&lt;/TD&gt;
&lt;TD align="right"&gt;119&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR style="height: 15.0pt;"&gt;
&lt;TD style="height: 15.0pt;" height="20"&gt;x&lt;/TD&gt;
&lt;TD&gt;2016/09&lt;/TD&gt;
&lt;TD align="right"&gt;118.89&lt;/TD&gt;
&lt;TD align="right"&gt;-117&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR style="height: 15.0pt;"&gt;
&lt;TD style="height: 15.0pt;" height="20"&gt;x&lt;/TD&gt;
&lt;TD&gt;2016/10&lt;/TD&gt;
&lt;TD align="right"&gt;136.67&lt;/TD&gt;
&lt;TD align="right"&gt;18&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR style="height: 15.0pt;"&gt;
&lt;TD style="height: 15.0pt;" height="20"&gt;y&lt;/TD&gt;
&lt;TD&gt;2016/04&lt;/TD&gt;
&lt;TD align="right"&gt;1.19&lt;/TD&gt;
&lt;TD align="right"&gt;0&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR style="height: 15.0pt;"&gt;
&lt;TD style="height: 15.0pt;" height="20"&gt;y&lt;/TD&gt;
&lt;TD&gt;2016/05&lt;/TD&gt;
&lt;TD align="right"&gt;1&lt;/TD&gt;
&lt;TD align="right"&gt;0&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR style="height: 15.0pt;"&gt;
&lt;TD style="height: 15.0pt;" height="20"&gt;y&lt;/TD&gt;
&lt;TD&gt;2016/06&lt;/TD&gt;
&lt;TD align="right"&gt;1.43&lt;/TD&gt;
&lt;TD align="right"&gt;0&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR style="height: 15.0pt;"&gt;
&lt;TD style="height: 15.0pt;" height="20"&gt;y&lt;/TD&gt;
&lt;TD&gt;2016/07&lt;/TD&gt;
&lt;TD align="right"&gt;0.89&lt;/TD&gt;
&lt;TD align="right"&gt;-1&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR style="height: 15.0pt;"&gt;
&lt;TD style="height: 15.0pt;" height="20"&gt;y&lt;/TD&gt;
&lt;TD&gt;2016/08&lt;/TD&gt;
&lt;TD align="right"&gt;0.78&lt;/TD&gt;
&lt;TD align="right"&gt;0&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR style="height: 15.0pt;"&gt;
&lt;TD style="height: 15.0pt;" height="20"&gt;y&lt;/TD&gt;
&lt;TD&gt;2016/09&lt;/TD&gt;
&lt;TD align="right"&gt;1.3&lt;/TD&gt;
&lt;TD align="right"&gt;1&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR style="height: 15.0pt;"&gt;
&lt;TD style="height: 15.0pt;" height="20"&gt;y&lt;/TD&gt;
&lt;TD&gt;2016/10&lt;/TD&gt;
&lt;TD align="right"&gt;3.5&lt;/TD&gt;
&lt;TD align="right"&gt;2&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR style="height: 15.0pt;"&gt;
&lt;TD style="height: 15.0pt;" height="20"&gt;z&lt;/TD&gt;
&lt;TD&gt;2016/06&lt;/TD&gt;
&lt;TD align="right"&gt;1&lt;/TD&gt;
&lt;TD align="right"&gt;0&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR style="height: 15.0pt;"&gt;
&lt;TD style="height: 15.0pt;" height="20"&gt;z&lt;/TD&gt;
&lt;TD&gt;2016/10&lt;/TD&gt;
&lt;TD align="right"&gt;2&lt;/TD&gt;
&lt;TD align="right"&gt;1&lt;/TD&gt;
&lt;/TR&gt;
&lt;/TBODY&gt;
&lt;/TABLE&gt;</description>
      <pubDate>Fri, 04 Nov 2016 08:17:45 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Select-increasing-values-over-time/m-p/308887#M66353</guid>
      <dc:creator>helloSAS</dc:creator>
      <dc:date>2016-11-04T08:17:45Z</dc:date>
    </item>
    <item>
      <title>Re: sas base question</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Select-increasing-values-over-time/m-p/308889#M66354</link>
      <description>&lt;P&gt;It's not clear exactly what you want as output. Based on your input what's your expected output.&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 02 Nov 2016 21:28:38 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Select-increasing-values-over-time/m-p/308889#M66354</guid>
      <dc:creator>Reeza</dc:creator>
      <dc:date>2016-11-02T21:28:38Z</dc:date>
    </item>
    <item>
      <title>Re: sas base question</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Select-increasing-values-over-time/m-p/308895#M66356</link>
      <description>&lt;P&gt;If I understand you correctly, you want to output the observations at which diff &amp;gt; 0 ?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;In that case simply use a subsetting if statement?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;   data want;
      set have;
      if diff &amp;gt; 0;
   run;&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 02 Nov 2016 21:39:50 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Select-increasing-values-over-time/m-p/308895#M66356</guid>
      <dc:creator>PeterClemmensen</dc:creator>
      <dc:date>2016-11-02T21:39:50Z</dc:date>
    </item>
    <item>
      <title>Re: sas base question</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Select-increasing-values-over-time/m-p/308896#M66357</link>
      <description>&lt;P&gt;First make sure that your "month" variable is as SAS date valued variable.&lt;/P&gt;
&lt;P&gt;Sort by product and month.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Proc data=have;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp; by product;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp; model value= month;&lt;/P&gt;
&lt;P&gt;run;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;If the slope (parameter estimate for MONTH variable)&amp;nbsp;reported is greater than 0 the value&amp;nbsp;is increasing.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 02 Nov 2016 21:41:59 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Select-increasing-values-over-time/m-p/308896#M66357</guid>
      <dc:creator>ballardw</dc:creator>
      <dc:date>2016-11-02T21:41:59Z</dc:date>
    </item>
    <item>
      <title>Re: sas base question</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Select-increasing-values-over-time/m-p/308907#M66362</link>
      <description>&lt;P&gt;It's not clear whether DIFF=0 is acceptable or not, so I'll treat it as increasing. &amp;nbsp;It's takes a mildly more complex program to treat it as decreasing (because you need to ignore DIFF on the first observation for each PRODUCT).&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;data want;&lt;/P&gt;
&lt;P&gt;keep_me = 'Y';&lt;/P&gt;
&lt;P&gt;do until (last.product);&lt;/P&gt;
&lt;P&gt;&amp;nbsp; &amp;nbsp;set have;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; &amp;nbsp;by product;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; &amp;nbsp;if diff &amp;lt; 0 then keep_me='N';&lt;/P&gt;
&lt;P&gt;end;&lt;/P&gt;
&lt;P&gt;do until (last.product);&lt;/P&gt;
&lt;P&gt;&amp;nbsp; &amp;nbsp;set have;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; &amp;nbsp;by product;&lt;/P&gt;
&lt;P&gt;&amp;nbsp; &amp;nbsp;if keep_me='Y' then output;&lt;/P&gt;
&lt;P&gt;end;&lt;/P&gt;
&lt;P&gt;drop keep_me;&lt;/P&gt;
&lt;P&gt;run;&lt;/P&gt;</description>
      <pubDate>Wed, 02 Nov 2016 22:48:19 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Select-increasing-values-over-time/m-p/308907#M66362</guid>
      <dc:creator>Astounding</dc:creator>
      <dc:date>2016-11-02T22:48:19Z</dc:date>
    </item>
    <item>
      <title>Re: sas base question</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Select-increasing-values-over-time/m-p/308954#M66386</link>
      <description>&lt;P&gt;I guess you'd need something like this:&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data have;
input product $ month $ value diff;
cards;
x 	2016/04 	104.94 	0
x 	2016/05 	91.12 	-14
x 	2016/06 	98 	7
x 	2016/07 	117 	19
x 	2016/08 	235.67 	119
x 	2016/09 	118.89 	-117
x 	2016/10 	136.67 	18
y 	2016/04 	1.19 	0
y 	2016/05 	1 	0
y 	2016/06 	1.43 	0
y 	2016/07 	0.89 	-1
y 	2016/08 	0.78 	0
y 	2016/09 	1.3 	1
y 	2016/10 	3.5 	2
z 	2016/06 	1 	0
z 	2016/10 	2 	1
;
run;

data int (keep=product);
set have;
retain flag;
by product;
if first.product then flag = 1;
if diff &amp;lt; 0 then flag = 0;
if last.product and flag then output;
run;

data want;
merge
  have
  int (in=increasing)
;
by product;
if increasing;
run;
&lt;/CODE&gt;&lt;/PRE&gt;</description>
      <pubDate>Thu, 03 Nov 2016 09:10:14 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Select-increasing-values-over-time/m-p/308954#M66386</guid>
      <dc:creator>Kurt_Bremser</dc:creator>
      <dc:date>2016-11-03T09:10:14Z</dc:date>
    </item>
  </channel>
</rss>

