<?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: Distinct row numbers data step in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/Distinct-row-numbers-data-step/m-p/594613#M170869</link>
    <description>&lt;P&gt;It looks like ln has no role in determining row_num, so I commented it out:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;proc rank data=test out=want ties=dense;
by /*ln*/ step notsorted;
var date1;
ranks row_num;
run;&lt;/CODE&gt;&lt;/PRE&gt;</description>
    <pubDate>Tue, 08 Oct 2019 03:38:07 GMT</pubDate>
    <dc:creator>PGStats</dc:creator>
    <dc:date>2019-10-08T03:38:07Z</dc:date>
    <item>
      <title>Distinct row numbers data step</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Distinct-row-numbers-data-step/m-p/594529#M170822</link>
      <description>&lt;P&gt;&lt;FONT color="#000080" face="Courier New" size="3"&gt;&lt;STRONG&gt;data&lt;/STRONG&gt;&lt;/FONT&gt;&lt;FONT face="Courier New" size="3"&gt; test;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT color="#0000ff" face="Courier New" size="3"&gt;input&lt;/FONT&gt;&lt;FONT face="Courier New" size="3"&gt; ln $ step $ date1 &lt;/FONT&gt;&lt;FONT color="#008080" face="Courier New" size="3"&gt;date9.&lt;/FONT&gt;&lt;FONT face="Courier New" size="3"&gt;;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT color="#0000ff" face="Courier New" size="3"&gt;format&lt;/FONT&gt;&lt;FONT face="Courier New" size="3"&gt; date1 &lt;/FONT&gt;&lt;FONT color="#008080" face="Courier New" size="3"&gt;date9.&lt;/FONT&gt;&lt;FONT face="Courier New" size="3"&gt;;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT color="#0000ff" face="Courier New" size="3"&gt;datalines&lt;/FONT&gt;&lt;FONT face="Courier New" size="3"&gt;;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;0122 B 01jun2019&lt;/P&gt;
&lt;P&gt;0122 B 07jun2019&lt;/P&gt;
&lt;P&gt;0122 C 06jun2019&lt;/P&gt;
&lt;P&gt;0133 C 07jun2019&lt;/P&gt;
&lt;P&gt;0133 B 01jun2019&lt;/P&gt;
&lt;P&gt;0133 B 01jun2019&lt;/P&gt;
&lt;P&gt;;&lt;/P&gt;
&lt;P&gt;&lt;LI-WRAPPER&gt;&lt;/LI-WRAPPER&gt;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;&lt;FONT color="#000080" face="Courier New" size="3"&gt;run&lt;/FONT&gt;&lt;/STRONG&gt;&lt;FONT face="Courier New" size="3"&gt;;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="Courier New" size="3"&gt;The desired output is to get distinct row numbers based on the change in ln,step and date.&amp;nbsp; Then reset with a new step or ln. Something like this;&lt;/FONT&gt;&lt;/P&gt;
&lt;TABLE width="203"&gt;
&lt;TBODY&gt;
&lt;TR&gt;
&lt;TD width="35"&gt;ln&lt;/TD&gt;
&lt;TD width="34"&gt;step&lt;/TD&gt;
&lt;TD width="70"&gt;date1&lt;/TD&gt;
&lt;TD width="64"&gt;row_num&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;0122&lt;/TD&gt;
&lt;TD&gt;B&lt;/TD&gt;
&lt;TD&gt;01Jun2019&lt;/TD&gt;
&lt;TD&gt;1&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;0122&lt;/TD&gt;
&lt;TD&gt;B&lt;/TD&gt;
&lt;TD&gt;07Jun2019&lt;/TD&gt;
&lt;TD&gt;2&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;0122&lt;/TD&gt;
&lt;TD&gt;C&lt;/TD&gt;
&lt;TD&gt;06Jun2019&lt;/TD&gt;
&lt;TD&gt;1&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;0133&lt;/TD&gt;
&lt;TD&gt;C&lt;/TD&gt;
&lt;TD&gt;07Jun2019&lt;/TD&gt;
&lt;TD&gt;2&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;0133&lt;/TD&gt;
&lt;TD&gt;B&lt;/TD&gt;
&lt;TD&gt;01Jun2019&lt;/TD&gt;
&lt;TD&gt;1&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;0133&lt;/TD&gt;
&lt;TD&gt;B&lt;/TD&gt;
&lt;TD&gt;01Jun2019&lt;/TD&gt;
&lt;TD&gt;1&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;</description>
      <pubDate>Mon, 07 Oct 2019 19:11:06 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Distinct-row-numbers-data-step/m-p/594529#M170822</guid>
      <dc:creator>Q1983</dc:creator>
      <dc:date>2019-10-07T19:11:06Z</dc:date>
    </item>
    <item>
      <title>Re: Distinct row numbers data step</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Distinct-row-numbers-data-step/m-p/594541#M170827</link>
      <description>&lt;P&gt;You asked for "&lt;STRONG&gt;&lt;SPAN&gt;distinct row numbers based on the change in ln,step and date.&lt;/SPAN&gt;&lt;/STRONG&gt;" but the result shows distinct row per&amp;nbsp;&lt;STRONG&gt;&lt;SPAN&gt;ln step&lt;/SPAN&gt;&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;only, in &lt;STRONG&gt;0122 B 07jun2019&lt;/STRONG&gt;&amp;nbsp; - why is row_num = 2 ?)&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Any way, assuming data is sorted by&amp;nbsp;&lt;STRONG&gt;&lt;SPAN&gt;ln&lt;/SPAN&gt;&lt;/STRONG&gt; &lt;STRONG&gt;step&amp;nbsp;&lt;/STRONG&gt; then:&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data want;
 set have;
     by ln step;
        retain row_num;
        if first.step then row_num=1; 
        else row_num+1;
