<?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 Deleting duplicating dates in SAS Data Management</title>
    <link>https://communities.sas.com/t5/SAS-Data-Management/Deleting-duplicating-dates/m-p/265529#M7326</link>
    <description>&lt;P&gt;Hi all,&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;I've been trying to deal with an issue like this:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Dataset:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;ROW &amp;nbsp; &amp;nbsp;ID &amp;nbsp; &amp;nbsp; &amp;nbsp;DATE&lt;/P&gt;
&lt;P&gt;1&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;/SPAN&gt;1 &amp;nbsp; &amp;nbsp; &amp;nbsp; 20010112&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;2 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 1 &amp;nbsp; &amp;nbsp; &amp;nbsp; 20010212&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;3 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 2&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;20000430&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;4 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 2&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;20000514&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;5 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 2&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;SPAN&gt;200&lt;/SPAN&gt;&lt;SPAN&gt;00514&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;6 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 2&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;20010112&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;7 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 3 &amp;nbsp; &amp;nbsp; &amp;nbsp; 20090807&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;In the above dataset, ID 2 has two rows with the same date 20000514. I want to remove both of thses two rows. I tried using lag function, which will remove the second of the two rows (row 5) but not the first row (row 4). I suspect I should simulate a lead function? But somehow it doesn't work. Below are my codes:&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;/*This is me trying to mark row 5 for deleting later*/&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;proc sort data=have; by id date; run;&lt;BR /&gt;data want1; set have; &lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;by id date;&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;lagdate=lag(date); &lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;if lagdate=date then removal=1; else removal=0;&lt;BR /&gt;run;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;/*This is me trying to mark row 4 for deleting later, but somehow it still marks row 5. */&lt;BR /&gt;proc sort data=want1; by id&amp;nbsp;descending date; run;&lt;BR /&gt;data want; set want1; &lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;by id&lt;SPAN&gt;&amp;nbsp;descending &lt;/SPAN&gt;&lt;SPAN&gt;date&lt;/SPAN&gt;;&lt;BR /&gt; &amp;nbsp; &amp;nbsp; &amp;nbsp;leaddate=lag(date); &lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;if leaddate=date then removal2=1; else removal2=0;&lt;BR /&gt;run;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;Can anyone help me solve this issue please? Thanks in advance!&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;J&lt;/SPAN&gt;&lt;/P&gt;</description>
    <pubDate>Thu, 21 Apr 2016 21:04:01 GMT</pubDate>
    <dc:creator>JOLSAS</dc:creator>
    <dc:date>2016-04-21T21:04:01Z</dc:date>
    <item>
      <title>Deleting duplicating dates</title>
      <link>https://communities.sas.com/t5/SAS-Data-Management/Deleting-duplicating-dates/m-p/265529#M7326</link>
      <description>&lt;P&gt;Hi all,&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;I've been trying to deal with an issue like this:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Dataset:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;ROW &amp;nbsp; &amp;nbsp;ID &amp;nbsp; &amp;nbsp; &amp;nbsp;DATE&lt;/P&gt;
