<?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: Calculate max value within groups, when a condition is not met, then add max value as new condit in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/Calculate-max-value-within-groups-when-a-condition-is-not-met/m-p/749671#M235641</link>
    <description>Perfect! Thanks you.</description>
    <pubDate>Tue, 22 Jun 2021 19:00:01 GMT</pubDate>
    <dc:creator>Excellrec</dc:creator>
    <dc:date>2021-06-22T19:00:01Z</dc:date>
    <item>
      <title>Calculate max value within groups, when a condition is not met, then add max value as new condition?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Calculate-max-value-within-groups-when-a-condition-is-not-met/m-p/749617#M235601</link>
      <description>&lt;P&gt;Here is what I have:&lt;/P&gt;&lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;&lt;P&gt;Group&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;Condition&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;Value&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;P&gt;1&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;This condition&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;4&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;P&gt;1&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;This condition&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;3&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;P&gt;1&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;This condition&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;1&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;P&gt;1&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;Not this condition&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;6&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;P&gt;2&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;This condition&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;3&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;P&gt;2&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;This condition&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;1&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;P&gt;2&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;This condition&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;6&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;P&gt;2&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;Not this condition&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;8&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Here is what I'm trying to get (note that max is not derived from the 'Not this condition' condition):&lt;/P&gt;&lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;&lt;P&gt;Group&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;Condition&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;Value&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;P&gt;1&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;Max condition&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;4&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;P&gt;1&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;This condition&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;4&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;P&gt;1&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;This condition&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;3&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;P&gt;1&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;This condition&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;1&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;P&gt;1&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;Not this condition&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;6&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;P&gt;2&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;Max Condition&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;6&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;P&gt;2&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;This condition&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;3&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;P&gt;2&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;This condition&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;1&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;P&gt;2&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;This condition&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;6&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;&lt;P&gt;2&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;Not this condition&lt;/P&gt;&lt;/TD&gt;&lt;TD&gt;&lt;P&gt;8&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thank you for your help!&lt;/P&gt;</description>
      <pubDate>Tue, 22 Jun 2021 16:02:54 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Calculate-max-value-within-groups-when-a-condition-is-not-met/m-p/749617#M235601</guid>
      <dc:creator>Excellrec</dc:creator>
      <dc:date>2021-06-22T16:02:54Z</dc:date>
    </item>
    <item>
      <title>Re: Calculate max value within groups, when a condition is not met, then add max value as new condit</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Calculate-max-value-within-groups-when-a-condition-is-not-met/m-p/749628#M235611</link>
      <description>&lt;P&gt;why don't you just get the max with proc sql and then append that table to the original?&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;proc sql;
create table maxes as 
select group, condition, max(value) as value
from have
where condition ^='Not this condition'
group by group, condition;
quit;

data stack;
set want have;
run;
&lt;/CODE&gt;&lt;/PRE&gt;</description>
      <pubDate>Tue, 22 Jun 2021 16:43:15 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Calculate-max-value-within-groups-when-a-condition-is-not-met/m-p/749628#M235611</guid>
      <dc:creator>tarheel13</dc:creator>
      <dc:date>2021-06-22T16:43:15Z</dc:date>
    </item>
    <item>
      <title>Re: Calculate max value within groups, when a condition is not met, then add max value as new condit</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Calculate-max-value-within-groups-when-a-condition-is-not-met/m-p/749644#M235622</link>
      <description>Thank you for the reply. I've tried this syntax but the 'value' is not calculating as the max value, it's returning the value as it was. Could it be because the max value is often the 'not this condition' condition and the where statement is excluding it from the resultant dataset?</description>
      <pubDate>Tue, 22 Jun 2021 17:27:33 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Calculate-max-value-within-groups-when-a-condition-is-not-met/m-p/749644#M235622</guid>
      <dc:creator>Excellrec</dc:creator>
      <dc:date>2021-06-22T17:27:33Z</dc:date>
    </item>
    <item>
      <title>Re: Calculate max value within groups, when a condition is not met, then add max value as new condit</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Calculate-max-value-within-groups-when-a-condition-is-not-met/m-p/749645#M235623</link>
      <description>&lt;P&gt;What is your requirement again? You wrote something about the max not being from this condition so that's why I put that in the where clause. If it is just the max per group, then take condition out of the select statement as that should not be there.&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Tue, 22 Jun 2021 17:33:57 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Calculate-max-value-within-groups-when-a-condition-is-not-met/m-p/749645#M235623</guid>
      <dc:creator>tarheel13</dc:creator>
      <dc:date>2021-06-22T17:33:57Z</dc:date>
    </item>
    <item>
      <title>Re: Calculate max value within groups, when a condition is not met, then add max value as new condit</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Calculate-max-value-within-groups-when-a-condition-is-not-met/m-p/749647#M235625</link>
      <description>&lt;P&gt;Try this if you just want max per group.&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;proc sql;
