<?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: Conditional counter in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/Conditional-counter/m-p/231667#M268103</link>
    <description>Thanks a lot ndp. it works as I want. Cheers.</description>
    <pubDate>Mon, 26 Oct 2015 16:49:12 GMT</pubDate>
    <dc:creator>agcetin</dc:creator>
    <dc:date>2015-10-26T16:49:12Z</dc:date>
    <item>
      <title>Conditional counter</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Conditional-counter/m-p/231656#M268098</link>
      <description>&lt;P&gt;Hello everybody,&lt;/P&gt;&lt;P&gt;I'd like to count flag by id and order and get the "target" as below. In summary, I want to put 1 when flag is 1 and add 1 when order increases. It shouldn't change when order is same.&amp;nbsp;&lt;/P&gt;&lt;P&gt;Could you help with solving this problem?&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;TABLE border="0" cellspacing="0" cellpadding="0"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;id&lt;/TD&gt;&lt;TD&gt;order&lt;/TD&gt;&lt;TD&gt;flag&lt;/TD&gt;&lt;TD&gt;target&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;0&lt;/TD&gt;&lt;TD&gt;0&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;0&lt;/TD&gt;&lt;TD&gt;0&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;0&lt;/TD&gt;&lt;TD&gt;0&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;0&lt;/TD&gt;&lt;TD&gt;0&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;3&lt;/TD&gt;&lt;TD&gt;0&lt;/TD&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;3&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;4&lt;/TD&gt;&lt;TD&gt;0&lt;/TD&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;4&lt;/TD&gt;&lt;TD&gt;0&lt;/TD&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;5&lt;/TD&gt;&lt;TD&gt;0&lt;/TD&gt;&lt;TD&gt;3&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;5&lt;/TD&gt;&lt;TD&gt;0&lt;/TD&gt;&lt;TD&gt;3&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;6&lt;/TD&gt;&lt;TD&gt;0&lt;/TD&gt;&lt;TD&gt;4&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;6&lt;/TD&gt;&lt;TD&gt;0&lt;/TD&gt;&lt;TD&gt;4&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;0&lt;/TD&gt;&lt;TD&gt;0&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;0&lt;/TD&gt;&lt;TD&gt;0&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;0&lt;/TD&gt;&lt;TD&gt;0&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;0&lt;/TD&gt;&lt;TD&gt;0&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;3&lt;/TD&gt;&lt;TD&gt;0&lt;/TD&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;3&lt;/TD&gt;&lt;TD&gt;0&lt;/TD&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;4&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;4&lt;/TD&gt;&lt;TD&gt;0&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;5&lt;/TD&gt;&lt;TD&gt;0&lt;/TD&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;5&lt;/TD&gt;&lt;TD&gt;0&lt;/TD&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;5&lt;/TD&gt;&lt;TD&gt;0&lt;/TD&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;data&lt;/STRONG&gt;&amp;nbsp;data01;&lt;/P&gt;&lt;P&gt;input id&amp;nbsp; order flag;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;datalines&lt;/STRONG&gt;;&lt;/P&gt;&lt;P&gt;1 1 0&lt;/P&gt;&lt;P&gt;1 1 0&lt;/P&gt;&lt;P&gt;1 2 0&lt;/P&gt;&lt;P&gt;1 2 0&lt;/P&gt;&lt;P&gt;1 2 1&lt;/P&gt;&lt;P&gt;1 3 0&lt;/P&gt;&lt;P&gt;1 3 1&lt;/P&gt;&lt;P&gt;1 4 0&lt;/P&gt;&lt;P&gt;1 4 0&lt;/P&gt;&lt;P&gt;1 5 0&lt;/P&gt;&lt;P&gt;1 5 0&lt;/P&gt;&lt;P&gt;1 6 0&lt;/P&gt;&lt;P&gt;1 6 0&lt;/P&gt;&lt;P&gt;2 1 0&lt;/P&gt;&lt;P&gt;2 1 0&lt;/P&gt;&lt;P&gt;2 2 0&lt;/P&gt;&lt;P&gt;2 2 0&lt;/P&gt;&lt;P&gt;2 2 1&lt;/P&gt;&lt;P&gt;2 3 0&lt;/P&gt;&lt;P&gt;2 3 0&lt;/P&gt;&lt;P&gt;2 4 1&lt;/P&gt;&lt;P&gt;2 4 0&lt;/P&gt;&lt;P&gt;2 5 0&lt;/P&gt;&lt;P&gt;2 5 0&lt;/P&gt;&lt;P&gt;2 5 0&lt;/P&gt;&lt;P&gt;;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;run&lt;/STRONG&gt;;&lt;/P&gt;</description>
      <pubDate>Mon, 26 Oct 2015 15:59:04 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Conditional-counter/m-p/231656#M268098</guid>
      <dc:creator>agcetin</dc:creator>
      <dc:date>2015-10-26T15:59:04Z</dc:date>
    </item>
    <item>
      <title>Re: Conditional counter</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Conditional-counter/m-p/231659#M268099</link>
      <description>&lt;P&gt;This is untested code&lt;/P&gt;