&lt;P&gt;1&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;/SPAN&gt;1 &amp;nbsp; &amp;nbsp; &amp;nbsp; 20010112&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;2 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 1 &amp;nbsp; &amp;nbsp; &amp;nbsp; 20010212&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;3 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 2&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;20000430&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;4 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 2&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;20000514&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;5 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 2&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;SPAN&gt;200&lt;/SPAN&gt;&lt;SPAN&gt;00514&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;6 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 2&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;20010112&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;7 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 3 &amp;nbsp; &amp;nbsp; &amp;nbsp; 20090807&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;In the above dataset, ID 2 has two rows with the same date 20000514. I want to remove both of thses two rows. I tried using lag function, which will remove the second of the two rows (row 5) but not the first row (row 4). I suspect I should simulate a lead function? But somehow it doesn't work. Below are my codes:&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;/*This is me trying to mark row 5 for deleting later*/&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;proc sort data=have; by id date; run;&lt;BR /&gt;data want1; set have; &lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;by id date;&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;lagdate=lag(date); &lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;if lagdate=date then removal=1; else removal=0;&lt;BR /&gt;run;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;/*This is me trying to mark row 4 for deleting later, but somehow it still marks row 5. */&lt;BR /&gt;proc sort data=want1; by id&amp;nbsp;descending date; run;&lt;BR /&gt;data want; set want1; &lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;by id&lt;SPAN&gt;&amp;nbsp;descending &lt;/SPAN&gt;&lt;SPAN&gt;date&lt;/SPAN&gt;;&lt;BR /&gt; &amp;nbsp; &amp;nbsp; &amp;nbsp;leaddate=lag(date); &lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;if leaddate=date then removal2=1; else removal2=0;&lt;BR /&gt;run;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;Can anyone help me solve this issue please? Thanks in advance!&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;J&lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Thu, 21 Apr 2016 21:04:01 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Data-Management/Deleting-duplicating-dates/m-p/265529#M7326</guid>
      <dc:creator>JOLSAS</dc:creator>
      <dc:date>2016-04-21T21:04:01Z</dc:date>
    </item>
    <item>
      <title>Re: Deleting duplicating dates</title>
      <link>https://communities.sas.com/t5/SAS-Data-Management/Deleting-duplicating-dates/m-p/265538#M7331</link>
      <description>&lt;P&gt;Look at proc sort with the UNIQUEOUT option.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Use BY ROW ID.&lt;/P&gt;
&lt;P&gt;See page 3:&lt;/P&gt;
&lt;P&gt;&lt;A href="http://support.sas.com/resources/papers/proceedings13/324-2013.pdf" target="_blank"&gt;http://support.sas.com/resources/papers/proceedings13/324-2013.pdf&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;proc sort data=have nouniquekeys out=dups uniqueout=want;
by id row;
run;&lt;/CODE&gt;&lt;/PRE&gt;</description>
      <pubDate>Thu, 21 Apr 2016 21:55:46 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Data-Management/Deleting-duplicating-dates/m-p/265538#M7331</guid>
      <dc:creator>Reeza</dc:creator>
      <dc:date>2016-04-21T21:55:46Z</dc:date>
    </item>
    <item>
      <title>Re: Deleting duplicating dates</title>
      <link>https://communities.sas.com/t5/SAS-Data-Management/Deleting-duplicating-dates/m-p/265541#M7332</link>
      <description>&lt;P&gt;Here is a variant of &lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/13879"&gt;@Reeza﻿&lt;/a&gt;'s suggestion:&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;proc sort data=have out=_null_ nouniquekey uniqueout=want;
by id date;
run;&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;Alternatively, you could use a data step (after sorting dataset HAVE by id date):&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data want;
set have;
by id date;
if first.date &amp;amp; last.date;
run;&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 21 Apr 2016 22:19:14 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Data-Management/Deleting-duplicating-dates/m-p/265541#M7332</guid>
      <dc:creator>FreelanceReinh</dc:creator>
      <dc:date>2016-04-21T22:19:14Z</dc:date>
    </item>
    <item>
      <title>Re: Deleting duplicating dates</title>
      <link>https://communities.sas.com/t5/SAS-Data-Management/Deleting-duplicating-dates/m-p/265545#M7333</link>
      <description>&lt;P&gt;Reeza,&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;sql does work. I identified all the id-date pairs that have multiple dates using the code below:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;proc sql;&lt;BR /&gt; create table dup as select distinct id, date, count(date) as count from have group by id, date order by &lt;SPAN&gt;id, date&lt;/SPAN&gt;, count;&lt;BR /&gt;quit;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Later on I mark those that have count&amp;gt;1 and merge with the original table. I was able to delete them. Thanks for help!&lt;/P&gt;</description>
      <pubDate>Thu, 21 Apr 2016 22:50:12 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Data-Management/Deleting-duplicating-dates/m-p/265545#M7333</guid>
      <dc:creator>JOLSAS</dc:creator>
      <dc:date>2016-04-21T22:50:12Z</dc:date>
    </item>
  </channel>
</rss>

