<?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: Consecutive months in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/Consecutive-months/m-p/415408#M101880</link>
    <description>&lt;P&gt;&lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/11562"&gt;@Kurt_Bremser&lt;/a&gt;&amp;nbsp;ah yes, did not think of that &lt;span class="lia-unicode-emoji" title=":slightly_smiling_face:"&gt;🙂&lt;/span&gt; Right as usual.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/177968"&gt;@Abimal_Zippi&lt;/a&gt;&amp;nbsp;thank you, but I recommend that you go with Kurts solution&lt;/P&gt;</description>
    <pubDate>Wed, 22 Nov 2017 07:45:11 GMT</pubDate>
    <dc:creator>PeterClemmensen</dc:creator>
    <dc:date>2017-11-22T07:45:11Z</dc:date>
    <item>
      <title>Consecutive months</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Consecutive-months/m-p/415395#M101869</link>
      <description>&lt;P&gt;From the data mentioned below, I want to generate id’s that had a flag=1 &amp;nbsp;for two or more consecutive months. As described below, some&amp;nbsp;id's had a flag=1 for 12 consecutive months, only&amp;nbsp;6 consecutive months,&amp;nbsp;4 consecutive months, and finally only a month. Also some&amp;nbsp;id's had a flag=1 but not consecutively, for instance at month 12 of 2013 and month 2 of 2014. The output I want is only those ID’s who had a flag=1 for two or more consecutive months.&lt;/P&gt;&lt;P&gt;I really appreciate your help.&lt;/P&gt;&lt;P&gt;Id&amp;nbsp;&amp;nbsp; year&amp;nbsp;&amp;nbsp; month flag&lt;/P&gt;&lt;P&gt;1&amp;nbsp;&amp;nbsp; 2013&amp;nbsp;&amp;nbsp;&amp;nbsp; 7&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1&lt;/P&gt;&lt;P&gt;1&amp;nbsp;&amp;nbsp; 2013&amp;nbsp;&amp;nbsp;&amp;nbsp; 8&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1&lt;/P&gt;&lt;P&gt;1&amp;nbsp;&amp;nbsp; 2013&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 9&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1&lt;/P&gt;&lt;P&gt;1&amp;nbsp;&amp;nbsp; 2013&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 10&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1&lt;/P&gt;&lt;P&gt;1 2013&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 11&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1&lt;/P&gt;&lt;P&gt;1 2013&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 12&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1&lt;/P&gt;&lt;P&gt;1 2014&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1&lt;/P&gt;&lt;P&gt;1 2014&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1&lt;/P&gt;&lt;P&gt;1 2014&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 3&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1&lt;/P&gt;&lt;P&gt;1 2014&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 4&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;1&lt;/P&gt;&lt;P&gt;1 2014&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 5&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1&lt;/P&gt;&lt;P&gt;1 2014&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 6&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1&lt;/P&gt;&lt;P&gt;2&amp;nbsp;&amp;nbsp; 2013&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 8&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1&lt;/P&gt;&lt;P&gt;2&amp;nbsp;&amp;nbsp; 2013&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 9&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1&lt;/P&gt;&lt;P&gt;2&amp;nbsp;&amp;nbsp; 2013&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 10&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1&lt;/P&gt;&lt;P&gt;2 2013&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 11&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1&lt;/P&gt;&lt;P&gt;2 2013&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 12&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1&lt;/P&gt;&lt;P&gt;2 2014&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1&lt;/P&gt;&lt;P&gt;3 2014&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1&lt;/P&gt;&lt;P&gt;3 2014&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 3&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1&lt;/P&gt;&lt;P&gt;3 2014&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 4&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1&lt;/P&gt;&lt;P&gt;3 2014&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 5&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1&lt;/P&gt;&lt;P&gt;4 2013&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 12&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1&lt;/P&gt;&lt;P&gt;4 2014&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1&lt;/P&gt;&lt;P&gt;5 2013&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 9&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1&lt;/P&gt;&lt;P&gt;5 2014&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 3&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;1&lt;/P&gt;&lt;P&gt;6 2013&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 12&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1&lt;/P&gt;&lt;P&gt;6 2014&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1&lt;/P&gt;&lt;P&gt;7 2014&amp;nbsp;&amp;nbsp;&amp;nbsp; 2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1&lt;/P&gt;&lt;P&gt;8 2013&amp;nbsp;&amp;nbsp;&amp;nbsp; 7&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1&lt;/P&gt;&lt;P&gt;8 2013&amp;nbsp;&amp;nbsp;&amp;nbsp; 8&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1&lt;/P&gt;&lt;P&gt;Output&lt;/P&gt;&lt;P&gt;Id&lt;/P&gt;&lt;P&gt;1&lt;/P&gt;&lt;P&gt;2&lt;/P&gt;&lt;P&gt;3&lt;/P&gt;&lt;P&gt;4&lt;/P&gt;&lt;P&gt;8&lt;/P&gt;</description>
      <pubDate>Wed, 22 Nov 2017 07:10:08 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Consecutive-months/m-p/415395#M101869</guid>
      <dc:creator>Abimal_Zippi</dc:creator>
      <dc:date>2017-11-22T07:10:08Z</dc:date>
    </item>
    <item>
      <title>Re: Consecutive months</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Consecutive-months/m-p/415398#M101872</link>
      <description>&lt;P&gt;Something like this&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data have;
