<?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: Need Two-Dimensional Array Help! in SAS Procedures</title>
    <link>https://communities.sas.com/t5/SAS-Procedures/Need-Two-Dimensional-Array-Help/m-p/227718#M54209</link>
    <description>&lt;P&gt;You are mixing the array declaration and array usage with 3 types(like ( ), [ ], { }). Better to stick to one usage. I usually stay with [ ].&lt;/P&gt;&lt;P&gt;I am not sure whether my suggestion will fix your problem.&lt;/P&gt;</description>
    <pubDate>Tue, 29 Sep 2015 17:13:40 GMT</pubDate>
    <dc:creator>KachiM</dc:creator>
    <dc:date>2015-09-29T17:13:40Z</dc:date>
    <item>
      <title>Need Two-Dimensional Array Help!</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/Need-Two-Dimensional-Array-Help/m-p/227712#M54208</link>
      <description>&lt;P&gt;I have patient encounter file with more than 13000 records. File structure is like this.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;No&amp;nbsp; Problemtype1&amp;nbsp;&amp;nbsp; &amp;nbsp; problemtype1b&amp;nbsp;&amp;nbsp;&amp;nbsp; problemtype1c&amp;nbsp; ...&amp;nbsp; problemtype49&amp;nbsp;&amp;nbsp; prblemtype49c &amp;nbsp; outcome1 &amp;nbsp; outcome1b ...&amp;nbsp; outcome49c&lt;/P&gt;&lt;P&gt;-------------------------------------------------------------------------------------------------------------------------------------------------------------- &amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;1 &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; aa&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; bb&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; cc&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; aa &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; bb&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; solved&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; rejected&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; denied&lt;/P&gt;&lt;P&gt;&amp;nbsp;2&lt;/P&gt;&lt;P&gt;...&lt;/P&gt;&lt;P&gt;13000&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I need to count respective outcomes if problemtype is 'aa'.&amp;nbsp; I am using following sample code.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;data test2;&lt;BR /&gt;set testdata;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; array problemType [4,3] ProblemType1 - ProblemType8 ProblemType1b1-ProblemType1b4;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; array final_outcome {4,3} final_outcome1-final_outcome8 final_outcome1b1-final_outcome1b4;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; aa=0;&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Solved = 0;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Denied=0;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Rejected=0;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; do i= 1 to 4;&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; do j=1 to 3;&lt;BR /&gt;&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; if ProblemType(i,j) = 'aa' then aa=aa+ 1;&lt;BR /&gt;&amp;nbsp;&lt;BR /&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp; if ProblemType (i,j) = 'aa' then&lt;BR /&gt;&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; if final_outcome (i,j) = 'resolved' then Solved = Solved + 1 ;&lt;BR /&gt;&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; else if final_outcome (i,j) = Denied' then Denied=Denied+ 1;&lt;BR /&gt;&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; else if final_outcome (i,j) = 'Rejected' then Rejected=Rejected + 1;&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; &amp;nbsp; end;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; end;&lt;BR /&gt;run;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;This sample code works fine.&amp;nbsp; But When I specify the following code while using it on original file having 13000 records&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;array problemType [13000,147]&amp;nbsp; $;&lt;BR /&gt;array final_outcome {13000,147) $ ;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;SAS goes into infinte loop. It&amp;nbsp; does not produce any results.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Please help me with this problem. I am new to SAS.&lt;/P&gt;</description>
      <pubDate>Tue, 29 Sep 2015 17:03:04 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/Need-Two-Dimensional-Array-Help/m-p/227712#M54208</guid>
      <dc:creator>BKPatel</dc:creator>
      <dc:date>2015-09-29T17:03:04Z</dc:date>
    </item>
    <item>
      <title>Re: Need Two-Dimensional Array Help!</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/Need-Two-Dimensional-Array-Help/m-p/227718#M54209</link>
      <description>&lt;P&gt;You are mixing the array declaration and array usage with 3 types(like ( ), [ ], { }). Better to stick to one usage. I usually stay with [ ].&lt;/P&gt;&lt;P&gt;I am not sure whether my suggestion will fix your problem.&lt;/P&gt;</description>
      <pubDate>Tue, 29 Sep 2015 17:13:40 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/Need-Two-Dimensional-Array-Help/m-p/227718#M54209</guid>
      <dc:creator>KachiM</dc:creator>
      <dc:date>2015-09-29T17:13:40Z</dc:date>
    </item>
    <item>
      <title>Re: Need Two-Dimensional Array Help!</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/Need-Two-Dimensional-Array-Help/m-p/227719#M54210</link>
      <description>A SAS data step loops over all rows automatically, you don't need to specify 13000 as the number of rows, only the number of variables of interest.  SAS does not handle datasets like an array or matrix which you may be used to from other languages.</description>
      <pubDate>Tue, 29 Sep 2015 17:16:20 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/Need-Two-Dimensional-Array-Help/m-p/227719#M54210</guid>
      <dc:creator>Reeza</dc:creator>
      <dc:date>2015-09-29T17:16:20Z</dc:date>
    </item>
    <item>
      <title>Re: Need Two-Dimensional Array Help!</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/Need-Two-Dimensional-Array-Help/m-p/227725#M54212</link>
      <description>&lt;P&gt;I also tried using []. It does not change output. Thanks for reply.&lt;/P&gt;</description>
      <pubDate>Tue, 29 Sep 2015 17:43:09 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/Need-Two-Dimensional-Array-Help/m-p/227725#M54212</guid>
      <dc:creator>BKPatel</dc:creator>
      <dc:date>2015-09-29T17:43:09Z</dc:date>
    </item>
    <item>
      <title>Re: Need Two-Dimensional Array Help!</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/Need-Two-Dimensional-Array-Help/m-p/227727#M54213</link>
      <description>&lt;P&gt;You can avoid a lot of trouble by first transforming your data into long form:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data test2;
