<?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: Adjusting column value for changing values of a dummy in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/Adjusting-column-value-for-changing-values-of-a-dummy/m-p/391084#M93875</link>
    <description>&lt;P&gt;The following will do what you want:&lt;/P&gt;
&lt;PRE&gt;data want (drop=_:);
  set have;
  by personid;
  _last_event=ifn(not first.personid,lag(event),0);
  if first.personid then _hold=0;
  if event eq 1 and _last_event eq 0 then _hold+1;
  want=ifn(event eq 0,0,_hold);
run;&lt;/PRE&gt;
&lt;P&gt;Art, CEO, AnalystFinder.com&lt;/P&gt;</description>
    <pubDate>Sat, 26 Aug 2017 16:40:36 GMT</pubDate>
    <dc:creator>art297</dc:creator>
    <dc:date>2017-08-26T16:40:36Z</dc:date>
    <item>
      <title>Adjusting column value for changing values of a dummy</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Adjusting-column-value-for-changing-values-of-a-dummy/m-p/391080#M93874</link>
      <description>&lt;P&gt;Hi Everyone:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;I posted below an example data set along with a column that I would like to create. In this data set, I have different people (personid) and for some observations, an event is present (1) and for some it is not (0). The data are sorted by personid and date, which I did not show. I want to create a new column (want):&lt;/P&gt;
&lt;P&gt;-whenever, event=0, it should be 0.&lt;/P&gt;
&lt;P&gt;-for a given personid: for the first event=1, it should be 1, and should stay as 1 as long as event=1.&lt;/P&gt;
&lt;P&gt;-for a given personid: each time, the event transitions from 0 to 1, its value increases by 1.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;I do not know how exactly I should go about this. I would very much appreciate your help.&lt;/P&gt;
&lt;P&gt;Thank you&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;personid event want&lt;BR /&gt;1&amp;nbsp;&amp;nbsp; &amp;nbsp;0&amp;nbsp;&amp;nbsp; &amp;nbsp;0&lt;BR /&gt;1&amp;nbsp;&amp;nbsp; &amp;nbsp;0&amp;nbsp;&amp;nbsp; &amp;nbsp;0&lt;BR /&gt;1&amp;nbsp;&amp;nbsp; &amp;nbsp;0&amp;nbsp;&amp;nbsp; &amp;nbsp;0&lt;BR /&gt;1&amp;nbsp;&amp;nbsp; &amp;nbsp;0&amp;nbsp;&amp;nbsp; &amp;nbsp;0&lt;BR /&gt;1&amp;nbsp;&amp;nbsp; &amp;nbsp;0&amp;nbsp;&amp;nbsp; &amp;nbsp;0&lt;BR /&gt;1&amp;nbsp;&amp;nbsp; &amp;nbsp;1&amp;nbsp;&amp;nbsp; &amp;nbsp;1&lt;BR /&gt;1&amp;nbsp;&amp;nbsp; &amp;nbsp;1&amp;nbsp;&amp;nbsp; &amp;nbsp;1&lt;BR /&gt;1&amp;nbsp;&amp;nbsp; &amp;nbsp;1&amp;nbsp;&amp;nbsp; &amp;nbsp;1&lt;BR /&gt;1&amp;nbsp;&amp;nbsp; &amp;nbsp;1&amp;nbsp;&amp;nbsp; &amp;nbsp;1&lt;BR /&gt;1&amp;nbsp;&amp;nbsp; &amp;nbsp;1&amp;nbsp;&amp;nbsp; &amp;nbsp;1&lt;BR /&gt;1&amp;nbsp;&amp;nbsp; &amp;nbsp;0&amp;nbsp;&amp;nbsp; &amp;nbsp;0&lt;BR /&gt;1&amp;nbsp;&amp;nbsp; &amp;nbsp;0&amp;nbsp;&amp;nbsp; &amp;nbsp;0&lt;BR /&gt;1&amp;nbsp;&amp;nbsp; &amp;nbsp;1&amp;nbsp;&amp;nbsp; &amp;nbsp;2&lt;BR /&gt;1&amp;nbsp;&amp;nbsp; &amp;nbsp;1&amp;nbsp;&amp;nbsp; &amp;nbsp;2&lt;BR /&gt;1&amp;nbsp;&amp;nbsp; &amp;nbsp;1&amp;nbsp;&amp;nbsp; &amp;nbsp;2&lt;BR /&gt;1&amp;nbsp;&amp;nbsp; &amp;nbsp;0&amp;nbsp;&amp;nbsp; &amp;nbsp;0&lt;BR /&gt;1&amp;nbsp;&amp;nbsp; &amp;nbsp;1&amp;nbsp;&amp;nbsp; &amp;nbsp;3&lt;BR /&gt;2&amp;nbsp;&amp;nbsp; &amp;nbsp;1&amp;nbsp;&amp;nbsp; &amp;nbsp;1&lt;BR /&gt;2&amp;nbsp;&amp;nbsp; &amp;nbsp;1&amp;nbsp;&amp;nbsp; &amp;nbsp;1&lt;BR /&gt;2&amp;nbsp;&amp;nbsp; &amp;nbsp;0&amp;nbsp;&amp;nbsp; &amp;nbsp;0&lt;BR /&gt;2&amp;nbsp;&amp;nbsp; &amp;nbsp;0&amp;nbsp;&amp;nbsp; &amp;nbsp;0&lt;BR /&gt;2&amp;nbsp;&amp;nbsp; &amp;nbsp;0&amp;nbsp;&amp;nbsp; &amp;nbsp;0&lt;BR /&gt;2&amp;nbsp;&amp;nbsp; &amp;nbsp;0&amp;nbsp;&amp;nbsp; &amp;nbsp;0&lt;BR /&gt;2&amp;nbsp;&amp;nbsp; &amp;nbsp;1&amp;nbsp;&amp;nbsp; &amp;nbsp;2&lt;BR /&gt;2&amp;nbsp;&amp;nbsp; &amp;nbsp;1&amp;nbsp;&amp;nbsp; &amp;nbsp;2&lt;BR /&gt;2&amp;nbsp;&amp;nbsp; &amp;nbsp;1&amp;nbsp;&amp;nbsp; &amp;nbsp;2&lt;BR /&gt;2&amp;nbsp;&amp;nbsp; &amp;nbsp;0&amp;nbsp;&amp;nbsp; &amp;nbsp;0&lt;BR /&gt;2&amp;nbsp;&amp;nbsp; &amp;nbsp;0&amp;nbsp;&amp;nbsp; &amp;nbsp;0&lt;BR /&gt;2&amp;nbsp;&amp;nbsp; &amp;nbsp;1&amp;nbsp;&amp;nbsp; &amp;nbsp;3&lt;BR /&gt;2&amp;nbsp;&amp;nbsp; &amp;nbsp;1&amp;nbsp;&amp;nbsp; &amp;nbsp;3&lt;BR /&gt;2&amp;nbsp;&amp;nbsp; &amp;nbsp;1&amp;nbsp;&amp;nbsp; &amp;nbsp;3&lt;BR /&gt;2&amp;nbsp;&amp;nbsp; &amp;nbsp;0&amp;nbsp;&amp;nbsp; &amp;nbsp;0&lt;BR /&gt;2&amp;nbsp;&amp;nbsp; &amp;nbsp;1&amp;nbsp;&amp;nbsp; &amp;nbsp;4&lt;/P&gt;</description>
      <pubDate>Sat, 26 Aug 2017 16:07:31 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Adjusting-column-value-for-changing-values-of-a-dummy/m-p/391080#M93874</guid>
      <dc:creator>finans_sas</dc:creator>
      <dc:date>2017-08-26T16:07:31Z</dc:date>
    </item>
    <item>
      <title>Re: Adjusting column value for changing values of a dummy</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Adjusting-column-value-for-changing-values-of-a-dummy/m-p/391084#M93875</link>
      <description>&lt;P&gt;The following will do what you want:&lt;/P&gt;
