<?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 Counting observations in consecutive year columns in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/Counting-observations-in-consecutive-year-columns/m-p/649777#M194842</link>
    <description>&lt;P&gt;If I have a wide data set where each row represents a student and the columns show the years within which they got punished eg:&lt;/P&gt;&lt;P&gt;Student Year1 Year2 Year3 Year4&lt;/P&gt;&lt;P&gt;A&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;1&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; &amp;nbsp;1&lt;/P&gt;&lt;P&gt;B&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;-&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;-&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 1&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;1&lt;/P&gt;&lt;P&gt;C&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;1&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 1&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 1&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;1&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;So I need a code that can show me the number of students who have been punished across 4,3,2 consecutive years.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
    <pubDate>Fri, 22 May 2020 05:00:18 GMT</pubDate>
    <dc:creator>Zozo_star</dc:creator>
    <dc:date>2020-05-22T05:00:18Z</dc:date>
    <item>
      <title>Counting observations in consecutive year columns</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Counting-observations-in-consecutive-year-columns/m-p/649777#M194842</link>
      <description>&lt;P&gt;If I have a wide data set where each row represents a student and the columns show the years within which they got punished eg:&lt;/P&gt;&lt;P&gt;Student Year1 Year2 Year3 Year4&lt;/P&gt;&lt;P&gt;A&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;1&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; &amp;nbsp;1&lt;/P&gt;&lt;P&gt;B&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;-&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;-&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 1&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;1&lt;/P&gt;&lt;P&gt;C&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;1&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 1&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 1&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;1&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;So I need a code that can show me the number of students who have been punished across 4,3,2 consecutive years.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Fri, 22 May 2020 05:00:18 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Counting-observations-in-consecutive-year-columns/m-p/649777#M194842</guid>
      <dc:creator>Zozo_star</dc:creator>
      <dc:date>2020-05-22T05:00:18Z</dc:date>
    </item>
    <item>
      <title>Re: Counting observations in consecutive year columns</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Counting-observations-in-consecutive-year-columns/m-p/649802#M194847</link>
      <description>&lt;P&gt;Hi&amp;nbsp;&lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/330205"&gt;@Zozo_star&lt;/a&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Please try this. Does the following output meet your needs?&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data have;
	infile datalines dsd missover dlm=" ";
	input Student $ Year1 Year2 Year3 Year4;
	datalines;
A 1 1  1
B   1 1
C 1 1 1 1
;
run;

proc transpose data=have out=have_tr(rename=(col1=Punished)) name=Year ;
	var year:;
	by student;
run;

data have_consec;
	do i=1 until (last.student);
		set have_tr;
		by student;
		count+1;
		if missing(Punished) then count=0;
		else if first.student then count=1;
	end;
run;

proc means data=have_consec max noprint;
	var count;
	class student;
	ways 1;
	output out=want (drop=_:) max=max_Yr_consec;
run;

proc freq data=want;
	title "Number of students who have been punished across 4,3,2 consecutive years";
	table max_Yr_consec / nocum nopercent;
	label max_Yr_consec="Consecutive years";
run;&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;Output:&lt;/P&gt;
&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Capture d’écran 2020-05-22 à 10.53.13.png" style="width: 400px;"&gt;&lt;img src="https://communities.sas.com/t5/image/serverpage/image-id/39713iFD1BD194CD2848D8/image-size/medium?v=v2&amp;amp;px=400" role="button" title="Capture d’écran 2020-05-22 à 10.53.13.png" alt="Capture d’écran 2020-05-22 à 10.53.13.png" /&gt;&lt;/span&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Best, &lt;/P&gt;</description>
      <pubDate>Fri, 22 May 2020 08:53:39 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Counting-observations-in-consecutive-year-columns/m-p/649802#M194847</guid>
      <dc:creator>ed_sas_member</dc:creator>
      <dc:date>2020-05-22T08:53:39Z</dc:date>
    </item>
    <item>
      <title>Re: Counting observations in consecutive year columns</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Counting-observations-in-consecutive-year-columns/m-p/649913#M194874</link>
      <description>&lt;P&gt;Monkey wrench question:&lt;/P&gt;
&lt;P&gt;Suppose you have 6 years of data and one student has 2 consecutive years and 3 consecutive years with a year without in between. Which gets counted?&lt;/P&gt;</description>
      <pubDate>Fri, 22 May 2020 14:18:42 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Counting-observations-in-consecutive-year-columns/m-p/649913#M194874</guid>
      <dc:creator>ballardw</dc:creator>
      <dc:date>2020-05-22T14:18:42Z</dc:date>
    </item>
    <item>
      <title>Re: Counting observations in consecutive year columns</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Counting-observations-in-consecutive-year-columns/m-p/663844#M198247</link>
      <description>Thanks, worked!</description>
      <pubDate>Sun, 21 Jun 2020 15:21:08 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Counting-observations-in-consecutive-year-columns/m-p/663844#M198247</guid>
      <dc:creator>Zozo_star</dc:creator>
      <dc:date>2020-06-21T15:21:08Z</dc:date>
    </item>
    <item>
      <title>Re: Counting observations in consecutive year columns</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Counting-observations-in-consecutive-year-columns/m-p/663845#M198248</link>
      <description>Once I knew the frequencies as suggested above, I then set a condition to pick all with any 2, 3 etc.</description>
      <pubDate>Sun, 21 Jun 2020 15:21:55 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Counting-observations-in-consecutive-year-columns/m-p/663845#M198248</guid>
      <dc:creator>Zozo_star</dc:creator>
      <dc:date>2020-06-21T15:21:55Z</dc:date>
    </item>
  </channel>
</rss>

