<?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: SAS Sub Ranking in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/SAS-Sub-Ranking/m-p/349505#M81066</link>
    <description>&lt;P&gt;I think you want this?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;proc sql;
SELECT a.variable, a.firm_a, b.firm_b, c.firm_c
FROM have AS a
LEFT JOIN have AS b
ON a.firm_a = b.firm_a
LEFT JOIN have AS c
ON a.firm_a = c.firm_c;
quit;&lt;/CODE&gt;&lt;/PRE&gt;</description>
    <pubDate>Wed, 12 Apr 2017 16:14:33 GMT</pubDate>
    <dc:creator>collinelliot</dc:creator>
    <dc:date>2017-04-12T16:14:33Z</dc:date>
    <item>
      <title>SAS Sub Ranking</title>
      <link>https://communities.sas.com/t5/SAS-Programming/SAS-Sub-Ranking/m-p/349473#M81054</link>
      <description>&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;What would be the best way to transform the data below;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;Variable&lt;/TD&gt;&lt;TD&gt;Firm A&lt;/TD&gt;&lt;TD&gt;Firm B&lt;/TD&gt;&lt;TD&gt;Firm C&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;Africa_wide1&lt;/TD&gt;&lt;TD&gt;Banking &amp;amp; Finance (Band 1)&lt;/TD&gt;&lt;TD&gt;Corporate/M&amp;amp;A (Band 3)&lt;/TD&gt;&lt;TD&gt;Banking &amp;amp; Finance (Band 1)&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;Africa_wide2&lt;/TD&gt;&lt;TD&gt;Corporate/Commercial: OHADA Specialists (Band 1)&lt;/TD&gt;&lt;TD&gt;Dispute Resolution (Band 2)&lt;/TD&gt;&lt;TD&gt;Corporate/M&amp;amp;A (Band 1)&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;Africa_wide3&lt;/TD&gt;&lt;TD&gt;Corporate/M&amp;amp;A (Band 1)&lt;/TD&gt;&lt;TD&gt;Projects &amp;amp; Energy (Band 3)&lt;/TD&gt;&lt;TD&gt;Dispute Resolution (Band 2)&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;Africa_wide4&lt;/TD&gt;&lt;TD&gt;Dispute Resolution (Band 2)&lt;/TD&gt;&lt;TD&gt;Projects &amp;amp; Energy: Mining &amp;amp; Minerals (Band 3)&lt;/TD&gt;&lt;TD&gt;Projects &amp;amp; Energy (Band 1)&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;Africa_wide5&lt;/TD&gt;&lt;TD&gt;Projects &amp;amp; Energy (Band 1)&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;Projects &amp;amp; Energy: Mining &amp;amp; Minerals (Band 2)&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;Africa_wide6&lt;/TD&gt;&lt;TD&gt;Projects &amp;amp; Energy: Mining &amp;amp; Minerals (Band 2)&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;Africa_wide7&lt;/TD&gt;&lt;TD&gt;TMT (Band 3)&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;into the following data set;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;Variable&lt;/TD&gt;&lt;TD&gt;Firm A&lt;/TD&gt;&lt;TD&gt;Firm B&lt;/TD&gt;&lt;TD&gt;Firm C&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;Africa_wide1&lt;/TD&gt;&lt;TD&gt;Banking &amp;amp; Finance (Band 1)&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;Banking &amp;amp; Finance (Band 1)&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;Africa_wide2&lt;/TD&gt;&lt;TD&gt;Corporate/Commercial: OHADA Specialists (Band 1)&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;Africa_wide3&lt;/TD&gt;&lt;TD&gt;Corporate/M&amp;amp;A (Band 1)&lt;/TD&gt;&lt;TD&gt;Corporate/M&amp;amp;A (Band 3)&lt;/TD&gt;&lt;TD&gt;Corporate/M&amp;amp;A (Band 1)&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;Africa_wide4&lt;/TD&gt;&lt;TD&gt;Dispute Resolution (Band 2)&lt;/TD&gt;&lt;TD&gt;Dispute Resolution (Band 2)&lt;/TD&gt;&lt;TD&gt;Dispute Resolution (Band 2)&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;Africa_wide5&lt;/TD&gt;&lt;TD&gt;Projects &amp;amp; Energy (Band 1)&lt;/TD&gt;&lt;TD&gt;Projects &amp;amp; Energy (Band 3)&lt;/TD&gt;&lt;TD&gt;Projects &amp;amp; Energy (Band 1)&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;Africa_wide6&lt;/TD&gt;&lt;TD&gt;Projects &amp;amp; Energy: Mining &amp;amp; Minerals (Band 2)&lt;/TD&gt;&lt;TD&gt;Projects &amp;amp; Energy: Mining &amp;amp; Minerals (Band 3)&lt;/TD&gt;&lt;TD&gt;Projects &amp;amp; Energy: Mining &amp;amp; Minerals (Band 2)&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;Africa_wide7&lt;/TD&gt;&lt;TD&gt;TMT (Band 3)&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Basically I am trying to line up the variables in the correct order across each different firm flag. Some firm flags don't have all of the variables contained within them but I still want them in alphabetical order ascending. There will be more variables to add such as Europe_wide1 to Europe_wide5, for example. Please could you advise on the best way to do this?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thanks&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;Chris&lt;/P&gt;</description>
      <pubDate>Wed, 12 Apr 2017 14:23:20 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/SAS-Sub-Ranking/m-p/349473#M81054</guid>
      <dc:creator>cmoore</dc:creator>
      <dc:date>2017-04-12T14:23:20Z</dc:date>
    </item>
    <item>
      <title>Re: SAS Sub Ranking</title>
      <link>https://communities.sas.com/t5/SAS-Programming/SAS-Sub-Ranking/m-p/349505#M81066</link>
      <description>&lt;P&gt;I think you want this?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;proc sql;
