<?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: Delete Multiple Rows If one row meets criteria in SAS Procedures</title>
    <link>https://communities.sas.com/t5/SAS-Procedures/Delete-Multiple-Rows-If-one-row-meets-criteria/m-p/77199#M22381</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;No, it's more complex.&amp;nbsp; If log_code='B', delete all observations for that ID, including those that have log_code='A'.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Thu, 16 May 2013 21:36:58 GMT</pubDate>
    <dc:creator>Astounding</dc:creator>
    <dc:date>2013-05-16T21:36:58Z</dc:date>
    <item>
      <title>Delete Multiple Rows If one row meets criteria</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/Delete-Multiple-Rows-If-one-row-meets-criteria/m-p/77194#M22376</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;&lt;BR /&gt;ID&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; Log_Code&lt;/P&gt;&lt;P&gt;11&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;&amp;nbsp; A&lt;/P&gt;&lt;P&gt;12&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; A&lt;/P&gt;&lt;P&gt;12&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; B&lt;/P&gt;&lt;P&gt;13&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; A&lt;/P&gt;&lt;P&gt;14&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; A&lt;/P&gt;&lt;P&gt;14&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; B&lt;/P&gt;&lt;P&gt;I want to eliminate both rows that meet the criteria of having 'B' as a log code.&amp;nbsp; So in this case I want to eliminate ID 12 and 14.&amp;nbsp; How can I do this in a SAS datastep or proc sql&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 16 May 2013 19:02:08 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/Delete-Multiple-Rows-If-one-row-meets-criteria/m-p/77194#M22376</guid>
      <dc:creator>omega1983</dc:creator>
      <dc:date>2013-05-16T19:02:08Z</dc:date>
    </item>
    <item>
      <title>Re: Delete Multiple Rows If one row meets criteria</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/Delete-Multiple-Rows-If-one-row-meets-criteria/m-p/77195#M22377</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Maybe Im missing something but you should be able to just use a where statement in either case:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Data new;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; set old;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; where log_code ne "B";&lt;/P&gt;&lt;P&gt;run;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;proc sql;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; select *&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; from old &lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; where log_code ne "B"&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ;&lt;/P&gt;&lt;P&gt;quit;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;If the varying padded log_codes are how the data appears then you might have to use strip(log_code) to remove leading and trailing spaces.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Hope this helps!&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;EJ&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 16 May 2013 19:08:35 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/Delete-Multiple-Rows-If-one-row-meets-criteria/m-p/77195#M22377</guid>
      <dc:creator>esjackso</dc:creator>
      <dc:date>2013-05-16T19:08:35Z</dc:date>
    </item>
    <item>
      <title>Re: Delete Multiple Rows If one row meets criteria</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/Delete-Multiple-Rows-If-one-row-meets-criteria/m-p/77196#M22378</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;There are a few ways, but this is probably the most intuitive.&amp;nbsp; It assumes your data are sorted by ID:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data want;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; merge have&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; have (keep=id log_code where=(log_code='B') in=drop_these);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; by id;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; if drop_these then delete;&lt;/P&gt;&lt;P&gt;run;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;It is conceivable you will need to ignore messages indicating a many-to-many merge. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The SQL coders here can show you a way that may be just as intuitive to you ... depends on whether SQL or DATA steps are a stronger area for you.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Good luck.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 16 May 2013 19:23:51 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/Delete-Multiple-Rows-If-one-row-meets-criteria/m-p/77196#M22378</guid>
      <dc:creator>Astounding</dc:creator>
      <dc:date>2013-05-16T19:23:51Z</dc:date>
    </item>
    <item>
      <title>Re: Delete Multiple Rows If one row meets criteria</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/Delete-Multiple-Rows-If-one-row-meets-criteria/m-p/77197#M22379</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;SQL solution -&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data have;&lt;BR /&gt; input id $3. log_code $3.;&lt;BR /&gt;datalines;&lt;BR /&gt;11 A&lt;BR /&gt;12 A&lt;BR /&gt;12 B&lt;BR /&gt;13 A&lt;BR /&gt;14 A&lt;BR /&gt;14 B&lt;BR /&gt;run;&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;proc sql;&lt;BR /&gt;&amp;nbsp; create table want as&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; select *&lt;BR /&gt;&amp;nbsp;&amp;nbsp; from have&lt;BR /&gt;&amp;nbsp; where id not in (select distinct id&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; from have &lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; where log_code in ('B'));&lt;BR /&gt;quit;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 16 May 2013 20:01:22 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/Delete-Multiple-Rows-If-one-row-meets-criteria/m-p/77197#M22379</guid>
      <dc:creator>sascom10</dc:creator>
      <dc:date>2013-05-16T20:01:22Z</dc:date>
    </item>
    <item>
      <title>Re: Delete Multiple Rows If one row meets criteria</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/Delete-Multiple-Rows-If-one-row-meets-criteria/m-p/77198#M22380</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Like EJ, I'm having trouble understanding what needs done here. I know it's been answered multiple times now, but out of curiosity, I'd like to understand what's being asked here exactly.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;As far as I can tell, we simply want to exclude anything with log_code = 'B'? Correct? Is that the case?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 16 May 2013 21:35:12 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/Delete-Multiple-Rows-If-one-row-meets-criteria/m-p/77198#M22380</guid>
      <dc:creator>aland1</dc:creator>
      <dc:date>2013-05-16T21:35:12Z</dc:date>
    </item>
    <item>
      <title>Re: Delete Multiple Rows If one row meets criteria</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/Delete-Multiple-Rows-If-one-row-meets-criteria/m-p/77199#M22381</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;No, it's more complex.&amp;nbsp; If log_code='B', delete all observations for that ID, including those that have log_code='A'.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 16 May 2013 21:36:58 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/Delete-Multiple-Rows-If-one-row-meets-criteria/m-p/77199#M22381</guid>
      <dc:creator>Astounding</dc:creator>
      <dc:date>2013-05-16T21:36:58Z</dc:date>
    </item>
    <item>
      <title>Re: Delete Multiple Rows If one row meets criteria</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/Delete-Multiple-Rows-If-one-row-meets-criteria/m-p/77200#M22382</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Ok. I see. Now it makes sense. Thanks. &lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 16 May 2013 21:40:08 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/Delete-Multiple-Rows-If-one-row-meets-criteria/m-p/77200#M22382</guid>
      <dc:creator>aland1</dc:creator>
      <dc:date>2013-05-16T21:40:08Z</dc:date>
    </item>
    <item>
      <title>Re: Delete Multiple Rows If one row meets criteria</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/Delete-Multiple-Rows-If-one-row-meets-criteria/m-p/77201#M22383</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;You can also simply do:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;proc sql;&lt;/P&gt;&lt;P&gt;&amp;nbsp; create table want as&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; select * from have group by id having sum(log_code='B') &amp;lt;1; quit;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Haikuo&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 17 May 2013 01:04:22 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/Delete-Multiple-Rows-If-one-row-meets-criteria/m-p/77201#M22383</guid>
      <dc:creator>Haikuo</dc:creator>
      <dc:date>2013-05-17T01:04:22Z</dc:date>
    </item>
  </channel>
</rss>