create table maxes as 
select group, max(value) as value
from have
where condition ^='Not this condition'
group by group;
quit;

data stack;
set want have;
run;&lt;/CODE&gt;&lt;/PRE&gt;</description>
      <pubDate>Tue, 22 Jun 2021 17:36:01 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Calculate-max-value-within-groups-when-a-condition-is-not-met/m-p/749647#M235625</guid>
      <dc:creator>tarheel13</dc:creator>
      <dc:date>2021-06-22T17:36:01Z</dc:date>
    </item>
    <item>
      <title>Re: Calculate max value within groups, when a condition is not met, then add max value as new condit</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Calculate-max-value-within-groups-when-a-condition-is-not-met/m-p/749668#M235638</link>
      <description>&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data have;
input Group Condition $ 3-21 Value;
datalines;
1 This condition     4
1 This condition     3
1 This condition     1
1 Not this condition 6
2 This condition     3
2 This condition     1
2 This condition     6
2 Not this condition 8
;

data want(drop = max);
   do _N_ = 1 by 1 until (last.Group);
      set have;
      by Group;
      if Condition ne "Not this condition" &amp;amp; value &amp;gt; max then max = value;
   end;

   value = max;
   condition = "Max Condition";
   output;

   do _N_ = 1 to _N_;
      set have;
      output;
   end;

   max = .;
run;&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Result:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;Group Condition          Value 
1     Max Condition      4 
1     This condition     4 
1     This condition     3 
1     This condition     1 
1     Not this condition 6 
2     Max Condition      6 
2     This condition     3 
2     This condition     1 
2     This condition     6 
2     Not this condition 8 
&lt;/PRE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Tue, 22 Jun 2021 18:51:37 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Calculate-max-value-within-groups-when-a-condition-is-not-met/m-p/749668#M235638</guid>
      <dc:creator>PeterClemmensen</dc:creator>
      <dc:date>2021-06-22T18:51:37Z</dc:date>
    </item>
    <item>
      <title>Re: Calculate max value within groups, when a condition is not met, then add max value as new condit</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Calculate-max-value-within-groups-when-a-condition-is-not-met/m-p/749671#M235641</link>
      <description>Perfect! Thanks you.</description>
      <pubDate>Tue, 22 Jun 2021 19:00:01 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Calculate-max-value-within-groups-when-a-condition-is-not-met/m-p/749671#M235641</guid>
      <dc:creator>Excellrec</dc:creator>
      <dc:date>2021-06-22T19:00:01Z</dc:date>
    </item>
    <item>
      <title>Re: Calculate max value within groups, when a condition is not met, then add max value as new condit</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Calculate-max-value-within-groups-when-a-condition-is-not-met/m-p/749673#M235643</link>
      <description>&lt;P&gt;Anytime &lt;span class="lia-unicode-emoji" title=":slightly_smiling_face:"&gt;🙂&lt;/span&gt;&lt;/P&gt;</description>
      <pubDate>Tue, 22 Jun 2021 19:05:47 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Calculate-max-value-within-groups-when-a-condition-is-not-met/m-p/749673#M235643</guid>
      <dc:creator>PeterClemmensen</dc:creator>
      <dc:date>2021-06-22T19:05:47Z</dc:date>
    </item>
  </channel>
</rss>

