<?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: Top 10 retailors according to Script Count for Tpye in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/Top-10-retailors-according-to-Script-Count-for-Tpye/m-p/100884#M21108</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;How about:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE&gt;proc import datafile='c:\type_data.xls' out=have dbms=excel&amp;nbsp; replace;getnames=yes;run;

proc sort data=have;by type descending Script_Count;run;
data temp(drop=i _:);
i=0;_Script_Count=0; _Year2011=0;_Year2012=0;
do until(last.type);
 set have;
 by type;
 i+1;
 if i lt 11 then output;
&amp;nbsp; else do;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; _Script_Count+Script_Count;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; _Year2011+Year2011;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; _Year2012+Year2012;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if last.type then do;
&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; Script_Count=_Script_Count;
&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; Year2011=_Year2011;
&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; Year2012=_Year2012;
&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; Retailors="Other Retailors";
&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; output;
&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; end;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; end;
end;
run;
data _null_;
if 0 then set temp;
declare hash ha(hashexp:16,ordered:'a');
 ha.definekey('k');
 ha.definedata('type','Retailors','Script_Count','Year2011','Year2012');
 ha.definedone();
do until(last.type);
 set temp;
 by type;
 k+1;
 ha.add();
end;
ha.output(dataset: compress(type, ,'ka'));
run;

&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Ksharp&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Fri, 06 Jul 2012 07:37:21 GMT</pubDate>
    <dc:creator>Ksharp</dc:creator>
    <dc:date>2012-07-06T07:37:21Z</dc:date>
    <item>
      <title>Top 10 retailors according to Script Count for Tpye</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Top-10-retailors-according-to-Script-Count-for-Tpye/m-p/100883#M21107</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I have a SAS input as shown in Input tab. It has 2 types, Type A and Type B.&lt;/P&gt;&lt;P&gt;I need to get the top 10 retailors according to script count and 11th raw should be sum of all other retailors and their counts. I need to get this report for both Type A(Output1) and TypeB(Output2).&lt;/P&gt;&lt;P&gt;Total number of raws will vary for each tasks. How do we write a SAS or Proc SQL for this job.&lt;/P&gt;&lt;P&gt;Any input would be a great help.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 06 Jul 2012 06:40:09 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Top-10-retailors-according-to-Script-Count-for-Tpye/m-p/100883#M21107</guid>
      <dc:creator>skallamp</dc:creator>
      <dc:date>2012-07-06T06:40:09Z</dc:date>
    </item>
    <item>
      <title>Re: Top 10 retailors according to Script Count for Tpye</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Top-10-retailors-according-to-Script-Count-for-Tpye/m-p/100884#M21108</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;How about:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE&gt;proc import datafile='c:\type_data.xls' out=have dbms=excel&amp;nbsp; replace;getnames=yes;run;

proc sort data=have;by type descending Script_Count;run;
data temp(drop=i _:);
i=0;_Script_Count=0; _Year2011=0;_Year2012=0;
do until(last.type);
 set have;
 by type;
 i+1;
 if i lt 11 then output;
&amp;nbsp; else do;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; _Script_Count+Script_Count;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; _Year2011+Year2011;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; _Year2012+Year2012;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if last.type then do;
&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; Script_Count=_Script_Count;
&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; Year2011=_Year2011;
&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; Year2012=_Year2012;
&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; Retailors="Other Retailors";
&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; output;
&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; end;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; end;
end;
run;
data _null_;
if 0 then set temp;
declare hash ha(hashexp:16,ordered:'a');
 ha.definekey('k');
 ha.definedata('type','Retailors','Script_Count','Year2011','Year2012');
 ha.definedone();
do until(last.type);
 set temp;
 by type;
 k+1;
 ha.add();
end;
ha.output(dataset: compress(type, ,'ka'));
run;

&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Ksharp&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 06 Jul 2012 07:37:21 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Top-10-retailors-according-to-Script-Count-for-Tpye/m-p/100884#M21108</guid>
      <dc:creator>Ksharp</dc:creator>
      <dc:date>2012-07-06T07:37:21Z</dc:date>
    </item>
    <item>
      <title>Re: Top 10 retailors according to Script Count for Tpye</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Top-10-retailors-according-to-Script-Count-for-Tpye/m-p/100885#M21109</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;proc sort data=have ;&lt;/P&gt;&lt;P&gt;&amp;nbsp; by Type descending Script_Count;&lt;/P&gt;&lt;P&gt;run;&lt;/P&gt;&lt;P&gt;data step;&lt;/P&gt;&lt;P&gt; set have;&lt;/P&gt;&lt;P&gt; by Type;&lt;/P&gt;&lt;P&gt; if first.Type then N = 0;&lt;/P&gt;&lt;P&gt; if N &amp;lt;= 10 then N + 1;&lt;/P&gt;&lt;P&gt; retain N;&lt;/P&gt;&lt;P&gt; if N &amp;gt; 10 then Retailors = 'Others';&lt;/P&gt;&lt;P&gt;run;&lt;/P&gt;&lt;P&gt;proc summary data=step nway;&lt;/P&gt;&lt;P&gt;&amp;nbsp; class Type N&amp;nbsp; Retailors;&lt;/P&gt;&lt;P&gt;&amp;nbsp; var Script_Count Year2011 Year2012;&lt;/P&gt;&lt;P&gt;&amp;nbsp; output out=want(drop=_: N)&lt;/P&gt;&lt;P&gt;&amp;nbsp; sum=;&lt;/P&gt;&lt;P&gt;run;&lt;/P&gt;&lt;P&gt;proc print; run;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 06 Jul 2012 07:38:59 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Top-10-retailors-according-to-Script-Count-for-Tpye/m-p/100885#M21109</guid>
      <dc:creator>Alpay</dc:creator>
      <dc:date>2012-07-06T07:38:59Z</dc:date>
    </item>
  </channel>
</rss>