SELECT a.variable, a.firm_a, b.firm_b, c.firm_c
FROM have AS a
LEFT JOIN have AS b
ON a.firm_a = b.firm_a
LEFT JOIN have AS c
ON a.firm_a = c.firm_c;
quit;&lt;/CODE&gt;&lt;/PRE&gt;</description>
      <pubDate>Wed, 12 Apr 2017 16:14:33 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/SAS-Sub-Ranking/m-p/349505#M81066</guid>
      <dc:creator>collinelliot</dc:creator>
      <dc:date>2017-04-12T16:14:33Z</dc:date>
    </item>
    <item>
      <title>Re: SAS Sub Ranking</title>
      <link>https://communities.sas.com/t5/SAS-Programming/SAS-Sub-Ranking/m-p/349571#M81098</link>
      <description>&lt;P&gt;Hi,&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;/*have is your sample*/&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;data temp;&lt;BR /&gt;set have;&lt;BR /&gt;array firm(*) firm_a firm_b firm_c;&lt;BR /&gt;array firm1(*) $75 _firm_a _firm_b _firm_c;&lt;BR /&gt;do _n_=1 to dim(firm);&lt;BR /&gt;firm1(_n_)=compress(firm(_n_),'0123456789');&lt;BR /&gt;end;&lt;BR /&gt;run;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;/*want is your result dataset*/&lt;/STRONG&gt;&lt;BR /&gt;data want;&lt;BR /&gt;if (_n_ = 1) then do;&lt;BR /&gt;if 0 then set temp;&lt;BR /&gt;declare hash myhash(dataset: "temp(keep=_firm_b firm_b");&lt;BR /&gt;rc = myhash.definekey('_firm_b');&lt;BR /&gt;myhash.definedata('firm_b');&lt;BR /&gt;myhash.definedone();&lt;BR /&gt;declare hash myhash2(dataset: "temp(keep=_firm_c firm_c");&lt;BR /&gt;rc = myhash2.definekey('_firm_c');&lt;BR /&gt;myhash2.definedata('firm_c');&lt;BR /&gt;myhash2.definedone();&lt;BR /&gt;end;&lt;BR /&gt;set temp(keep=variable firm_a _firm_a);&lt;BR /&gt;if myhash.find(key:_firm_a) ne 0 then call missing(firm_b);&lt;BR /&gt;if myhash2.find(key:_firm_a) ne 0 then call missing(firm_c);&lt;BR /&gt;drop rc _:;&lt;BR /&gt;run;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Naveen Srinivasan&lt;/P&gt;</description>
      <pubDate>Wed, 12 Apr 2017 19:35:17 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/SAS-Sub-Ranking/m-p/349571#M81098</guid>
      <dc:creator>novinosrin</dc:creator>
      <dc:date>2017-04-12T19:35:17Z</dc:date>
    </item>
    <item>
      <title>Re: SAS Sub Ranking</title>
      <link>https://communities.sas.com/t5/SAS-Programming/SAS-Sub-Ranking/m-p/349590#M81110</link>
      <description>&lt;P&gt;I think that the following will do what you want:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;proc sql;
  create table want as
    SELECT a.variable, a.firm_a, b.firm_b, c.firm_c
      FROM have AS a
        LEFT JOIN have AS b
          ON scan(a.firm_a,1,'(') = scan(b.firm_b,1,'(')
            LEFT JOIN have AS c
              ON scan(a.firm_a,1,'(') = scan(c.firm_c,1,'(')
  ;
quit;
&lt;/PRE&gt;
&lt;P&gt;Art, CEO, AnalystFinder.com&lt;/P&gt;</description>
      <pubDate>Wed, 12 Apr 2017 20:08:15 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/SAS-Sub-Ranking/m-p/349590#M81110</guid>
      <dc:creator>art297</dc:creator>
      <dc:date>2017-04-12T20:08:15Z</dc:date>
    </item>
  </channel>
</rss>

