<?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: proc transpse in SAS Procedures</title>
    <link>https://communities.sas.com/t5/SAS-Procedures/proc-transpse/m-p/132157#M35912</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;An alternative:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data have;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; input Loan&amp;nbsp;&amp;nbsp;&amp;nbsp; RegionThisMth &amp;amp; $14.&amp;nbsp;&amp;nbsp;&amp;nbsp; RegionLastMth &amp;amp; $14.;&lt;/P&gt;&lt;P&gt;cards;&lt;/P&gt;&lt;P&gt;1122&amp;nbsp;&amp;nbsp;&amp;nbsp; Southwest 1233&amp;nbsp;&amp;nbsp;&amp;nbsp; Southwest 1233&lt;/P&gt;&lt;P&gt;22344&amp;nbsp;&amp;nbsp;&amp;nbsp; Southwest 1234&amp;nbsp;&amp;nbsp;&amp;nbsp; Southwest 1234&lt;/P&gt;&lt;P&gt;234&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Southwest 1235&amp;nbsp;&amp;nbsp;&amp;nbsp; Southwest 1235&lt;/P&gt;&lt;P&gt;456&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Northwest&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Eastern&lt;/P&gt;&lt;P&gt;1355&amp;nbsp;&amp;nbsp;&amp;nbsp; Eastern&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Northern 234&lt;/P&gt;&lt;P&gt;2356&amp;nbsp;&amp;nbsp;&amp;nbsp; Northern 234&amp;nbsp;&amp;nbsp;&amp;nbsp; Eastern&lt;/P&gt;&lt;P&gt;456&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Western&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Western&lt;/P&gt;&lt;P&gt;156&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Southwest 1233&amp;nbsp;&amp;nbsp;&amp;nbsp; Southwest 1233&lt;/P&gt;&lt;P&gt;2241&amp;nbsp;&amp;nbsp;&amp;nbsp; Southwest 1234&amp;nbsp;&amp;nbsp;&amp;nbsp; Southwest 1234&lt;/P&gt;&lt;P&gt;1544&amp;nbsp;&amp;nbsp;&amp;nbsp; Southwest 1235&amp;nbsp;&amp;nbsp;&amp;nbsp; Southwest 1235&lt;/P&gt;&lt;P&gt;361&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Northwest&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Northwest&lt;/P&gt;&lt;P&gt;1253&amp;nbsp;&amp;nbsp;&amp;nbsp; Eastern&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Eastern&lt;/P&gt;&lt;P&gt;216&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Northern 234&amp;nbsp;&amp;nbsp;&amp;nbsp; Northern 234&lt;/P&gt;&lt;P&gt;31&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Western&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Western&lt;/P&gt;&lt;P&gt;;&lt;/P&gt;&lt;P&gt;run;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;proc sql noprint;&lt;/P&gt;&lt;P&gt;&amp;nbsp; select distinct quote(compress(RegionThisMth)) into :hreg separated by ', ' from have;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; select distinct quote(compress(RegionThisMth)) into :areg separated by ' ' from have;&lt;/P&gt;&lt;P&gt;&amp;nbsp; select distinct compress(RegionThisMth) into :reg separated by ' ' from have;&lt;/P&gt;&lt;P&gt;&amp;nbsp; select count(distinct compress(RegionThisMth)) into :ct trimmed from have;&lt;/P&gt;&lt;P&gt; quit;&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;data want;&lt;/P&gt;&lt;P&gt;&amp;nbsp; if _n_=1 then do;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; declare hash h(ordered:'y');&lt;/P&gt;&lt;P&gt;&amp;nbsp; h.definekey('RegionThisMth');&lt;/P&gt;&lt;P&gt;&amp;nbsp; h.definedata('RegionThisMth', &amp;amp;hreg, 'total');&lt;/P&gt;&lt;P&gt;&amp;nbsp; h.definedone();&lt;/P&gt;&lt;P&gt;&amp;nbsp; declare hiter hi('h');&lt;/P&gt;&lt;P&gt;&amp;nbsp; end;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; set have end=last;&lt;/P&gt;&lt;P&gt;&amp;nbsp; array t1 &amp;amp;reg;&lt;/P&gt;&lt;P&gt;&amp;nbsp; array t2(7) $20 _temporary_ (&amp;amp;areg);&lt;/P&gt;&lt;P&gt;&amp;nbsp; array t3(7);&lt;/P&gt;&lt;P&gt;&amp;nbsp; RegionLastMth=compress(RegionLastMth);&lt;/P&gt;&lt;P&gt;&amp;nbsp; index=whichc(RegionLastMth, of t2(*));&lt;/P&gt;&lt;P&gt;&amp;nbsp; put RegionThisMth=&amp;nbsp; index= RegionLastMth=;&lt;/P&gt;&lt;P&gt;&amp;nbsp; rc=h.find();&lt;/P&gt;&lt;P&gt;&amp;nbsp; t1(index)+1; put t1(index)=;&lt;/P&gt;&lt;P&gt;&amp;nbsp; total=sum(of t1(*));&lt;/P&gt;&lt;P&gt;&amp;nbsp; rc=h.replace();&lt;/P&gt;&lt;P&gt;&amp;nbsp; call missing (of _all_);&lt;/P&gt;&lt;P&gt;&amp;nbsp; if last then do; &lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; do rc=hi.first() by 0 while (rc=0);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; do i=1 to dim(t3);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; t3(i)+t1(i);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; end;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; output;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; rc=hi.next();&lt;/P&gt;&lt;P&gt;&amp;nbsp; end;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; do i=1 to&amp;nbsp; dim(t3);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; t1(i)=t3(i);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; end;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; RegionThisMth='Grand Total';&lt;/P&gt;&lt;P&gt;&amp;nbsp; Total=sum(of t1(*));&lt;/P&gt;&lt;P&gt;&amp;nbsp; output;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; stop;&lt;/P&gt;&lt;P&gt; end;&lt;/P&gt;&lt;P&gt; keep RegionThisMth &amp;amp;reg total;&lt;/P&gt;&lt;P&gt;&amp;nbsp; run;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Haikuo&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Tue, 05 Nov 2013 05:36:32 GMT</pubDate>
    <dc:creator>Haikuo</dc:creator>
    <dc:date>2013-11-05T05:36:32Z</dc:date>
    <item>
      <title>proc transpse</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/proc-transpse/m-p/132155#M35910</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I have a attached an excel spreadsheet as follows;&amp;nbsp; ColumnA is a set of loans that need to be counted.&amp;nbsp; Column B is the label to be shown vertically(rows).&amp;nbsp; Column C is similar to Column B however it needs to be shown horizontally (column).&amp;nbsp; I need to do a proc transpose or something similar to display the final dataset just like the pivot tab in the spreadsheet. Notice that some of the fields in the column B (row) have spaces.&amp;nbsp; How can I account for this. Would I need to do a proc format?&amp;nbsp; The name of the initial dataset is&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data region;&lt;/P&gt;&lt;P&gt;set region2;&lt;/P&gt;&lt;P&gt;run;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 04 Nov 2013 01:50:40 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/proc-transpse/m-p/132155#M35910</guid>
      <dc:creator>gnt1986</dc:creator>
      <dc:date>2013-11-04T01:50:40Z</dc:date>
    </item>
    <item>
      <title>Re: proc transpse</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/proc-transpse/m-p/132156#M35911</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;&amp;nbsp;&amp;nbsp;&amp;nbsp; input Loan&amp;nbsp;&amp;nbsp;&amp;nbsp; RegionThisMth &amp;amp; $14.&amp;nbsp;&amp;nbsp;&amp;nbsp; RegionLastMth &amp;amp; $14.;&lt;/P&gt;&lt;P&gt;cards;&lt;/P&gt;&lt;P&gt;1122&amp;nbsp;&amp;nbsp;&amp;nbsp; Southwest 1233&amp;nbsp;&amp;nbsp;&amp;nbsp; Southwest 1233&lt;/P&gt;&lt;P&gt;22344&amp;nbsp;&amp;nbsp;&amp;nbsp; Southwest 1234&amp;nbsp;&amp;nbsp;&amp;nbsp; Southwest 1234&lt;/P&gt;&lt;P&gt;234&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Southwest 1235&amp;nbsp;&amp;nbsp;&amp;nbsp; Southwest 1235&lt;/P&gt;&lt;P&gt;456&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Northwest&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Eastern&lt;/P&gt;&lt;P&gt;1355&amp;nbsp;&amp;nbsp;&amp;nbsp; Eastern&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Northern 234&lt;/P&gt;&lt;P&gt;2356&amp;nbsp;&amp;nbsp;&amp;nbsp; Northern 234&amp;nbsp;&amp;nbsp;&amp;nbsp; Eastern&lt;/P&gt;&lt;P&gt;456&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Western&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Western&lt;/P&gt;&lt;P&gt;156&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Southwest 1233&amp;nbsp;&amp;nbsp;&amp;nbsp; Southwest 1233&lt;/P&gt;&lt;P&gt;2241&amp;nbsp;&amp;nbsp;&amp;nbsp; Southwest 1234&amp;nbsp;&amp;nbsp;&amp;nbsp; Southwest 1234&lt;/P&gt;&lt;P&gt;1544&amp;nbsp;&amp;nbsp;&amp;nbsp; Southwest 1235&amp;nbsp;&amp;nbsp;&amp;nbsp; Southwest 1235&lt;/P&gt;&lt;P&gt;361&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Northwest&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Northwest&lt;/P&gt;&lt;P&gt;1253&amp;nbsp;&amp;nbsp;&amp;nbsp; Eastern&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Eastern&lt;/P&gt;&lt;P&gt;216&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Northern 234&amp;nbsp;&amp;nbsp;&amp;nbsp; Northern 234&lt;/P&gt;&lt;P&gt;31&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Western&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Western&lt;/P&gt;&lt;P&gt;;&lt;/P&gt;&lt;P&gt;run;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ods output CrossTabFreqs=CrossTabFreqs(keep=Frequency RegionThisMth RegionLastMth );&lt;/P&gt;&lt;P&gt;proc freq data=have;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; table RegionThisMth*RegionLastMth;&lt;/P&gt;&lt;P&gt;run;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data want;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; length RegionLastMth RegionThisMth $ 20;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; set CrossTabFreqs;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if RegionThisMth='' then do;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; RegionThisMth='Grand Total';&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; order=1;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; end;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; else do;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; RegionThisMth=RegionThisMth;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; order=0;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; end;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if RegionLastMth='' then RegionLastMth='Grand Total';&lt;/P&gt;&lt;P&gt;run;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;proc sort data=want;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; by&amp;nbsp; order RegionThisMth;&lt;/P&gt;&lt;P&gt;run;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;proc transpose data=want out=trans(drop=order _name_ _label_);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; by&amp;nbsp; order RegionThisMth;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; id RegionLastMth;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; var Frequency;&lt;/P&gt;&lt;P&gt;run;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks,&lt;/P&gt;&lt;P&gt;Jagadish&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 04 Nov 2013 02:22:47 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/proc-transpse/m-p/132156#M35911</guid>
      <dc:creator>Jagadishkatam</dc:creator>
      <dc:date>2013-11-04T02:22:47Z</dc:date>
    </item>
    <item>
      <title>Re: proc transpse</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/proc-transpse/m-p/132157#M35912</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;An alternative:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data have;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; input Loan&amp;nbsp;&amp;nbsp;&amp;nbsp; RegionThisMth &amp;amp; $14.&amp;nbsp;&amp;nbsp;&amp;nbsp; RegionLastMth &amp;amp; $14.;&lt;/P&gt;&lt;P&gt;cards;&lt;/P&gt;&lt;P&gt;1122&amp;nbsp;&amp;nbsp;&amp;nbsp; Southwest 1233&amp;nbsp;&amp;nbsp;&amp;nbsp; Southwest 1233&lt;/P&gt;&lt;P&gt;22344&amp;nbsp;&amp;nbsp;&amp;nbsp; Southwest 1234&amp;nbsp;&amp;nbsp;&amp;nbsp; Southwest 1234&lt;/P&gt;&lt;P&gt;234&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Southwest 1235&amp;nbsp;&amp;nbsp;&amp;nbsp; Southwest 1235&lt;/P&gt;&lt;P&gt;456&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Northwest&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Eastern&lt;/P&gt;&lt;P&gt;1355&amp;nbsp;&amp;nbsp;&amp;nbsp; Eastern&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Northern 234&lt;/P&gt;&lt;P&gt;2356&amp;nbsp;&amp;nbsp;&amp;nbsp; Northern 234&amp;nbsp;&amp;nbsp;&amp;nbsp; Eastern&lt;/P&gt;&lt;P&gt;456&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Western&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Western&lt;/P&gt;&lt;P&gt;156&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Southwest 1233&amp;nbsp;&amp;nbsp;&amp;nbsp; Southwest 1233&lt;/P&gt;&lt;P&gt;2241&amp;nbsp;&amp;nbsp;&amp;nbsp; Southwest 1234&amp;nbsp;&amp;nbsp;&amp;nbsp; Southwest 1234&lt;/P&gt;&lt;P&gt;1544&amp;nbsp;&amp;nbsp;&amp;nbsp; Southwest 1235&amp;nbsp;&amp;nbsp;&amp;nbsp; Southwest 1235&lt;/P&gt;&lt;P&gt;361&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Northwest&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Northwest&lt;/P&gt;&lt;P&gt;1253&amp;nbsp;&amp;nbsp;&amp;nbsp; Eastern&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Eastern&lt;/P&gt;&lt;P&gt;216&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Northern 234&amp;nbsp;&amp;nbsp;&amp;nbsp; Northern 234&lt;/P&gt;&lt;P&gt;31&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Western&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Western&lt;/P&gt;&lt;P&gt;;&lt;/P&gt;&lt;P&gt;run;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;proc sql noprint;&lt;/P&gt;&lt;P&gt;&amp;nbsp; select distinct quote(compress(RegionThisMth)) into :hreg separated by ', ' from have;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; select distinct quote(compress(RegionThisMth)) into :areg separated by ' ' from have;&lt;/P&gt;&lt;P&gt;&amp;nbsp; select distinct compress(RegionThisMth) into :reg separated by ' ' from have;&lt;/P&gt;&lt;P&gt;&amp;nbsp; select count(distinct compress(RegionThisMth)) into :ct trimmed from have;&lt;/P&gt;&lt;P&gt; quit;&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;data want;&lt;/P&gt;&lt;P&gt;&amp;nbsp; if _n_=1 then do;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; declare hash h(ordered:'y');&lt;/P&gt;&lt;P&gt;&amp;nbsp; h.definekey('RegionThisMth');&lt;/P&gt;&lt;P&gt;&amp;nbsp; h.definedata('RegionThisMth', &amp;amp;hreg, 'total');&lt;/P&gt;&lt;P&gt;&amp;nbsp; h.definedone();&lt;/P&gt;&lt;P&gt;&amp;nbsp; declare hiter hi('h');&lt;/P&gt;&lt;P&gt;&amp;nbsp; end;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; set have end=last;&lt;/P&gt;&lt;P&gt;&amp;nbsp; array t1 &amp;amp;reg;&lt;/P&gt;&lt;P&gt;&amp;nbsp; array t2(7) $20 _temporary_ (&amp;amp;areg);&lt;/P&gt;&lt;P&gt;&amp;nbsp; array t3(7);&lt;/P&gt;&lt;P&gt;&amp;nbsp; RegionLastMth=compress(RegionLastMth);&lt;/P&gt;&lt;P&gt;&amp;nbsp; index=whichc(RegionLastMth, of t2(*));&lt;/P&gt;&lt;P&gt;&amp;nbsp; put RegionThisMth=&amp;nbsp; index= RegionLastMth=;&lt;/P&gt;&lt;P&gt;&amp;nbsp; rc=h.find();&lt;/P&gt;&lt;P&gt;&amp;nbsp; t1(index)+1; put t1(index)=;&lt;/P&gt;&lt;P&gt;&amp;nbsp; total=sum(of t1(*));&lt;/P&gt;&lt;P&gt;&amp;nbsp; rc=h.replace();&lt;/P&gt;&lt;P&gt;&amp;nbsp; call missing (of _all_);&lt;/P&gt;&lt;P&gt;&amp;nbsp; if last then do; &lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; do rc=hi.first() by 0 while (rc=0);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; do i=1 to dim(t3);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; t3(i)+t1(i);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; end;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; output;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; rc=hi.next();&lt;/P&gt;&lt;P&gt;&amp;nbsp; end;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; do i=1 to&amp;nbsp; dim(t3);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; t1(i)=t3(i);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; end;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; RegionThisMth='Grand Total';&lt;/P&gt;&lt;P&gt;&amp;nbsp; Total=sum(of t1(*));&lt;/P&gt;&lt;P&gt;&amp;nbsp; output;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; stop;&lt;/P&gt;&lt;P&gt; end;&lt;/P&gt;&lt;P&gt; keep RegionThisMth &amp;amp;reg total;&lt;/P&gt;&lt;P&gt;&amp;nbsp; run;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Haikuo&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 05 Nov 2013 05:36:32 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/proc-transpse/m-p/132157#M35912</guid>
      <dc:creator>Haikuo</dc:creator>
      <dc:date>2013-11-05T05:36:32Z</dc:date>
    </item>
  </channel>
</rss>

