<?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: How to get one subset like this? in SAS Procedures</title>
    <link>https://communities.sas.com/t5/SAS-Procedures/How-to-get-one-subset-like-this/m-p/101191#M28411</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Haikuo,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I am totally new to hash. Hash looks like a vey handy appraoch.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Coud you please elaborate a bit how you have built the logic in your hash code (time permitting).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;This simple data set looks a good opportunity to understand it.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Mirisage&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Fri, 06 Jul 2012 18:43:16 GMT</pubDate>
    <dc:creator>Mirisage</dc:creator>
    <dc:date>2012-07-06T18:43:16Z</dc:date>
    <item>
      <title>How to get one subset like this?</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/How-to-get-one-subset-like-this/m-p/101182#M28402</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;My dataset is shown as below,&lt;/P&gt;&lt;TABLE border="0" cellpadding="0" cellspacing="0" style="width: 158px;"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD height="16" width="64"&gt;case_number&lt;/TD&gt;&lt;TD width="94"&gt;case_value&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD height="16"&gt;a&lt;/TD&gt;&lt;TD align="right"&gt;1&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD height="16"&gt;a&lt;/TD&gt;&lt;TD align="right"&gt;2&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD height="16"&gt;a&lt;/TD&gt;&lt;TD align="right"&gt;3&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD height="16"&gt;a&lt;/TD&gt;&lt;TD align="right"&gt;4&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD height="16"&gt;b&lt;/TD&gt;&lt;TD align="right"&gt;2&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD height="16"&gt;b&lt;/TD&gt;&lt;TD align="right"&gt;3&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD height="16"&gt;b&lt;/TD&gt;&lt;TD align="right"&gt;4&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD height="16"&gt;b&lt;/TD&gt;&lt;TD align="right"&gt;5&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD height="16"&gt;c&lt;/TD&gt;&lt;TD align="right"&gt;5&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD height="16"&gt;c&lt;/TD&gt;&lt;TD align="right"&gt;6&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD height="16"&gt;c&lt;/TD&gt;&lt;TD align="right"&gt;7&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD height="16"&gt;c&lt;/TD&gt;&lt;TD align="right"&gt;9&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;I want to extract the observations whose case _value is maximal across each case_number. For this dataset, I want to get one subset like this.&lt;/P&gt;&lt;TABLE border="0" cellpadding="0" cellspacing="0" style="width: 158px;"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD height="16" width="64"&gt;case_number&lt;/TD&gt;&lt;TD width="94"&gt;case_value&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD height="16"&gt;a&lt;/TD&gt;&lt;TD align="right"&gt;4&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD height="16"&gt;b&lt;/TD&gt;&lt;TD align="right"&gt;5&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD height="16"&gt;c&lt;/TD&gt;&lt;TD align="right"&gt;&lt;P&gt;9&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;How to achieve this by coding?&lt;/P&gt;&lt;P&gt;Thanks!&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 06 Jul 2012 11:44:20 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/How-to-get-one-subset-like-this/m-p/101182#M28402</guid>
      <dc:creator>TomiKong</dc:creator>
      <dc:date>2012-07-06T11:44:20Z</dc:date>
    </item>
    <item>
      <title>Re: How to get one subset like this?</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/How-to-get-one-subset-like-this/m-p/101183#M28403</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;data have;&lt;/P&gt;&lt;P&gt;input case_number&amp;nbsp; $ case_value;&lt;/P&gt;&lt;P&gt;datalines;&lt;/P&gt;&lt;P&gt;a 1&lt;/P&gt;&lt;P&gt;a 2&lt;/P&gt;&lt;P&gt;a 3&lt;/P&gt;&lt;P&gt;a 4&lt;/P&gt;&lt;P&gt;b 2&lt;/P&gt;&lt;P&gt;b 3&lt;/P&gt;&lt;P&gt;b 4&lt;/P&gt;&lt;P&gt;b 5&lt;/P&gt;&lt;P&gt;c 5&lt;/P&gt;&lt;P&gt;c 6&lt;/P&gt;&lt;P&gt;c 7&lt;/P&gt;&lt;P&gt;c 9&lt;/P&gt;&lt;P&gt;;&lt;/P&gt;&lt;P&gt;run;&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; select distinct case_number, &lt;/P&gt;&lt;P&gt;&amp;nbsp; max(case_value) as case_value&lt;/P&gt;&lt;P&gt;&amp;nbsp; from have&lt;/P&gt;&lt;P&gt;&amp;nbsp; group by case_number;&lt;/P&gt;&lt;P&gt;quit;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 06 Jul 2012 11:57:24 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/How-to-get-one-subset-like-this/m-p/101183#M28403</guid>
      <dc:creator>Alpay</dc:creator>
      <dc:date>2012-07-06T11:57:24Z</dc:date>
    </item>
    <item>
      <title>Re: How to get one subset like this?</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/How-to-get-one-subset-like-this/m-p/101184#M28404</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Why use DISTINCT in this query?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PG&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 06 Jul 2012 12:02:50 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/How-to-get-one-subset-like-this/m-p/101184#M28404</guid>
      <dc:creator>PGStats</dc:creator>
      <dc:date>2012-07-06T12:02:50Z</dc:date>
    </item>
    <item>
      <title>Re: How to get one subset like this?</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/How-to-get-one-subset-like-this/m-p/101185#M28405</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Another option is Proc Summary.&amp;nbsp; The 2nd example is based on the maximum value being returned when an ID statement is used.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="color: navy; background: white; font-size: 10.0pt; font-family: 'Courier New';"&gt;proc&lt;/STRONG&gt; &lt;STRONG style="color: navy; background: white; font-size: 10.0pt; font-family: 'Courier New';"&gt;summary&lt;/STRONG&gt; &lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: blue; background: white;"&gt;data&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt;=have &lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: blue; background: white;"&gt;nway&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt;;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: blue; background: white;"&gt;class&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt; case_number;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: blue; background: white;"&gt;var&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt; case_value;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: blue; background: white;"&gt;output&lt;/SPAN&gt; &lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: blue; background: white;"&gt;out&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt;=want (drop=_:) &lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: blue; background: white;"&gt;max&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt;=;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="color: navy; background: white; font-size: 10.0pt; font-family: 'Courier New';"&gt;run&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt;;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt;or&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="color: navy; background: white; font-size: 10.0pt; font-family: 'Courier New';"&gt;proc&lt;/STRONG&gt; &lt;STRONG style="color: navy; background: white; font-size: 10.0pt; font-family: 'Courier New';"&gt;summary&lt;/STRONG&gt; &lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: blue; background: white;"&gt;data&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt;=have &lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: blue; background: white;"&gt;nway&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt;;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: blue; background: white;"&gt;class&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt; case_number;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: blue; background: white;"&gt;id&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt; case_value;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: blue; background: white;"&gt;output&lt;/SPAN&gt; &lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: blue; background: white;"&gt;out&lt;/SPAN&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt;=want (drop=_:);&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="color: navy; background: white; font-size: 10.0pt; font-family: 'Courier New';"&gt;run&lt;/STRONG&gt;&lt;SPAN style="font-size: 10.0pt; font-family: 'Courier New'; color: black; background: white;"&gt;;&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 06 Jul 2012 12:29:29 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/How-to-get-one-subset-like-this/m-p/101185#M28405</guid>
      <dc:creator>Keith</dc:creator>
      <dc:date>2012-07-06T12:29:29Z</dc:date>
    </item>
    <item>
      <title>Re: How to get one subset like this?</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/How-to-get-one-subset-like-this/m-p/101186#M28406</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Thanks for the question since it made me think what's happening with proc sql calls. &lt;/P&gt;&lt;P&gt;It will return the same result set without DISTINCT in select statement with one less operation.&lt;/P&gt;&lt;P&gt;I looked at the method chosen by proc sql with and without DISTINCT keyword in select statement.&lt;/P&gt;&lt;P&gt;When DISTINCT is used "sqxunqs" operation is run as an extra operation to de-dup records which are already unique before this operation.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I should be more careful next time when using DISTINCT keyword especially with large data sets.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Method without DISTINCT:&lt;/P&gt;&lt;P&gt;proc sql _method;&lt;/P&gt;&lt;P&gt;create table want as&lt;/P&gt;&lt;P&gt;&amp;nbsp; select case_number,&lt;/P&gt;&lt;P&gt;&amp;nbsp; max(case_value) as case_value&lt;/P&gt;&lt;P&gt;&amp;nbsp; from have&lt;/P&gt;&lt;P&gt;&amp;nbsp; group by case_number;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;quit;&lt;/P&gt;&lt;P&gt;NOTE: SQL execution methods chosen are:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; sqxcrta&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; sqxsumg&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;&amp;nbsp; sqxsort&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; sqxsrc( WORK.HAVE )&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Method with DISTINCT:&lt;/P&gt;&lt;P&gt;proc sql _method;&lt;/P&gt;&lt;P&gt;create table want as&lt;/P&gt;&lt;P&gt;&amp;nbsp; select distinct case_number,&lt;/P&gt;&lt;P&gt;&amp;nbsp; max(case_value) as case_value&lt;/P&gt;&lt;P&gt;&amp;nbsp; from have&lt;/P&gt;&lt;P&gt;&amp;nbsp; group by case_number;&lt;/P&gt;&lt;P&gt;quit;&lt;/P&gt;&lt;P&gt;NOTE: SQL execution methods chosen are:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; sqxcrta&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; sqxunqs&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;&amp;nbsp; sqxsumg&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; sqxsort&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; sqxsrc( WORK.HAVE )&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 06 Jul 2012 12:35:45 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/How-to-get-one-subset-like-this/m-p/101186#M28406</guid>
      <dc:creator>Alpay</dc:creator>
      <dc:date>2012-07-06T12:35:45Z</dc:date>
    </item>
    <item>
      <title>Re: How to get one subset like this?</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/How-to-get-one-subset-like-this/m-p/101187#M28407</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;or no SQL solution:&lt;/P&gt;&lt;P&gt;data have;&lt;/P&gt;&lt;P&gt;input case_number&amp;nbsp; $ case_value;&lt;/P&gt;&lt;P&gt;datalines;&lt;/P&gt;&lt;P&gt;a 1&lt;/P&gt;&lt;P&gt;a 2&lt;/P&gt;&lt;P&gt;a 3&lt;/P&gt;&lt;P&gt;a 4&lt;/P&gt;&lt;P&gt;b 2&lt;/P&gt;&lt;P&gt;b 3&lt;/P&gt;&lt;P&gt;b 4&lt;/P&gt;&lt;P&gt;b 5&lt;/P&gt;&lt;P&gt;c 5&lt;/P&gt;&lt;P&gt;c 6&lt;/P&gt;&lt;P&gt;c 7&lt;/P&gt;&lt;P&gt;c 9&lt;/P&gt;&lt;P&gt;;&lt;/P&gt;&lt;P&gt;proc sort;&lt;/P&gt;&lt;P&gt; by case_number&amp;nbsp; $ case_value;&lt;/P&gt;&lt;P&gt; data want;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; set have;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; by case_number;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; if last.case_number;&lt;/P&gt;&lt;P&gt;proc print;run;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Linlin&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 06 Jul 2012 12:38:46 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/How-to-get-one-subset-like-this/m-p/101187#M28407</guid>
      <dc:creator>Linlin</dc:creator>
      <dc:date>2012-07-06T12:38:46Z</dc:date>
    </item>
    <item>
      <title>Re: How to get one subset like this?</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/How-to-get-one-subset-like-this/m-p/101188#M28408</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;hi ... the SQL and SUMMARY solutions seem most "economical", but if you are going to sort, you can always sort again and take advantage of the default EQUALS option that maintains order withing sort groups ...&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'courier new', courier;"&gt;&lt;STRONG&gt;proc sort data=have out=want;&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'courier new', courier;"&gt;&lt;STRONG&gt;by case_number descending case_value;&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'courier new', courier;"&gt;&lt;STRONG&gt;run;&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'courier new', courier;"&gt;&lt;STRONG&gt;&lt;BR /&gt;&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'courier new', courier;"&gt;&lt;STRONG&gt;proc sort data=want nodupkey;&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'courier new', courier;"&gt;&lt;STRONG&gt;by case_number;&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: 'courier new', courier;"&gt;&lt;STRONG&gt;run;&lt;/STRONG&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 06 Jul 2012 14:02:00 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/How-to-get-one-subset-like-this/m-p/101188#M28408</guid>
      <dc:creator>MikeZdeb</dc:creator>
      <dc:date>2012-07-06T14:02:00Z</dc:date>
    </item>
    <item>
      <title>Re: How to get one subset like this?</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/How-to-get-one-subset-like-this/m-p/101189#M28409</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;FWIW, a hash() solution:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data have;&lt;/P&gt;&lt;P&gt;input case_number$&amp;nbsp;&amp;nbsp;&amp;nbsp; case_value;&lt;/P&gt;&lt;P&gt;cards;&lt;/P&gt;&lt;P&gt;a&amp;nbsp;&amp;nbsp;&amp;nbsp; 1&lt;/P&gt;&lt;P&gt;a&amp;nbsp;&amp;nbsp;&amp;nbsp; 2&lt;/P&gt;&lt;P&gt;a&amp;nbsp;&amp;nbsp;&amp;nbsp; 3&lt;/P&gt;&lt;P&gt;a&amp;nbsp;&amp;nbsp;&amp;nbsp; 4&lt;/P&gt;&lt;P&gt;b&amp;nbsp;&amp;nbsp;&amp;nbsp; 2&lt;/P&gt;&lt;P&gt;b&amp;nbsp;&amp;nbsp;&amp;nbsp; 3&lt;/P&gt;&lt;P&gt;b&amp;nbsp;&amp;nbsp;&amp;nbsp; 4&lt;/P&gt;&lt;P&gt;b&amp;nbsp;&amp;nbsp;&amp;nbsp; 5&lt;/P&gt;&lt;P&gt;c&amp;nbsp;&amp;nbsp;&amp;nbsp; 5&lt;/P&gt;&lt;P&gt;c&amp;nbsp;&amp;nbsp;&amp;nbsp; 6&lt;/P&gt;&lt;P&gt;c&amp;nbsp;&amp;nbsp;&amp;nbsp; 7&lt;/P&gt;&lt;P&gt;c&amp;nbsp;&amp;nbsp;&amp;nbsp; 9&lt;/P&gt;&lt;P&gt;;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data _null_;&lt;/P&gt;&lt;P&gt;&amp;nbsp; if 0 then set have;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; dcl hash h(dataset:'have', ordered: 'a',duplicate:'r');&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; h.definekey('case_number');&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; h.definedata(all:'y');&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; h.definedone();&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; rc=h.output(dataset:'want');&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; stop;&lt;/P&gt;&lt;P&gt;run;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;proc print;run;&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, 06 Jul 2012 14:21:41 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/How-to-get-one-subset-like-this/m-p/101189#M28409</guid>
      <dc:creator>Haikuo</dc:creator>
      <dc:date>2012-07-06T14:21:41Z</dc:date>
    </item>
    <item>
      <title>Re: How to get one subset like this?</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/How-to-get-one-subset-like-this/m-p/101190#M28410</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Mike,&lt;/P&gt;&lt;P&gt;Thank you! I need to practice my Mapping skill learned from you. I am going to post a question at SAS/Graph and ODS Graphics. I am sure you will help me.&lt;/P&gt;&lt;P&gt;- Linlin&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 06 Jul 2012 15:28:31 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/How-to-get-one-subset-like-this/m-p/101190#M28410</guid>
      <dc:creator>Linlin</dc:creator>
      <dc:date>2012-07-06T15:28:31Z</dc:date>
    </item>
    <item>
      <title>Re: How to get one subset like this?</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/How-to-get-one-subset-like-this/m-p/101191#M28411</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Haikuo,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I am totally new to hash. Hash looks like a vey handy appraoch.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Coud you please elaborate a bit how you have built the logic in your hash code (time permitting).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;This simple data set looks a good opportunity to understand it.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Mirisage&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 06 Jul 2012 18:43:16 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/How-to-get-one-subset-like-this/m-p/101191#M28411</guid>
      <dc:creator>Mirisage</dc:creator>
      <dc:date>2012-07-06T18:43:16Z</dc:date>
    </item>
    <item>
      <title>Re: How to get one subset like this?</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/How-to-get-one-subset-like-this/m-p/101192#M28412</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Mirisage,&lt;/P&gt;&lt;P&gt;Hash() object is actually more straightforward than many other data step statements, such as 'set', 'merge', 'update', it is just a little different. And you are correct, Above example is ideal to take a peek into hash():&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data _null_;&lt;/P&gt;&lt;P&gt;&amp;nbsp; if 0 then set have; /*This is to set hash() environment, eg variables, before you can define a hash(), in this case, you can also use: call missing (case_number, case_value);*/&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; dcl hash h(dataset:'have', ordered: 'a',duplicate:'r'); /*This is to define hash(), named 'h', loaded from 'have', with an order 'a' as 'ascending', if there are duplicates by 'key', then only keep the last record ('r' denotes replace)*/&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; h.definekey('case_number'); /*Define search key 'case_number'*/&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; h.definedata(all:'y'); /*Define data element, all :'y' denoting with every thing from 'have'&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; h.definedone(); /*the end of hash() definition*/&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; rc=h.output(dataset:'want'); /output hash 'h' to dataset 'want'*/&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; stop;&lt;/P&gt;&lt;P&gt;run;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Here is the help link, where I 've learned most of my hash():&lt;/P&gt;&lt;P&gt;&lt;A class="active_link" href="http://support.sas.com/documentation/cdl/en/lrdict/64316/HTML/default/viewer.htm#a002576871.htm" title="http://support.sas.com/documentation/cdl/en/lrdict/64316/HTML/default/viewer.htm#a002576871.htm"&gt;http://support.sas.com/documentation/cdl/en/lrdict/64316/HTML/default/viewer.htm#a002576871.htm&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Also there are tons of sugi paper on hash(), pay extra attention on those written by Paul dorfman.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Haikuo&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 06 Jul 2012 19:28:09 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/How-to-get-one-subset-like-this/m-p/101192#M28412</guid>
      <dc:creator>Haikuo</dc:creator>
      <dc:date>2012-07-06T19:28:09Z</dc:date>
    </item>
    <item>
      <title>Re: How to get one subset like this?</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/How-to-get-one-subset-like-this/m-p/101193#M28413</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Haikuo,&lt;/P&gt;&lt;P&gt;Thank you very much for your time and expertise. &lt;/P&gt;&lt;P&gt;Learning resources and your annotated comments are very much appreciated. &lt;/P&gt;&lt;P&gt;Best regards&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Mirisage&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 07 Jul 2012 01:22:20 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/How-to-get-one-subset-like-this/m-p/101193#M28413</guid>
      <dc:creator>Mirisage</dc:creator>
      <dc:date>2012-07-07T01:22:20Z</dc:date>
    </item>
  </channel>
</rss>