set testdata;
array pt{*} problemType:;
array o{*} outcome:;
do i = 1 to dim(pt);
	cat = substr(vname(pt{i}), 12);
	problemType = pt{i};
	outcome = o{i};
	output;
	end;
keep No cat problemType outcome;
run; &lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;then use SQL to summarize:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;proc sql;
create table counts as
select problemType, outcome, count(*) as n
from test2
group by problemType, outcome;
quit;&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;and subset and reshape to suit your needs:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;proc transpose data=counts;
where problemType = "aa";
var n;
id outcome;
run;&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;(untested)&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Tue, 29 Sep 2015 17:43:50 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/Need-Two-Dimensional-Array-Help/m-p/227727#M54213</guid>
      <dc:creator>PGStats</dc:creator>
      <dc:date>2015-09-29T17:43:50Z</dc:date>
    </item>
    <item>
      <title>Re: Need Two-Dimensional Array Help!</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/Need-Two-Dimensional-Array-Help/m-p/227728#M54214</link>
      <description>I have shown sample code which is working fine. I have used 4 rows and 3 columns. If I dont mention 13000 as row then it doesnt go in next row.&lt;BR /&gt;&lt;BR /&gt;If there is no need to mention 13000 as row.How to dynamically define 2 dimensional array.&lt;BR /&gt;&lt;BR /&gt;I have used single dimensional dynamic array using&lt;BR /&gt;&lt;BR /&gt;array temp {*} _Character_;&lt;BR /&gt;&lt;BR /&gt;I tried doing&lt;BR /&gt;array temp {*,*} _Character_;&lt;BR /&gt;&lt;BR /&gt;Its not working.&lt;BR /&gt;</description>
      <pubDate>Tue, 29 Sep 2015 17:46:37 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/Need-Two-Dimensional-Array-Help/m-p/227728#M54214</guid>
      <dc:creator>BKPatel</dc:creator>
      <dc:date>2015-09-29T17:46:37Z</dc:date>
    </item>
    <item>
      <title>Re: Need Two-Dimensional Array Help!</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/Need-Two-Dimensional-Array-Help/m-p/227742#M54216</link>
      <description>&lt;P&gt;I used logic.I am getting error.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;ERROR: Array subscript out of range at &amp;nbsp; problemType = pt{i};&lt;BR /&gt;&lt;BR /&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Tue, 29 Sep 2015 19:11:09 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/Need-Two-Dimensional-Array-Help/m-p/227742#M54216</guid>
      <dc:creator>BKPatel</dc:creator>
      <dc:date>2015-09-29T19:11:09Z</dc:date>
    </item>
    <item>
      <title>Re: Need Two-Dimensional Array Help!</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/Need-Two-Dimensional-Array-Help/m-p/227746#M54219</link>
      <description>&lt;P&gt;Maybe your variable names are not exactly as you say and there is a name conflict... My code assumes that the list of &lt;EM&gt;problemType&lt;/EM&gt; variables matches the list of &lt;EM&gt;outcome&lt;/EM&gt; variables (same number and order).&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Try using unrelated variable names to avoid conflict&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data test2;
set testdata;
array pt{*} problemType:;
array o{*} outcome:;
do i = 1 to dim(pt);
	cat = substr(vname(pt{i}), 12);
	pType = pt{i};
	outcm = o{i};
	output;
	end;
keep No cat pType outcm;
run; 

proc sql;
create table counts as
select pType, outcm, count(*) as n
from test2
group by pType, outcm;
quit;

proc transpose data=counts;
where pType = "aa";
var n;
id outcm;
run;&lt;/CODE&gt;&lt;/PRE&gt;</description>
      <pubDate>Tue, 29 Sep 2015 19:37:24 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/Need-Two-Dimensional-Array-Help/m-p/227746#M54219</guid>
      <dc:creator>PGStats</dc:creator>
      <dc:date>2015-09-29T19:37:24Z</dc:date>
    </item>
    <item>
      <title>Re: Need Two-Dimensional Array Help!</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/Need-Two-Dimensional-Array-Help/m-p/227751#M54221</link>
      <description>&lt;P&gt;Proc contents output for input data set looks like ???&lt;/P&gt;</description>
      <pubDate>Tue, 29 Sep 2015 19:56:13 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/Need-Two-Dimensional-Array-Help/m-p/227751#M54221</guid>
      <dc:creator>ballardw</dc:creator>
      <dc:date>2015-09-29T19:56:13Z</dc:date>
    </item>
    <item>
      <title>Re: Need Two-Dimensional Array Help!</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/Need-Two-Dimensional-Array-Help/m-p/227752#M54222</link>
      <description>With Minor changes, This solution worked like magic. Thanks a lot PG.</description>
      <pubDate>Tue, 29 Sep 2015 19:59:38 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/Need-Two-Dimensional-Array-Help/m-p/227752#M54222</guid>
      <dc:creator>BKPatel</dc:creator>
      <dc:date>2015-09-29T19:59:38Z</dc:date>
    </item>
    <item>
      <title>Re: Need Two-Dimensional Array Help!</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/Need-Two-Dimensional-Array-Help/m-p/227755#M54223</link>
      <description>&lt;P&gt;Great! Make sure your variables lists match. Otherwise you will be pairing outcomes with the wrong problem types.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Cheers!&lt;/P&gt;</description>
      <pubDate>Tue, 29 Sep 2015 20:06:41 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/Need-Two-Dimensional-Array-Help/m-p/227755#M54223</guid>
      <dc:creator>PGStats</dc:creator>
      <dc:date>2015-09-29T20:06:41Z</dc:date>
    </item>
  </channel>
</rss>

