<?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: Find highest values and output the variable name in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/Find-highest-values-and-output-the-variable-name/m-p/41270#M8451</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi ... OK, upon a little more thought,&amp;nbsp; I think that this works with ties.&amp;nbsp; If there are multiple large values, this allows&lt;/P&gt;&lt;P&gt;up to 10 variables&amp;nbsp; (Y1-Y10) to hold the 5 largest values and variable names (Z1-Z10) ...&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="font-family: 'courier new', courier;"&gt;* some data ... restricted range of X1-X20 leads to some duplicate values within an observation;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="font-family: 'courier new', courier;"&gt;data x;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="font-family: 'courier new', courier;"&gt;array x(20);&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="font-family: 'courier new', courier;"&gt;do j=1 to 10;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="font-family: 'courier new', courier;"&gt;do k= 1 to 20;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="font-family: 'courier new', courier;"&gt;&amp;nbsp;&amp;nbsp; x(k) = ceil(100*ranuni(999));&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="font-family: 'courier new', courier;"&gt;end;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="font-family: 'courier new', courier;"&gt;output;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="font-family: 'courier new', courier;"&gt;end;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="font-family: 'courier new', courier;"&gt;keep x1-x20;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="font-family: 'courier new', courier;"&gt;run;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="font-family: 'courier new', courier;"&gt;data y;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="font-family: 'courier new', courier;"&gt;set x;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="font-family: 'courier new', courier;"&gt;array x(20);&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="font-family: 'courier new', courier;"&gt;array y(10);&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="font-family: 'courier new', courier;"&gt;array z(10) $32;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="font-family: 'courier new', courier;"&gt;do j = 1 by 1 until(count eq 5 or j eq 10);&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="font-family: 'courier new', courier;"&gt;&amp;nbsp;&amp;nbsp; y(j) = largest(j, of x:);&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="font-family: 'courier new', courier;"&gt;&amp;nbsp;&amp;nbsp; var = whichn(y(j),of x:);&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="font-family: 'courier new', courier;"&gt;&amp;nbsp;&amp;nbsp; z(j) = vname(x(var));&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="font-family: 'courier new', courier;"&gt;&amp;nbsp;&amp;nbsp; if x(var) ne hold then do; count = sum(count,1); hold=x(var); x(var) = 1e6 ; end;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="font-family: 'courier new', courier;"&gt;end;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="font-family: 'courier new', courier;"&gt;keep y: z:;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="font-family: 'courier new', courier;"&gt;run;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&lt;BR /&gt;&lt;/STRONG&gt;&lt;/P&gt;&lt;BR /&gt;&lt;IMG src="https://communities.sas.com/t5/image/serverpage/image-id/11945iC04E5CFED62521DD/image-size/large?v=1.0&amp;amp;px=600" border="0" alt="largest5.png" title="largest5.png" /&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Tue, 02 Aug 2011 23:46:49 GMT</pubDate>
    <dc:creator>MikeZdeb</dc:creator>
    <dc:date>2011-08-02T23:46:49Z</dc:date>
    <item>
      <title>Find highest values and output the variable name</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Find-highest-values-and-output-the-variable-name/m-p/41267#M8448</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I want to array a group of variables and output the 5 highest values into 5 new variables.&amp;nbsp; I know how to do this, but I don't know how to indicate which variable the highest values came from.&amp;nbsp; Does anyone know how this can be done?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks in advance.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 02 Aug 2011 21:47:10 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Find-highest-values-and-output-the-variable-name/m-p/41267#M8448</guid>
      <dc:creator>statadm</dc:creator>
      <dc:date>2011-08-02T21:47:10Z</dc:date>
    </item>
    <item>
      <title>Re: Find highest values and output the variable name</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Find-highest-values-and-output-the-variable-name/m-p/41268#M8449</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi ... not sure how you deal with TIES (multiple variables with same value within an observation), but if there are not any &lt;/P&gt;&lt;P&gt;duplicate large values within an observation, this should work ...&amp;nbsp; &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="font-family: 'courier new', courier;"&gt;* some data;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="font-family: 'courier new', courier;"&gt;data x;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="font-family: 'courier new', courier;"&gt;array x(20);&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="font-family: 'courier new', courier;"&gt;do j=1 to 10;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="font-family: 'courier new', courier;"&gt;do k= 1 to 20;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="font-family: 'courier new', courier;"&gt;&amp;nbsp;&amp;nbsp; x(k) = ceil(10000*ranuni(999));&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="font-family: 'courier new', courier;"&gt;end;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="font-family: 'courier new', courier;"&gt;output;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="font-family: 'courier new', courier;"&gt;end;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="font-family: 'courier new', courier;"&gt;keep x1-x20;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="font-family: 'courier new', courier;"&gt;run;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="font-family: 'courier new', courier;"&gt;* use WHICHN and VNAME to get the variable names ... put into variables z1-z5);&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="font-family: 'courier new', courier;"&gt;data y;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="font-family: 'courier new', courier;"&gt;set x;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="font-family: 'courier new', courier;"&gt;array x(20);&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="font-family: 'courier new', courier;"&gt;array y(5);&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="font-family: 'courier new', courier;"&gt;array z(5) $32;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="font-family: 'courier new', courier;"&gt;do j = 1 to 5;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="font-family: 'courier new', courier;"&gt;&amp;nbsp;&amp;nbsp; y(j) = largest(j, of x:);&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="font-family: 'courier new', courier;"&gt;&amp;nbsp;&amp;nbsp; var = whichn(y(j),of x:);&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="font-family: 'courier new', courier;"&gt;&amp;nbsp;&amp;nbsp; z(j) = vname(x(var));&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="font-family: 'courier new', courier;"&gt;end;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="font-family: 'courier new', courier;"&gt;keep y: z:;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="font-family: 'courier new', courier;"&gt;run;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="font-family: 'courier new', courier;"&gt; y1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; y2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; y3&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; y4&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; y5&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; z1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; z2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; z3&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; z4&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; z5&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="font-family: 'courier new', courier;"&gt;8968&amp;nbsp;&amp;nbsp;&amp;nbsp; 7881&amp;nbsp;&amp;nbsp;&amp;nbsp; 7777&amp;nbsp;&amp;nbsp;&amp;nbsp; 7443&amp;nbsp;&amp;nbsp;&amp;nbsp; 6810&amp;nbsp;&amp;nbsp;&amp;nbsp; x16&amp;nbsp;&amp;nbsp;&amp;nbsp; x19&amp;nbsp;&amp;nbsp;&amp;nbsp; x1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; x9&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; x5&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="font-family: 'courier new', courier;"&gt;9990&amp;nbsp;&amp;nbsp;&amp;nbsp; 9956&amp;nbsp;&amp;nbsp;&amp;nbsp; 9568&amp;nbsp;&amp;nbsp;&amp;nbsp; 9384&amp;nbsp;&amp;nbsp;&amp;nbsp; 9257&amp;nbsp;&amp;nbsp;&amp;nbsp; x9&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; x3&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; x18&amp;nbsp;&amp;nbsp;&amp;nbsp; x4&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; x16&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="font-family: 'courier new', courier;"&gt;9297&amp;nbsp;&amp;nbsp;&amp;nbsp; 8066&amp;nbsp;&amp;nbsp;&amp;nbsp; 7714&amp;nbsp;&amp;nbsp;&amp;nbsp; 7355&amp;nbsp;&amp;nbsp;&amp;nbsp; 7072&amp;nbsp;&amp;nbsp;&amp;nbsp; x11&amp;nbsp;&amp;nbsp;&amp;nbsp; x9&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; x10&amp;nbsp;&amp;nbsp;&amp;nbsp; x18&amp;nbsp;&amp;nbsp;&amp;nbsp; x4&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="font-family: 'courier new', courier;"&gt;9969&amp;nbsp;&amp;nbsp;&amp;nbsp; 9903&amp;nbsp;&amp;nbsp;&amp;nbsp; 8598&amp;nbsp;&amp;nbsp;&amp;nbsp; 8386&amp;nbsp;&amp;nbsp;&amp;nbsp; 8184&amp;nbsp;&amp;nbsp;&amp;nbsp; x10&amp;nbsp;&amp;nbsp;&amp;nbsp; x7&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; x1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; x20&amp;nbsp;&amp;nbsp;&amp;nbsp; x18&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="font-family: 'courier new', courier;"&gt;9947&amp;nbsp;&amp;nbsp;&amp;nbsp; 9512&amp;nbsp;&amp;nbsp;&amp;nbsp; 9398&amp;nbsp;&amp;nbsp;&amp;nbsp; 8740&amp;nbsp;&amp;nbsp;&amp;nbsp; 7714&amp;nbsp;&amp;nbsp;&amp;nbsp; x11&amp;nbsp;&amp;nbsp;&amp;nbsp; x17&amp;nbsp;&amp;nbsp;&amp;nbsp; x18&amp;nbsp;&amp;nbsp;&amp;nbsp; x1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; x4&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="font-family: 'courier new', courier;"&gt;9609&amp;nbsp;&amp;nbsp;&amp;nbsp; 9528&amp;nbsp;&amp;nbsp;&amp;nbsp; 8581&amp;nbsp;&amp;nbsp;&amp;nbsp; 7187&amp;nbsp;&amp;nbsp;&amp;nbsp; 7028&amp;nbsp;&amp;nbsp;&amp;nbsp; x10&amp;nbsp;&amp;nbsp;&amp;nbsp; x4&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; x9&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; x5&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; x7&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="font-family: 'courier new', courier;"&gt;9550&amp;nbsp;&amp;nbsp;&amp;nbsp; 9403&amp;nbsp;&amp;nbsp;&amp;nbsp; 8798&amp;nbsp;&amp;nbsp;&amp;nbsp; 8024&amp;nbsp;&amp;nbsp;&amp;nbsp; 5612&amp;nbsp;&amp;nbsp;&amp;nbsp; x9&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; x6&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; x12&amp;nbsp;&amp;nbsp;&amp;nbsp; x17&amp;nbsp;&amp;nbsp;&amp;nbsp; x2&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="font-family: 'courier new', courier;"&gt;9727&amp;nbsp;&amp;nbsp;&amp;nbsp; 9605&amp;nbsp;&amp;nbsp;&amp;nbsp; 9173&amp;nbsp;&amp;nbsp;&amp;nbsp; 8484&amp;nbsp;&amp;nbsp;&amp;nbsp; 8360&amp;nbsp;&amp;nbsp;&amp;nbsp; x14&amp;nbsp;&amp;nbsp;&amp;nbsp; x18&amp;nbsp;&amp;nbsp;&amp;nbsp; x13&amp;nbsp;&amp;nbsp;&amp;nbsp; x3&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; x2&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="font-family: 'courier new', courier;"&gt;9279&amp;nbsp;&amp;nbsp;&amp;nbsp; 9091&amp;nbsp;&amp;nbsp;&amp;nbsp; 9010&amp;nbsp;&amp;nbsp;&amp;nbsp; 8755&amp;nbsp;&amp;nbsp;&amp;nbsp; 8178&amp;nbsp;&amp;nbsp;&amp;nbsp; x2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; x10&amp;nbsp;&amp;nbsp;&amp;nbsp; x6&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; x14&amp;nbsp;&amp;nbsp;&amp;nbsp; x17&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="font-family: 'courier new', courier;"&gt;9898&amp;nbsp;&amp;nbsp;&amp;nbsp; 8788&amp;nbsp;&amp;nbsp;&amp;nbsp; 8753&amp;nbsp;&amp;nbsp;&amp;nbsp; 8444&amp;nbsp;&amp;nbsp;&amp;nbsp; 8188&amp;nbsp;&amp;nbsp;&amp;nbsp; x13&amp;nbsp;&amp;nbsp;&amp;nbsp; x20&amp;nbsp;&amp;nbsp;&amp;nbsp; x16&amp;nbsp;&amp;nbsp;&amp;nbsp; x19&amp;nbsp;&amp;nbsp;&amp;nbsp; x17&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I guess if there were ties , you could resort to&amp;nbsp; transposing the data and using PROC RANK.&amp;nbsp; You could &lt;/P&gt;&lt;P&gt;end up with more than 5 largest for each observation (or do something more elaborate with the above ARRAY&lt;/P&gt;&lt;P&gt;based code).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&lt;BR /&gt;&lt;/STRONG&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 02 Aug 2011 22:15:03 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Find-highest-values-and-output-the-variable-name/m-p/41268#M8449</guid>
      <dc:creator>MikeZdeb</dc:creator>
      <dc:date>2011-08-02T22:15:03Z</dc:date>
    </item>
    <item>
      <title>Re: Find highest values and output the variable name</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Find-highest-values-and-output-the-variable-name/m-p/41269#M8450</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt; Is there going to be any particular rule about choosing one variable over another in the case of tied values?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 02 Aug 2011 22:33:27 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Find-highest-values-and-output-the-variable-name/m-p/41269#M8450</guid>
      <dc:creator>ballardw</dc:creator>
      <dc:date>2011-08-02T22:33:27Z</dc:date>
    </item>
    <item>
      <title>Re: Find highest values and output the variable name</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Find-highest-values-and-output-the-variable-name/m-p/41270#M8451</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi ... OK, upon a little more thought,&amp;nbsp; I think that this works with ties.&amp;nbsp; If there are multiple large values, this allows&lt;/P&gt;&lt;P&gt;up to 10 variables&amp;nbsp; (Y1-Y10) to hold the 5 largest values and variable names (Z1-Z10) ...&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="font-family: 'courier new', courier;"&gt;* some data ... restricted range of X1-X20 leads to some duplicate values within an observation;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="font-family: 'courier new', courier;"&gt;data x;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="font-family: 'courier new', courier;"&gt;array x(20);&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="font-family: 'courier new', courier;"&gt;do j=1 to 10;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="font-family: 'courier new', courier;"&gt;do k= 1 to 20;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="font-family: 'courier new', courier;"&gt;&amp;nbsp;&amp;nbsp; x(k) = ceil(100*ranuni(999));&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="font-family: 'courier new', courier;"&gt;end;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="font-family: 'courier new', courier;"&gt;output;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="font-family: 'courier new', courier;"&gt;end;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="font-family: 'courier new', courier;"&gt;keep x1-x20;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="font-family: 'courier new', courier;"&gt;run;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="font-family: 'courier new', courier;"&gt;data y;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="font-family: 'courier new', courier;"&gt;set x;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="font-family: 'courier new', courier;"&gt;array x(20);&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="font-family: 'courier new', courier;"&gt;array y(10);&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="font-family: 'courier new', courier;"&gt;array z(10) $32;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="font-family: 'courier new', courier;"&gt;do j = 1 by 1 until(count eq 5 or j eq 10);&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="font-family: 'courier new', courier;"&gt;&amp;nbsp;&amp;nbsp; y(j) = largest(j, of x:);&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="font-family: 'courier new', courier;"&gt;&amp;nbsp;&amp;nbsp; var = whichn(y(j),of x:);&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="font-family: 'courier new', courier;"&gt;&amp;nbsp;&amp;nbsp; z(j) = vname(x(var));&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="font-family: 'courier new', courier;"&gt;&amp;nbsp;&amp;nbsp; if x(var) ne hold then do; count = sum(count,1); hold=x(var); x(var) = 1e6 ; end;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="font-family: 'courier new', courier;"&gt;end;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="font-family: 'courier new', courier;"&gt;keep y: z:;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="font-family: 'courier new', courier;"&gt;run;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&lt;BR /&gt;&lt;/STRONG&gt;&lt;/P&gt;&lt;BR /&gt;&lt;IMG src="https://communities.sas.com/t5/image/serverpage/image-id/11945iC04E5CFED62521DD/image-size/large?v=1.0&amp;amp;px=600" border="0" alt="largest5.png" title="largest5.png" /&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 02 Aug 2011 23:46:49 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Find-highest-values-and-output-the-variable-name/m-p/41270#M8451</guid>
      <dc:creator>MikeZdeb</dc:creator>
      <dc:date>2011-08-02T23:46:49Z</dc:date>
    </item>
    <item>
      <title>Re: Find highest values and output the variable name</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Find-highest-values-and-output-the-variable-name/m-p/41271#M8452</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Thank you so much, I will give this a try.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 03 Aug 2011 12:05:16 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Find-highest-values-and-output-the-variable-name/m-p/41271#M8452</guid>
      <dc:creator>statadm</dc:creator>
      <dc:date>2011-08-03T12:05:16Z</dc:date>
    </item>
    <item>
      <title>Re: Find highest values and output the variable name</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Find-highest-values-and-output-the-variable-name/m-p/41272#M8453</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;There are no rules, but I know there will be no more than 5 values that can be the same.&amp;nbsp; I'm actually looking for the top 3 values, but extended it to 5 in order to pick up a 5 way tie.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 03 Aug 2011 12:05:55 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Find-highest-values-and-output-the-variable-name/m-p/41272#M8453</guid>
      <dc:creator>statadm</dc:creator>
      <dc:date>2011-08-03T12:05:55Z</dc:date>
    </item>
  </channel>
</rss>