input Id$ year month flag;
datalines;
1 2013 7 1
1 2013 8 1
1 2013 9 1
1 2013 10 1
1 2013 11 1
1 2013 12 1
1 2014 1 1
1 2014 2 1
1 2014 3 1
1 2014 4 1
1 2014 5 1
1 2014 6 1
2 2013 8 1
2 2013 9 1
2 2013 10 1
2 2013 11 1
2 2013 12 1
2 2014 1 1
3 2014 2 1
3 2014 3 1
3 2014 4 1
3 2014 5 1
4 2013 12 1
4 2014 1 1
5 2013 9 1
5 2014 3 1
6 2013 12 1
6 2014 2 1
7 2014 2 1
8 2013 7 1
8 2013 8 1
;

proc sort data=have;
	by ID year month;
run;

data want(keep=ID);
	set have;
	by ID year month;

	dif=dif(month);
	if first.ID then outflag=0;
	else if flag=1 and dif in(1,-11) and outflag=0 then outflag=1;

	retain outflag 0;
	if last.ID and outflag=1;
run;&lt;/CODE&gt;&lt;/PRE&gt;</description>
      <pubDate>Wed, 22 Nov 2017 07:23:31 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Consecutive-months/m-p/415398#M101872</guid>
      <dc:creator>PeterClemmensen</dc:creator>
      <dc:date>2017-11-22T07:23:31Z</dc:date>
    </item>
    <item>
      <title>Re: Consecutive months</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Consecutive-months/m-p/415400#M101874</link>
      <description>&lt;P&gt;Make use of the fine SAS date functions by converting your time data to SAS date values, and use the lag() function:&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data have;
input id year month flag;
cards;
1   2013    7        1
1   2013    8        1
1   2013     9        1
1   2013     10       1
1 2013     11        1
1 2013       12        1
1 2014       1          1
1 2014       2          1
1 2014       3          1
1 2014         4        1
1 2014         5          1
1 2014         6          1
2   2013      8        1
2   2013      9        1
2   2013      10       1
2 2013     11        1
2 2013       12        1
2 2014       1          1
3 2014       2          1
3 2014       3          1
3 2014       4          1
3 2014         5          1
4 2013       12          1
4 2014       1          1
5 2013       9          1
5 2014       3        1
6 2013       12          1
6 2014     2         1
7 2014    2          1
8 2013    7          1
8 2013    8          1
;
run;

/* first, let's create SAS date values from year and month */
data int;
set have;
if flag = 1; * just to be sure;
period = mdy(month,1,year);
keep id period;
run;

/* now check if two observations within a group are only 1 month apart */
data want (keep=id);
set int;
by id period; * period to make sure that dataset is correctly ordered;
if not first.id and intck('month',lag(period),period) = 1; * this is why we created SAS date values;
run;

/* remove duplicates */
proc sort data=want nodupkey;
by id;
run;&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;Note how I presented your data in a data step; this enables everyone reading the post to recreate the dataset with a simple copy/paste and submit, no tedious typing from screen or reformatting needed. And it makes sure that the dataset hase the intended structure.&lt;/P&gt;
&lt;P&gt;Also note how code looks when using the correct posting sub-window ("little running man" or {i} buttons).&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Edit: fixed typo ("data functions" -&amp;gt; "date functions" in first line)&lt;/P&gt;</description>
      <pubDate>Wed, 22 Nov 2017 07:59:37 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Consecutive-months/m-p/415400#M101874</guid>
      <dc:creator>Kurt_Bremser</dc:creator>
      <dc:date>2017-11-22T07:59:37Z</dc:date>
    </item>
    <item>
      <title>Re: Consecutive months</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Consecutive-months/m-p/415402#M101876</link>
      <description>&lt;P&gt;I think you also need to check for the difference in years when dif = -11, or you might stumble over a sequence&lt;/P&gt;