run;&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Mon, 07 Oct 2019 20:08:14 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Distinct-row-numbers-data-step/m-p/594541#M170827</guid>
      <dc:creator>Shmuel</dc:creator>
      <dc:date>2019-10-07T20:08:14Z</dc:date>
    </item>
    <item>
      <title>Re: Distinct row numbers data step</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Distinct-row-numbers-data-step/m-p/594542#M170828</link>
      <description>&lt;P&gt;Your explanations are unclear to me.&lt;/P&gt;
&lt;P&gt;This matches your output:&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data WANT; 
  set HAVE;
  if lag(DATE1)&amp;gt;=DATE1 then ROW_NUM=0;
  ROW_NUM+1;
run;&lt;/CODE&gt;&lt;/PRE&gt;
&lt;DIV class="branch"&gt;&lt;BR /&gt;
&lt;DIV&gt;
&lt;DIV align="center"&gt;
&lt;TABLE class="table" summary="Procedure Print: Data Set WORK.WANT" frame="box" rules="all" cellspacing="0" cellpadding="5"&gt;&lt;COLGROUP&gt; &lt;COL /&gt; &lt;COL /&gt; &lt;COL /&gt; &lt;COL /&gt;&lt;/COLGROUP&gt;
&lt;THEAD&gt;
&lt;TR&gt;
&lt;TH class="l header" scope="col"&gt;LN&lt;/TH&gt;
&lt;TH class="l header" scope="col"&gt;STEP&lt;/TH&gt;
&lt;TH class="r header" scope="col"&gt;DATE1&lt;/TH&gt;
&lt;TH class="r header" scope="col"&gt;ROW_NUM&lt;/TH&gt;
&lt;/TR&gt;
&lt;/THEAD&gt;
&lt;TBODY&gt;
&lt;TR&gt;
&lt;TD class="l data"&gt;0122&lt;/TD&gt;
&lt;TD class="l data"&gt;B&lt;/TD&gt;
&lt;TD class="r data"&gt;01JUN2019&lt;/TD&gt;
&lt;TD class="r data"&gt;1&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class="l data"&gt;0122&lt;/TD&gt;
&lt;TD class="l data"&gt;B&lt;/TD&gt;
&lt;TD class="r data"&gt;07JUN2019&lt;/TD&gt;
&lt;TD class="r data"&gt;2&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class="l data"&gt;0122&lt;/TD&gt;
&lt;TD class="l data"&gt;C&lt;/TD&gt;
&lt;TD class="r data"&gt;06JUN2019&lt;/TD&gt;
&lt;TD class="r data"&gt;1&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class="l data"&gt;0133&lt;/TD&gt;
&lt;TD class="l data"&gt;C&lt;/TD&gt;
&lt;TD class="r data"&gt;07JUN2019&lt;/TD&gt;
&lt;TD class="r data"&gt;2&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class="l data"&gt;0133&lt;/TD&gt;
&lt;TD class="l data"&gt;B&lt;/TD&gt;
&lt;TD class="r data"&gt;01JUN2019&lt;/TD&gt;
&lt;TD class="r data"&gt;1&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class="l data"&gt;0133&lt;/TD&gt;
&lt;TD class="l data"&gt;B&lt;/TD&gt;
&lt;TD class="r data"&gt;01JUN2019&lt;/TD&gt;
&lt;TD class="r data"&gt;1&lt;/TD&gt;
&lt;/TR&gt;
&lt;/TBODY&gt;
&lt;/TABLE&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Mon, 07 Oct 2019 20:06:27 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Distinct-row-numbers-data-step/m-p/594542#M170828</guid>
      <dc:creator>ChrisNZ</dc:creator>
      <dc:date>2019-10-07T20:06:27Z</dc:date>
    </item>
    <item>
      <title>Re: Distinct row numbers data step</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Distinct-row-numbers-data-step/m-p/594613#M170869</link>
      <description>&lt;P&gt;It looks like ln has no role in determining row_num, so I commented it out:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;proc rank data=test out=want ties=dense;
by /*ln*/ step notsorted;
var date1;
ranks row_num;
run;&lt;/CODE&gt;&lt;/PRE&gt;</description>
      <pubDate>Tue, 08 Oct 2019 03:38:07 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Distinct-row-numbers-data-step/m-p/594613#M170869</guid>
      <dc:creator>PGStats</dc:creator>
      <dc:date>2019-10-08T03:38:07Z</dc:date>
    </item>
  </channel>
</rss>