&lt;PRE&gt;data want (drop=_:);
  set have;
  by personid;
  _last_event=ifn(not first.personid,lag(event),0);
  if first.personid then _hold=0;
  if event eq 1 and _last_event eq 0 then _hold+1;
  want=ifn(event eq 0,0,_hold);
run;&lt;/PRE&gt;
&lt;P&gt;Art, CEO, AnalystFinder.com&lt;/P&gt;</description>
      <pubDate>Sat, 26 Aug 2017 16:40:36 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Adjusting-column-value-for-changing-values-of-a-dummy/m-p/391084#M93875</guid>
      <dc:creator>art297</dc:creator>
      <dc:date>2017-08-26T16:40:36Z</dc:date>
    </item>
    <item>
      <title>Re: Adjusting column value for changing values of a dummy</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Adjusting-column-value-for-changing-values-of-a-dummy/m-p/391090#M93876</link>
      <description>&lt;P&gt;One possibility:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;data want;&lt;/P&gt;
&lt;P&gt;set have;&lt;/P&gt;
&lt;P&gt;by personid event notsorted;&lt;/P&gt;
&lt;P&gt;if first.personid then event_counter=0;&lt;/P&gt;
&lt;P&gt;if first.event and event=1 then event_counter + 1;&lt;/P&gt;
&lt;P&gt;if event=0 then want=0;&lt;/P&gt;
&lt;P&gt;else want = event_counter;&lt;/P&gt;
&lt;P&gt;drop event_counter;&lt;/P&gt;
&lt;P&gt;run;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Sat, 26 Aug 2017 18:27:49 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Adjusting-column-value-for-changing-values-of-a-dummy/m-p/391090#M93876</guid>
      <dc:creator>Astounding</dc:creator>
      <dc:date>2017-08-26T18:27:49Z</dc:date>
    </item>
    <item>
      <title>Re: Adjusting column value for changing values of a dummy</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Adjusting-column-value-for-changing-values-of-a-dummy/m-p/393021#M94623</link>
      <description>&lt;P&gt;Thank you so much for your help! I love this forum.&lt;/P&gt;</description>
      <pubDate>Mon, 04 Sep 2017 16:55:49 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Adjusting-column-value-for-changing-values-of-a-dummy/m-p/393021#M94623</guid>
      <dc:creator>finans_sas</dc:creator>
      <dc:date>2017-09-04T16:55:49Z</dc:date>
    </item>
  </channel>
</rss>