&lt;PRE&gt;year month
2012    12
2014     1&lt;/PRE&gt;</description>
      <pubDate>Wed, 22 Nov 2017 07:28:21 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Consecutive-months/m-p/415402#M101876</guid>
      <dc:creator>Kurt_Bremser</dc:creator>
      <dc:date>2017-11-22T07:28:21Z</dc:date>
    </item>
    <item>
      <title>Re: Consecutive months</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Consecutive-months/m-p/415406#M101879</link>
      <description>&lt;P&gt;That is true, the main challenge to me was to make sure those who had the flag between month 12 and 1 are included. I will take care of this note. Thank you so much&lt;/P&gt;</description>
      <pubDate>Wed, 22 Nov 2017 07:38:40 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Consecutive-months/m-p/415406#M101879</guid>
      <dc:creator>Abimal_Zippi</dc:creator>
      <dc:date>2017-11-22T07:38:40Z</dc:date>
    </item>
    <item>
      <title>Re: Consecutive months</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Consecutive-months/m-p/415408#M101880</link>
      <description>&lt;P&gt;&lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/11562"&gt;@Kurt_Bremser&lt;/a&gt;&amp;nbsp;ah yes, did not think of that &lt;span class="lia-unicode-emoji" title=":slightly_smiling_face:"&gt;🙂&lt;/span&gt; Right as usual.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/177968"&gt;@Abimal_Zippi&lt;/a&gt;&amp;nbsp;thank you, but I recommend that you go with Kurts solution&lt;/P&gt;</description>
      <pubDate>Wed, 22 Nov 2017 07:45:11 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Consecutive-months/m-p/415408#M101880</guid>
      <dc:creator>PeterClemmensen</dc:creator>
      <dc:date>2017-11-22T07:45:11Z</dc:date>
    </item>
    <item>
      <title>Re: Consecutive months</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Consecutive-months/m-p/415410#M101882</link>
      <description>&lt;BLOCKQUOTE&gt;&lt;HR /&gt;@tesfuc wrote:&lt;BR /&gt;
&lt;P&gt;That is true, the main challenge to me was to make sure those who had the flag between month 12 and 1 are included. I will take care of this note. Thank you so much&lt;/P&gt;
&lt;HR /&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;That is why I recommend to use SAS date/datetime/time values wherever possible. As soon as you have them, usage of intck/intnx takes care of all the quirks of the date and time measuring systems (irregular days/month, non-decimal fractional notations like 60sec/min or 12months/year)&lt;/P&gt;</description>
      <pubDate>Wed, 22 Nov 2017 08:04:15 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Consecutive-months/m-p/415410#M101882</guid>
      <dc:creator>Kurt_Bremser</dc:creator>
      <dc:date>2017-11-22T08:04:15Z</dc:date>
    </item>
    <item>
      <title>Re: Consecutive months</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Consecutive-months/m-p/415749#M102018</link>
      <description>&lt;P&gt;Dear KurtBremser&lt;/P&gt;&lt;P&gt;I would like to try a different scenario, i.e.&amp;nbsp;if there is a flag for&amp;nbsp;three or more consecutive months, what changes should I made in the code.&lt;/P&gt;&lt;P&gt;From the above dataset, the desired output will be -&lt;/P&gt;&lt;P&gt;Id&lt;/P&gt;&lt;P&gt;1&lt;/P&gt;&lt;P&gt;2&lt;/P&gt;&lt;P&gt;3&lt;/P&gt;&lt;P&gt;Because all have flag=1 for three or more consecutive months.&lt;/P&gt;&lt;P&gt;I really appreciate your help again.&lt;/P&gt;</description>
      <pubDate>Thu, 23 Nov 2017 06:47:34 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Consecutive-months/m-p/415749#M102018</guid>
      <dc:creator>Abimal_Zippi</dc:creator>
      <dc:date>2017-11-23T06:47:34Z</dc:date>
    </item>
    <item>
      <title>Re: Consecutive months</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Consecutive-months/m-p/415758#M102021</link>
      <description>&lt;P&gt;While the lag() functions keeps a 1-stage FIFO chain, the lag2() function keeps 2 stages. With it you can "look back" for 2 observations.&lt;/P&gt;