&lt;P&gt;&lt;BR /&gt;&lt;CODE class=" language-sas"&gt; &lt;/CODE&gt;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;
 data want;
    set have;
    by id order;
    if first.id then target=0;
    if flag=1 then target=1;
    if first.order then target+1;
run;
&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Mon, 26 Oct 2015 16:06:51 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Conditional-counter/m-p/231659#M268099</guid>
      <dc:creator>PaigeMiller</dc:creator>
      <dc:date>2015-10-26T16:06:51Z</dc:date>
    </item>
    <item>
      <title>Re: Conditional counter</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Conditional-counter/m-p/231662#M268100</link>
      <description>Thanks for your reply PaigeMiller but it didn't work as I wanted.</description>
      <pubDate>Mon, 26 Oct 2015 16:14:35 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Conditional-counter/m-p/231662#M268100</guid>
      <dc:creator>agcetin</dc:creator>
      <dc:date>2015-10-26T16:14:35Z</dc:date>
    </item>
    <item>
      <title>Re: Conditional counter</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Conditional-counter/m-p/231664#M268101</link>
      <description>&lt;P&gt;If you want further help, you have to explain further.&lt;/P&gt;</description>
      <pubDate>Mon, 26 Oct 2015 16:29:41 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Conditional-counter/m-p/231664#M268101</guid>
      <dc:creator>PaigeMiller</dc:creator>
      <dc:date>2015-10-26T16:29:41Z</dc:date>
    </item>
    <item>
      <title>Re: Conditional counter</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Conditional-counter/m-p/231666#M268102</link>
      <description>&lt;P&gt;Try this:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data want;
    set data01;
    by id order;
    if first.id then target=0;
    if flag=1 then target=1;
    if first.order and target&amp;gt;0 and flag=0 then target+1;
run;
&lt;/CODE&gt;&lt;/PRE&gt;</description>
      <pubDate>Mon, 26 Oct 2015 16:44:38 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Conditional-counter/m-p/231666#M268102</guid>
      <dc:creator>ndp</dc:creator>
      <dc:date>2015-10-26T16:44:38Z</dc:date>
    </item>
    <item>
      <title>Re: Conditional counter</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Conditional-counter/m-p/231667#M268103</link>
      <description>Thanks a lot ndp. it works as I want. Cheers.</description>
      <pubDate>Mon, 26 Oct 2015 16:49:12 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Conditional-counter/m-p/231667#M268103</guid>
      <dc:creator>agcetin</dc:creator>
      <dc:date>2015-10-26T16:49:12Z</dc:date>
    </item>
    <item>
      <title>Re: Conditional counter</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Conditional-counter/m-p/231668#M268104</link>
      <description>&lt;P&gt;In my haste the code seems to have gotten away from me a little.&amp;nbsp; I won't be surprised to see a more elegant solution but this will work:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;data want(drop=_:);&lt;BR /&gt;set data01;&lt;BR /&gt;by id order;&lt;BR /&gt;retain _target;&lt;BR /&gt;if first.id and flag = 0 then do; _target = 0;target = 0;end;&lt;BR /&gt;if flag = 1 then do; target = 1; _target = 1;end;&lt;BR /&gt;if first.order and _target = 1 then target + 1;&lt;BR /&gt;if flag = 1 then target = 1;&lt;BR /&gt;run;&lt;/P&gt;</description>
      <pubDate>Mon, 26 Oct 2015 16:50:24 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Conditional-counter/m-p/231668#M268104</guid>
      <dc:creator>Steelers_In_DC</dc:creator>
      <dc:date>2015-10-26T16:50:24Z</dc:date>
    </item>
    <item>
      <title>Re: Conditional counter</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Conditional-counter/m-p/231670#M268105</link>
      <description>it also works. Many thanks.</description>
      <pubDate>Mon, 26 Oct 2015 16:52:03 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Conditional-counter/m-p/231670#M268105</guid>
      <dc:creator>agcetin</dc:creator>
      <dc:date>2015-10-26T16:52:03Z</dc:date>
    </item>
  </channel>
</rss>

