<?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 Using Arrays to sum obs like proc sql sum function in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/Using-Arrays-to-sum-obs-like-proc-sql-sum-function/m-p/45365#M9374</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;An array approach, borrowed examples from LinLin's post:&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 have;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;input naics4 $ taxable1-taxable5;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;cards;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; 1 20 30 40 50 60&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; 1 25 35 45 55 65&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; 1 30 40 50 60 70&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; 2 20 30 40 50 60&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; 2 25 35 45 55 65&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; 3 30 40 50 60 70&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; ;&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;data want (drop=tax:);&lt;/P&gt;&lt;P&gt;do until (last.naics4);&lt;/P&gt;&lt;P&gt;set have;&lt;/P&gt;&lt;P&gt;by naics4;&lt;/P&gt;&lt;P&gt;array tax(*) taxable1-taxable5;&lt;/P&gt;&lt;P&gt;array st(*) sum_tax1-sum_tax5;&lt;/P&gt;&lt;P&gt;do _n_=1 to dim(tax);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; st(_n_)+tax(_n_);&lt;/P&gt;&lt;P&gt;end;&lt;/P&gt;&lt;P&gt;end;&lt;/P&gt;&lt;P&gt;output;&lt;/P&gt;&lt;P&gt;call missing (of _all_);&lt;/P&gt;&lt;P&gt;run;&lt;/P&gt;&lt;P&gt;proc print;run;&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, 03 Feb 2012 19:12:08 GMT</pubDate>
    <dc:creator>Haikuo</dc:creator>
    <dc:date>2012-02-03T19:12:08Z</dc:date>
    <item>
      <title>Using Arrays to sum obs like proc sql sum function</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Using-Arrays-to-sum-obs-like-proc-sql-sum-function/m-p/45362#M9371</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello I am trying to sum a large amount of obs called NAICS4 which have 390 distinct values. The taxable??? colume has 90 distinct columes and will increase monthly. I can do a sum statement in proc sql like this: &lt;/P&gt;&lt;P&gt;proc sql; create table state4SortSum as select&lt;/P&gt;&lt;P&gt;naics4, sum(taxable190) as sumTaxable190, sum(taxable191) as sumTaxable191, sum(taxable390) as sumTaxable390&lt;/P&gt;&lt;P&gt;from rg.state4sort&lt;/P&gt;&lt;P&gt;group by naics4; quit;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;But I am not wanting to write 90+ sum statements, so I tried to write a array:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data stateTest; length item $4;&lt;/P&gt;&lt;P&gt;&amp;nbsp; array txSum{*} taxable190-taxable211 ;&lt;/P&gt;&lt;P&gt;do i = 1 to dim(txSum);&lt;/P&gt;&lt;P&gt;&amp;nbsp; set rg.state4sort;&lt;/P&gt;&lt;P&gt;&amp;nbsp; by naics4;&lt;/P&gt;&lt;P&gt;&amp;nbsp; item =naics4;&lt;/P&gt;&lt;P&gt;&amp;nbsp; tx = sum( of txSum{i})&amp;nbsp; ;&lt;/P&gt;&lt;P&gt;&amp;nbsp; if last.naics4 then output;&lt;/P&gt;&lt;P&gt;end;&lt;/P&gt;&lt;P&gt;drop tx;&lt;/P&gt;&lt;P&gt;run;&lt;/P&gt;&lt;DIV&gt;&lt;STRONG style=": ; color: #000080; font-size: 10pt; font-family: Courier New;"&gt;&lt;P&gt;However this array is only giving me the value of the last obs it runs through for each NAICS4 and I want it to give me the sum of all like it would in SQL. Any help with a better way to get the equivialent of the SQL without writing out everything would be great. &lt;SPAN style="color: #000080; font-size: 10pt; font-family: Courier New;"&gt; &lt;/SPAN&gt;&lt;SPAN style="font-family: Courier New; color: #000080; font-size: 10pt;"&gt; &lt;/SPAN&gt;&amp;nbsp; &lt;STRONG&gt;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #000080; font-size: 10pt; font-family: Courier New;"&gt; &lt;/SPAN&gt;&lt;/P&gt;&lt;/STRONG&gt;&lt;STRONG&gt; &lt;/STRONG&gt;&amp;nbsp; &lt;P&gt;&lt;/P&gt;&lt;TABLE border="0" cellpadding="0" cellspacing="0" style="width: 624pt; border-collapse: collapse;" width="832"&gt;&lt;TBODY&gt;&lt;TR style="height: 12.75pt;"&gt;&lt;TD height="17" style="width: 48pt; height: 12.75pt;" width="64"&gt;naics4&lt;/TD&gt;&lt;TD style="width: 48pt;" width="64"&gt;taxable190&lt;/TD&gt;&lt;TD style="width: 48pt;" width="64"&gt;taxable290&lt;/TD&gt;&lt;TD style="width: 48pt;" width="64"&gt;taxable390&lt;/TD&gt;&lt;TD style="width: 48pt;" width="64"&gt;taxable490&lt;/TD&gt;&lt;TD style="width: 48pt;" width="64"&gt;taxable191&lt;/TD&gt;&lt;TD style="width: 48pt;" width="64"&gt;taxable291&lt;/TD&gt;&lt;TD style="width: 48pt;" width="64"&gt;taxable391&lt;/TD&gt;&lt;TD style="width: 48pt;" width="64"&gt;taxable491&lt;/TD&gt;&lt;TD style="width: 48pt;" width="64"&gt;taxable192&lt;/TD&gt;&lt;TD style="width: 48pt;" width="64"&gt;taxable292&lt;/TD&gt;&lt;TD style="width: 48pt;" width="64"&gt;taxable392&lt;/TD&gt;&lt;TD style="width: 48pt;" width="64"&gt;taxable492&lt;/TD&gt;&lt;/TR&gt;&lt;TR style="height: 12.75pt;"&gt;&lt;TD height="17" style="height: 12.75pt;"&gt;1111&lt;/TD&gt;&lt;TD align="right"&gt;-0.001&lt;/TD&gt;&lt;TD align="right"&gt;-0.001&lt;/TD&gt;&lt;TD align="right"&gt;-0.001&lt;/TD&gt;&lt;TD align="right"&gt;-0.001&lt;/TD&gt;&lt;TD align="right"&gt;-0.001&lt;/TD&gt;&lt;TD align="right"&gt;-0.001&lt;/TD&gt;&lt;TD align="right"&gt;-0.001&lt;/TD&gt;&lt;TD align="right"&gt;-0.001&lt;/TD&gt;&lt;TD align="right"&gt;-0.001&lt;/TD&gt;&lt;TD align="right"&gt;-0.001&lt;/TD&gt;&lt;TD align="right"&gt;-0.001&lt;/TD&gt;&lt;TD align="right"&gt;-0.001&lt;/TD&gt;&lt;/TR&gt;&lt;TR style="height: 12.75pt;"&gt;&lt;TD height="17" style="height: 12.75pt;"&gt;1111&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR style="height: 12.75pt;"&gt;&lt;TD height="17" style="height: 12.75pt;"&gt;1111&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR style="height: 12.75pt;"&gt;&lt;TD height="17" style="height: 12.75pt;"&gt;1112&lt;/TD&gt;&lt;TD align="right"&gt;-0.001&lt;/TD&gt;&lt;TD align="right"&gt;-0.001&lt;/TD&gt;&lt;TD align="right"&gt;-0.001&lt;/TD&gt;&lt;TD align="right"&gt;-0.001&lt;/TD&gt;&lt;TD align="right"&gt;-0.001&lt;/TD&gt;&lt;TD align="right"&gt;-0.001&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD align="right"&gt;-0.001&lt;/TD&gt;&lt;TD align="right"&gt;-0.001&lt;/TD&gt;&lt;TD align="right"&gt;-0.001&lt;/TD&gt;&lt;TD align="right"&gt;-0.001&lt;/TD&gt;&lt;TD align="right"&gt;-0.001&lt;/TD&gt;&lt;/TR&gt;&lt;TR style="height: 12.75pt;"&gt;&lt;TD height="17" style="height: 12.75pt;"&gt;1112&lt;/TD&gt;&lt;TD align="right"&gt;-0.001&lt;/TD&gt;&lt;TD align="right"&gt;-0.001&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD align="right"&gt;-0.001&lt;/TD&gt;&lt;TD align="right"&gt;-0.001&lt;/TD&gt;&lt;TD align="right"&gt;-0.001&lt;/TD&gt;&lt;TD align="right"&gt;-0.001&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD align="right"&gt;-0.001&lt;/TD&gt;&lt;TD align="right"&gt;-0.001&lt;/TD&gt;&lt;TD align="right"&gt;-0.001&lt;/TD&gt;&lt;/TR&gt;&lt;TR style="height: 12.75pt;"&gt;&lt;TD height="17" style="height: 12.75pt;"&gt;1112&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR style="height: 12.75pt;"&gt;&lt;TD height="17" style="height: 12.75pt;"&gt;1112&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR style="height: 12.75pt;"&gt;&lt;TD height="17" style="height: 12.75pt;"&gt;1113&lt;/TD&gt;&lt;TD align="right"&gt;23398&lt;/TD&gt;&lt;TD align="right"&gt;15296&lt;/TD&gt;&lt;TD align="right"&gt;21359&lt;/TD&gt;&lt;TD align="right"&gt;64786&lt;/TD&gt;&lt;TD align="right"&gt;23673&lt;/TD&gt;&lt;TD align="right"&gt;15961&lt;/TD&gt;&lt;TD align="right"&gt;17453&lt;/TD&gt;&lt;TD align="right"&gt;159439&lt;/TD&gt;&lt;TD align="right"&gt;27648&lt;/TD&gt;&lt;TD align="right"&gt;24140&lt;/TD&gt;&lt;TD align="right"&gt;-0.001&lt;/TD&gt;&lt;TD align="right"&gt;236359&lt;/TD&gt;&lt;/TR&gt;&lt;TR style="height: 12.75pt;"&gt;&lt;TD height="17" style="height: 12.75pt;"&gt;1113&lt;/TD&gt;&lt;TD align="right"&gt;-0.001&lt;/TD&gt;&lt;TD align="right"&gt;-0.001&lt;/TD&gt;&lt;TD align="right"&gt;-0.001&lt;/TD&gt;&lt;TD align="right"&gt;-0.001&lt;/TD&gt;&lt;TD align="right"&gt;-0.001&lt;/TD&gt;&lt;TD align="right"&gt;-0.001&lt;/TD&gt;&lt;TD align="right"&gt;-0.001&lt;/TD&gt;&lt;TD align="right"&gt;-0.001&lt;/TD&gt;&lt;TD align="right"&gt;-0.001&lt;/TD&gt;&lt;TD align="right"&gt;-0.001&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD align="right"&gt;-0.001&lt;/TD&gt;&lt;/TR&gt;&lt;TR style="height: 12.75pt;"&gt;&lt;TD height="17" style="height: 12.75pt;"&gt;1113&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD align="right"&gt;-0.001&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD align="right"&gt;-0.001&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD align="right"&gt;-0.001&lt;/TD&gt;&lt;/TR&gt;&lt;TR style="height: 12.75pt;"&gt;&lt;TD height="17" style="height: 12.75pt;"&gt;1113&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD align="right"&gt;-0.001&lt;/TD&gt;&lt;TD align="right"&gt;-0.001&lt;/TD&gt;&lt;TD align="right"&gt;-0.001&lt;/TD&gt;&lt;/TR&gt;&lt;TR style="height: 12.75pt;"&gt;&lt;TD height="17" style="height: 12.75pt;"&gt;1113&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD align="right"&gt;-0.001&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD align="right"&gt;-0.001&lt;/TD&gt;&lt;TD align="right"&gt;131411&lt;/TD&gt;&lt;TD align="right"&gt;-0.001&lt;/TD&gt;&lt;TD align="right"&gt;-0.001&lt;/TD&gt;&lt;TD align="right"&gt;-0.001&lt;/TD&gt;&lt;TD align="right"&gt;4772&lt;/TD&gt;&lt;/TR&gt;&lt;TR style="height: 12.75pt;"&gt;&lt;TD height="17" style="height: 12.75pt;"&gt;1113&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;TD&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR style="height: 12.75pt;"&gt;&lt;TD height="17" style="height: 12.75pt;"&gt;1113&lt;/TD&gt;&lt;TD align="right"&gt;-0.001&lt;/TD&gt;&lt;TD align="right"&gt;-0.001&lt;/TD&gt;&lt;TD align="right"&gt;-0.001&lt;/TD&gt;&lt;TD align="right"&gt;-0.001&lt;/TD&gt;&lt;TD align="right"&gt;-0.001&lt;/TD&gt;&lt;TD align="right"&gt;-0.001&lt;/TD&gt;&lt;TD align="right"&gt;-0.001&lt;/TD&gt;&lt;TD align="right"&gt;-0.001&lt;/TD&gt;&lt;TD align="right"&gt;-0.001&lt;/TD&gt;&lt;TD align="right"&gt;-0.001&lt;/TD&gt;&lt;TD align="right"&gt;-0.001&lt;/TD&gt;&lt;TD align="right"&gt;-0.001&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;/DIV&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 03 Feb 2012 17:18:13 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Using-Arrays-to-sum-obs-like-proc-sql-sum-function/m-p/45362#M9371</guid>
      <dc:creator>Arum</dc:creator>
      <dc:date>2012-02-03T17:18:13Z</dc:date>
    </item>
    <item>
      <title>Re: Using Arrays to sum obs like proc sql sum function</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Using-Arrays-to-sum-obs-like-proc-sql-sum-function/m-p/45363#M9372</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;The ARRAY statement is to allow you to work across mulitple variables in the same observation.&lt;/P&gt;&lt;P&gt;The SUM() function in PROC SQL is to allow you to work across multiple obsevations.&lt;/P&gt;&lt;P&gt;You want to use PROC SUMMARY to sum your variables.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P style="background-color: #ffffff;"&gt;proc summary data=rg.state4sort nway ;&lt;/P&gt;&lt;P style="background-color: #ffffff;"&gt;&amp;nbsp; class naics4;&lt;/P&gt;&lt;P style="background-color: #ffffff;"&gt;&amp;nbsp; var Taxable: ;&lt;/P&gt;&lt;P style="background-color: #ffffff;"&gt;&amp;nbsp; output out=state4SortSum sum=;&lt;/P&gt;&lt;P style="background-color: #ffffff;"&gt;run;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;You can work out how to rename the variables from Taxable ... to SumTaxable...&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 03 Feb 2012 18:18:17 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Using-Arrays-to-sum-obs-like-proc-sql-sum-function/m-p/45363#M9372</guid>
      <dc:creator>Tom</dc:creator>
      <dc:date>2012-02-03T18:18:17Z</dc:date>
    </item>
    <item>
      <title>Re: Using Arrays to sum obs like proc sql sum function</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Using-Arrays-to-sum-obs-like-proc-sql-sum-function/m-p/45364#M9373</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt; anothe approach:&lt;/P&gt;&lt;P&gt;example:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="color: navy; font-size: 12pt; background-color: white; font-family: 'Courier New';"&gt;data&lt;/STRONG&gt;&lt;SPAN style="background-color: white; font-family: 'Courier New'; color: black; font-size: 12pt;"&gt; have;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt; &lt;SPAN style="background-color: white; font-family: 'Courier New'; color: blue; font-size: 12pt;"&gt;input&lt;/SPAN&gt;&lt;SPAN style="background-color: white; font-family: 'Courier New'; color: black; font-size: 12pt;"&gt; naics4 $ taxable1-taxable5;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt; &lt;SPAN style="background-color: white; font-family: 'Courier New'; color: blue; font-size: 12pt;"&gt;cards&lt;/SPAN&gt;&lt;SPAN style="background-color: white; font-family: 'Courier New'; color: black; font-size: 12pt;"&gt;;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="background-color: #ffffc0; font-family: 'Courier New'; color: black; font-size: 12pt;"&gt; 1 20 30 40 50 60&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="background-color: #ffffc0; font-family: 'Courier New'; color: black; font-size: 12pt;"&gt; 1 25 35 45 55 65&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="background-color: #ffffc0; font-family: 'Courier New'; color: black; font-size: 12pt;"&gt; 1 30 40 50 60 70&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="background-color: #ffffc0; font-family: 'Courier New'; color: black; font-size: 12pt;"&gt; 2 20 30 40 50 60&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="background-color: #ffffc0; font-family: 'Courier New'; color: black; font-size: 12pt;"&gt; 2 25 35 45 55 65&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="background-color: #ffffc0; font-family: 'Courier New'; color: black; font-size: 12pt;"&gt; 3 30 40 50 60 70&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="background-color: white; font-family: 'Courier New'; color: black; font-size: 12pt;"&gt; ;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt; &lt;STRONG style="color: navy; font-size: 12pt; background-color: white; font-family: 'Courier New';"&gt;run&lt;/STRONG&gt;&lt;SPAN style="background-color: white; font-family: 'Courier New'; color: black; font-size: 12pt;"&gt;;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="background-color: white; font-family: 'Courier New'; color: black; font-size: 12pt;"&gt; &lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="color: navy; font-size: 12pt; background-color: white; font-family: 'Courier New';"&gt;proc&lt;/STRONG&gt; &lt;STRONG style="color: navy; font-size: 12pt; background-color: white; font-family: 'Courier New';"&gt;sql&lt;/STRONG&gt; &lt;SPAN style="background-color: white; font-family: 'Courier New'; color: blue; font-size: 12pt;"&gt;noprint&lt;/SPAN&gt;&lt;SPAN style="background-color: white; font-family: 'Courier New'; color: black; font-size: 12pt;"&gt;;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="background-color: white; font-family: 'Courier New'; color: blue; font-size: 12pt;"&gt;select&lt;/SPAN&gt;&lt;SPAN style="background-color: white; font-family: 'Courier New'; color: black; font-size: 12pt;"&gt; catt(&lt;/SPAN&gt;&lt;SPAN style="background-color: white; font-family: 'Courier New'; color: purple; font-size: 12pt;"&gt;'sum'&lt;/SPAN&gt;&lt;SPAN style="background-color: white; font-family: 'Courier New'; color: black; font-size: 12pt;"&gt;,&lt;/SPAN&gt;&lt;SPAN style="background-color: white; font-family: 'Courier New'; color: purple; font-size: 12pt;"&gt;'('&lt;/SPAN&gt;&lt;SPAN style="background-color: white; font-family: 'Courier New'; color: black; font-size: 12pt;"&gt;,name,&lt;/SPAN&gt;&lt;SPAN style="background-color: white; font-family: 'Courier New'; color: purple; font-size: 12pt;"&gt;')'&lt;/SPAN&gt;&lt;SPAN style="background-color: white; font-family: 'Courier New'; color: black; font-size: 12pt;"&gt;,&lt;/SPAN&gt;&lt;SPAN style="background-color: white; font-family: 'Courier New'; color: purple; font-size: 12pt;"&gt;' as '&lt;/SPAN&gt;&lt;SPAN style="background-color: white; font-family: 'Courier New'; color: black; font-size: 12pt;"&gt;,catt(&lt;/SPAN&gt;&lt;SPAN style="background-color: white; font-family: 'Courier New'; color: purple; font-size: 12pt;"&gt;' sum'&lt;/SPAN&gt;&lt;SPAN style="background-color: white; font-family: 'Courier New'; color: black; font-size: 12pt;"&gt;,name))&lt;/SPAN&gt;&lt;SPAN style="background-color: white; font-family: 'Courier New'; color: blue; font-size: 12pt;"&gt;into&lt;/SPAN&gt;&lt;SPAN style="background-color: white; font-family: 'Courier New'; color: black; font-size: 12pt;"&gt; : names separated &lt;/SPAN&gt;&lt;SPAN style="background-color: white; font-family: 'Courier New'; color: blue; font-size: 12pt;"&gt;by&lt;/SPAN&gt; &lt;SPAN style="background-color: white; font-family: 'Courier New'; color: purple; font-size: 12pt;"&gt;','&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; &lt;SPAN style="background-color: white; font-family: 'Courier New'; color: blue; font-size: 12pt;"&gt;from&lt;/SPAN&gt;&lt;SPAN style="background-color: white; font-family: 'Courier New'; color: black; font-size: 12pt;"&gt; dictionary.columns&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="background-color: white; font-family: 'Courier New'; color: blue; font-size: 12pt;"&gt;where&lt;/SPAN&gt;&lt;SPAN style="background-color: white; font-family: 'Courier New'; color: black; font-size: 12pt;"&gt; libname=&lt;/SPAN&gt;&lt;SPAN style="background-color: white; font-family: 'Courier New'; color: purple; font-size: 12pt;"&gt;'WORK'&lt;/SPAN&gt; &lt;SPAN style="background-color: white; font-family: 'Courier New'; color: blue; font-size: 12pt;"&gt;and&lt;/SPAN&gt;&lt;SPAN style="background-color: white; font-family: 'Courier New'; color: black; font-size: 12pt;"&gt; memname=&lt;/SPAN&gt;&lt;SPAN style="background-color: white; font-family: 'Courier New'; color: purple; font-size: 12pt;"&gt;'HAVE'&lt;/SPAN&gt; &lt;SPAN style="background-color: white; font-family: 'Courier New'; color: blue; font-size: 12pt;"&gt;and&lt;/SPAN&gt;&lt;SPAN style="background-color: white; font-family: 'Courier New'; color: black; font-size: 12pt;"&gt; upcase(name) like &lt;/SPAN&gt;&lt;SPAN style="background-color: white; font-family: 'Courier New'; color: purple; font-size: 12pt;"&gt;'TAXABLE%'&lt;/SPAN&gt;&lt;SPAN style="background-color: white; font-family: 'Courier New'; color: black; font-size: 12pt;"&gt; ;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="color: navy; font-size: 12pt; background-color: white; font-family: 'Courier New';"&gt;quit&lt;/STRONG&gt;&lt;SPAN style="background-color: white; font-family: 'Courier New'; color: black; font-size: 12pt;"&gt;;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="background-color: white; font-family: 'Courier New'; color: black; font-size: 12pt;"&gt; &lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="background-color: white; font-family: 'Courier New'; color: blue; font-size: 12pt;"&gt;%put&lt;/SPAN&gt;&lt;SPAN style="background-color: white; font-family: 'Courier New'; color: black; font-size: 12pt;"&gt; &amp;amp;names;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="background-color: white; font-family: 'Courier New'; color: black; font-size: 12pt;"&gt; &lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="color: navy; font-size: 12pt; background-color: white; font-family: 'Courier New';"&gt;proc&lt;/STRONG&gt; &lt;STRONG style="color: navy; font-size: 12pt; background-color: white; font-family: 'Courier New';"&gt;sql&lt;/STRONG&gt;&lt;SPAN style="background-color: white; font-family: 'Courier New'; color: black; font-size: 12pt;"&gt;;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; &lt;SPAN style="background-color: white; font-family: 'Courier New'; color: blue; font-size: 12pt;"&gt;create&lt;/SPAN&gt; &lt;SPAN style="background-color: white; font-family: 'Courier New'; color: blue; font-size: 12pt;"&gt;table&lt;/SPAN&gt;&lt;SPAN style="background-color: white; font-family: 'Courier New'; color: black; font-size: 12pt;"&gt; want &lt;/SPAN&gt;&lt;SPAN style="background-color: white; font-family: 'Courier New'; color: blue; font-size: 12pt;"&gt;as&lt;/SPAN&gt; &lt;SPAN style="background-color: white; font-family: 'Courier New'; color: blue; font-size: 12pt;"&gt;select&lt;/SPAN&gt;&lt;SPAN style="background-color: white; font-family: 'Courier New'; color: black; font-size: 12pt;"&gt; naics4,&amp;amp;names&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="background-color: white; font-family: 'Courier New'; color: blue; font-size: 12pt;"&gt;from&lt;/SPAN&gt;&lt;SPAN style="background-color: white; font-family: 'Courier New'; color: black; font-size: 12pt;"&gt; have&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;SPAN style="background-color: white; font-family: 'Courier New'; color: blue; font-size: 12pt;"&gt;group&lt;/SPAN&gt; &lt;SPAN style="background-color: white; font-family: 'Courier New'; color: blue; font-size: 12pt;"&gt;by&lt;/SPAN&gt;&lt;SPAN style="background-color: white; font-family: 'Courier New'; color: black; font-size: 12pt;"&gt; naics4;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="color: navy; font-size: 12pt; background-color: white; font-family: 'Courier New';"&gt;quit&lt;/STRONG&gt;;&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, 03 Feb 2012 18:37:59 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Using-Arrays-to-sum-obs-like-proc-sql-sum-function/m-p/45364#M9373</guid>
      <dc:creator>Linlin</dc:creator>
      <dc:date>2012-02-03T18:37:59Z</dc:date>
    </item>
    <item>
      <title>Using Arrays to sum obs like proc sql sum function</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Using-Arrays-to-sum-obs-like-proc-sql-sum-function/m-p/45365#M9374</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;An array approach, borrowed examples from LinLin's post:&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 have;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;input naics4 $ taxable1-taxable5;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;cards;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; 1 20 30 40 50 60&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; 1 25 35 45 55 65&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; 1 30 40 50 60 70&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; 2 20 30 40 50 60&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; 2 25 35 45 55 65&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; 3 30 40 50 60 70&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; ;&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;data want (drop=tax:);&lt;/P&gt;&lt;P&gt;do until (last.naics4);&lt;/P&gt;&lt;P&gt;set have;&lt;/P&gt;&lt;P&gt;by naics4;&lt;/P&gt;&lt;P&gt;array tax(*) taxable1-taxable5;&lt;/P&gt;&lt;P&gt;array st(*) sum_tax1-sum_tax5;&lt;/P&gt;&lt;P&gt;do _n_=1 to dim(tax);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; st(_n_)+tax(_n_);&lt;/P&gt;&lt;P&gt;end;&lt;/P&gt;&lt;P&gt;end;&lt;/P&gt;&lt;P&gt;output;&lt;/P&gt;&lt;P&gt;call missing (of _all_);&lt;/P&gt;&lt;P&gt;run;&lt;/P&gt;&lt;P&gt;proc print;run;&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, 03 Feb 2012 19:12:08 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Using-Arrays-to-sum-obs-like-proc-sql-sum-function/m-p/45365#M9374</guid>
      <dc:creator>Haikuo</dc:creator>
      <dc:date>2012-02-03T19:12:08Z</dc:date>
    </item>
  </channel>
</rss>