&lt;P&gt;When you now retain a counter variable that is set to 1 at first.id and incremented otherwise, you can expand my condition to check for 2 observations back when counter &amp;gt; 2.&lt;/P&gt;</description>
      <pubDate>Thu, 23 Nov 2017 07:45:15 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Consecutive-months/m-p/415758#M102021</guid>
      <dc:creator>Kurt_Bremser</dc:creator>
      <dc:date>2017-11-23T07:45:15Z</dc:date>
    </item>
    <item>
      <title>Re: Consecutive months</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Consecutive-months/m-p/415766#M102025</link>
      <description>&lt;P&gt;Thank you so much,&lt;/P&gt;&lt;P&gt;I just used this code but couldn't&amp;nbsp;get with lag2() function...&lt;/P&gt;&lt;P&gt;&lt;FONT color="#000080" face="Courier New" size="2"&gt;&lt;STRONG&gt;data&lt;/STRONG&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" size="2"&gt; want_2 (&lt;/FONT&gt;&lt;FONT color="#0000ff" face="Courier New" size="2"&gt;keep&lt;/FONT&gt;&lt;FONT face="Courier New" size="2"&gt;=id);&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;FONT color="#0000ff" face="Courier New" size="2"&gt;set&lt;/FONT&gt;&lt;FONT face="Courier New" size="2"&gt; int;&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT color="#0000ff" face="Courier New" size="2"&gt;by&lt;/FONT&gt;&lt;FONT face="Courier New" size="2"&gt; id period;&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT color="#0000ff" face="Courier New" size="2"&gt;if&lt;/FONT&gt;&lt;FONT face="Courier New" size="2"&gt; first.id &lt;/FONT&gt;&lt;FONT color="#0000ff" face="Courier New" size="2"&gt;then&lt;/FONT&gt;&lt;FONT face="Courier New" size="2"&gt; cnt=&lt;/FONT&gt;&lt;STRONG&gt;&lt;FONT color="#008080" face="Courier New" size="2"&gt;0&lt;/FONT&gt;&lt;/STRONG&gt;&lt;FONT face="Courier New" size="2"&gt;;&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT color="#0000ff" face="Courier New" size="2"&gt;if&lt;/FONT&gt;&lt;FONT face="Courier New" size="2"&gt; not first.id and intck(&lt;/FONT&gt;&lt;FONT color="#800080" face="Courier New" size="2"&gt;'month'&lt;/FONT&gt;&lt;FONT face="Courier New" size="2"&gt;,lag(period),period)= &lt;/FONT&gt;&lt;STRONG&gt;&lt;FONT color="#008080" face="Courier New" size="2"&gt;1&lt;/FONT&gt;&lt;/STRONG&gt; &lt;FONT color="#0000ff" face="Courier New" size="2"&gt;then&lt;/FONT&gt;&lt;FONT face="Courier New" size="2"&gt; cnt+&lt;/FONT&gt;&lt;STRONG&gt;&lt;FONT color="#008080" face="Courier New" size="2"&gt;1&lt;/FONT&gt;&lt;/STRONG&gt;&lt;FONT face="Courier New" size="2"&gt;;&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT color="#0000ff" face="Courier New" size="2"&gt;retain&lt;/FONT&gt;&lt;FONT face="Courier New" size="2"&gt; cnt &lt;/FONT&gt;&lt;STRONG&gt;&lt;FONT color="#008080" face="Courier New" size="2"&gt;0&lt;/FONT&gt;&lt;/STRONG&gt;&lt;FONT face="Courier New" size="2"&gt;;&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT color="#0000ff" face="Courier New" size="2"&gt;if&lt;/FONT&gt;&lt;FONT face="Courier New" size="2"&gt; cnt ge &lt;/FONT&gt;&lt;STRONG&gt;&lt;FONT color="#008080" face="Courier New" size="2"&gt;2&lt;/FONT&gt;&lt;/STRONG&gt;&lt;FONT face="Courier New" size="2"&gt;;&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT color="#000080" face="Courier New" size="2"&gt;&lt;STRONG&gt;run&lt;/STRONG&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" size="2"&gt;;&lt;/FONT&gt;&lt;/P&gt;</description>
      <pubDate>Thu, 23 Nov 2017 08:17:51 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Consecutive-months/m-p/415766#M102025</guid>
      <dc:creator>Abimal_Zippi</dc:creator>
      <dc:date>2017-11-23T08:17:51Z</dc:date>
    </item>
    <item>
      <title>Re: Consecutive months</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Consecutive-months/m-p/415769#M102027</link>
      <description>&lt;P&gt;Don't think so complicated:&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data want (keep=id);
set int;
by id period;
retain counter;
if first.id
then counter = 1;
else counter + 1;
if counter &amp;gt; 2 and intck('month',lag(period),period) = 1 and intck('month',lag2(period),period) = 2;
run;&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;Call this &lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;retain counter;
if first.id
then counter = 1;
else counter + 1;
&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;a "counter block"; you will use if often when doing by-group processing in a data step.&lt;/P&gt;</description>
      <pubDate>Thu, 23 Nov 2017 08:25:40 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Consecutive-months/m-p/415769#M102027</guid>
      <dc:creator>Kurt_Bremser</dc:creator>
      <dc:date>2017-11-23T08:25:40Z</dc:date>
    </item>
    <item>
      <title>Re: Consecutive months</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Consecutive-months/m-p/415902#M102087</link>
      <description>&lt;P&gt;I really appreciate your help. That is perfect.&lt;/P&gt;</description>
      <pubDate>Thu, 23 Nov 2017 23:20:05 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Consecutive-months/m-p/415902#M102087</guid>
      <dc:creator>Abimal_Zippi</dc:creator>
      <dc:date>2017-11-23T23:20:05Z</dc:date>
    </item>
  </channel>
</rss>

