<?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: Dataset Transformation from 1 observation with 16 var to dataset having 4 obs with 4 var . in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/Dataset-Transformation-from-1-observation-with-16-var-to-dataset/m-p/258457#M49788</link>
    <description>&lt;P&gt;This should work:&lt;/P&gt;
&lt;PRE&gt;data have;
 input res1	res2	res3	res4	res5	res6	res7	res8	res9	res10	res11	res12	res13	res14	res15	res16;
datalines;
1	0.866025	0.57735	0.75	0.866025	1	0.333333	0.57735	0.57735	0.333333	1	0.866025	0.75	0.57735	0.866025	1
;
run;

data want (keep=prod:);
  set have;
  array res{16};
  array prod{4} 8;
  do i=0 to 3;
    do j=1 to 4;
      prod{j}=res{(i*4)+j};
    end;
    output;
  end;
run;&lt;/PRE&gt;</description>
    <pubDate>Wed, 23 Mar 2016 11:16:42 GMT</pubDate>
    <dc:creator>RW9</dc:creator>
    <dc:date>2016-03-23T11:16:42Z</dc:date>
    <item>
      <title>Dataset Transformation from 1 observation with 16 var to dataset having 4 obs with 4 var .</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Dataset-Transformation-from-1-observation-with-16-var-to-dataset/m-p/258454#M49786</link>
      <description>&lt;P&gt;Hi All,&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Please find below the the input dataset containing 1 observation with 16 var.&lt;/P&gt;
&lt;P&gt;which i want to convert as the output dataset having 4 obs&amp;nbsp;with 4 var (4x4 format).&lt;/P&gt;
&lt;P&gt;could you please let me know the logic that i can use to do it programatically.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;TABLE width="1059"&gt;
&lt;TBODY&gt;
&lt;TR&gt;
&lt;TD width="99"&gt;&lt;STRONG&gt;Input dataset&lt;/STRONG&gt;&lt;/TD&gt;
&lt;TD width="64"&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD width="64"&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD width="64"&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD width="64"&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD width="64"&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD width="64"&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD width="64"&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD width="64"&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD width="64"&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD width="64"&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD width="64"&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD width="64"&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD width="64"&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD width="64"&gt;&amp;nbsp;&lt;/TD&gt;
&lt;TD width="64"&gt;&amp;nbsp;&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;&lt;STRONG&gt;res1&lt;/STRONG&gt;&lt;/TD&gt;
&lt;TD&gt;&lt;STRONG&gt;res2&lt;/STRONG&gt;&lt;/TD&gt;
&lt;TD&gt;&lt;STRONG&gt;res3&lt;/STRONG&gt;&lt;/TD&gt;
&lt;TD&gt;&lt;STRONG&gt;res4&lt;/STRONG&gt;&lt;/TD&gt;
&lt;TD&gt;&lt;STRONG&gt;res5&lt;/STRONG&gt;&lt;/TD&gt;
&lt;TD&gt;&lt;STRONG&gt;res6&lt;/STRONG&gt;&lt;/TD&gt;
&lt;TD&gt;&lt;STRONG&gt;res7&lt;/STRONG&gt;&lt;/TD&gt;
&lt;TD&gt;&lt;STRONG&gt;res8&lt;/STRONG&gt;&lt;/TD&gt;
&lt;TD&gt;&lt;STRONG&gt;res9&lt;/STRONG&gt;&lt;/TD&gt;
&lt;TD&gt;&lt;STRONG&gt;res10&lt;/STRONG&gt;&lt;/TD&gt;
&lt;TD&gt;&lt;STRONG&gt;res11&lt;/STRONG&gt;&lt;/TD&gt;
&lt;TD&gt;&lt;STRONG&gt;res12&lt;/STRONG&gt;&lt;/TD&gt;
&lt;TD&gt;&lt;STRONG&gt;res13&lt;/STRONG&gt;&lt;/TD&gt;
&lt;TD&gt;&lt;STRONG&gt;res14&lt;/STRONG&gt;&lt;/TD&gt;
&lt;TD&gt;&lt;STRONG&gt;res15&lt;/STRONG&gt;&lt;/TD&gt;
&lt;TD&gt;&lt;STRONG&gt;res16&lt;/STRONG&gt;&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;1&lt;/TD&gt;
&lt;TD&gt;0.866025&lt;/TD&gt;
&lt;TD&gt;0.57735&lt;/TD&gt;
&lt;TD&gt;0.75&lt;/TD&gt;
&lt;TD&gt;0.866025&lt;/TD&gt;
&lt;TD&gt;1&lt;/TD&gt;
&lt;TD&gt;0.333333&lt;/TD&gt;
&lt;TD&gt;0.57735&lt;/TD&gt;
&lt;TD&gt;0.57735&lt;/TD&gt;
&lt;TD&gt;0.333333&lt;/TD&gt;
&lt;TD&gt;1&lt;/TD&gt;
&lt;TD&gt;0.866025&lt;/TD&gt;
&lt;TD&gt;0.75&lt;/TD&gt;
&lt;TD&gt;0.57735&lt;/TD&gt;
&lt;TD&gt;0.866025&lt;/TD&gt;
&lt;TD&gt;1&lt;/TD&gt;
&lt;/TR&gt;
&lt;/TBODY&gt;
&lt;/TABLE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;STRONG&gt;output dataset to be generated:-&lt;/STRONG&gt;&lt;/P&gt;
&lt;TABLE width="291"&gt;
&lt;TBODY&gt;
&lt;TR&gt;
&lt;TD width="99"&gt;&lt;STRONG&gt;prod1&lt;/STRONG&gt;&lt;/TD&gt;
&lt;TD width="64"&gt;&lt;STRONG&gt;prod2&lt;/STRONG&gt;&lt;/TD&gt;
&lt;TD width="64"&gt;&lt;STRONG&gt;prod3&lt;/STRONG&gt;&lt;/TD&gt;
&lt;TD width="64"&gt;&lt;STRONG&gt;prod4&lt;/STRONG&gt;&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;1&lt;/TD&gt;
&lt;TD&gt;0.866025&lt;/TD&gt;
&lt;TD&gt;0.57735&lt;/TD&gt;
&lt;TD&gt;0.75&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;0.866025404&lt;/TD&gt;
&lt;TD&gt;1&lt;/TD&gt;
&lt;TD&gt;0.333333&lt;/TD&gt;
&lt;TD&gt;0.57735&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;0.577350269&lt;/TD&gt;
&lt;TD&gt;0.333333&lt;/TD&gt;
&lt;TD&gt;1&lt;/TD&gt;
&lt;TD&gt;0.866025&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;0.75&lt;/TD&gt;
&lt;TD&gt;0.57735&lt;/TD&gt;
&lt;TD&gt;0.866025&lt;/TD&gt;
&lt;TD&gt;1&lt;/TD&gt;
&lt;/TR&gt;
&lt;/TBODY&gt;
&lt;/TABLE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;regards,&lt;/P&gt;
&lt;P&gt;karthik.&lt;/P&gt;</description>
      <pubDate>Wed, 23 Mar 2016 10:59:33 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Dataset-Transformation-from-1-observation-with-16-var-to-dataset/m-p/258454#M49786</guid>
      <dc:creator>Chikku</dc:creator>
      <dc:date>2016-03-23T10:59:33Z</dc:date>
    </item>
    <item>
      <title>Re: Dataset Transformation from 1 observation with 16 var to dataset having 4 obs with 4 var .</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Dataset-Transformation-from-1-observation-with-16-var-to-dataset/m-p/258457#M49788</link>
      <description>&lt;P&gt;This should work:&lt;/P&gt;
&lt;PRE&gt;data have;
 input res1	res2	res3	res4	res5	res6	res7	res8	res9	res10	res11	res12	res13	res14	res15	res16;
datalines;
1	0.866025	0.57735	0.75	0.866025	1	0.333333	0.57735	0.57735	0.333333	1	0.866025	0.75	0.57735	0.866025	1
;
run;

data want (keep=prod:);
  set have;
  array res{16};
  array prod{4} 8;
  do i=0 to 3;
    do j=1 to 4;
      prod{j}=res{(i*4)+j};
    end;
    output;
  end;
run;&lt;/PRE&gt;</description>
      <pubDate>Wed, 23 Mar 2016 11:16:42 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Dataset-Transformation-from-1-observation-with-16-var-to-dataset/m-p/258457#M49788</guid>
      <dc:creator>RW9</dc:creator>
      <dc:date>2016-03-23T11:16:42Z</dc:date>
    </item>
    <item>
      <title>Re: Dataset Transformation from 1 observation with 16 var to dataset having 4 obs with 4 var .</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Dataset-Transformation-from-1-observation-with-16-var-to-dataset/m-p/258458#M49789</link>
      <description>&lt;P&gt;A slight modification of RW9's code would use a single DO loop rather than two nested DO loops:&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;do i=1 to 16;
  prod{mod(i-1,4)+1}=res{i};
  if ~mod(i,4) then output;
end;&lt;/CODE&gt;&lt;/PRE&gt;</description>
      <pubDate>Wed, 23 Mar 2016 11:26:00 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Dataset-Transformation-from-1-observation-with-16-var-to-dataset/m-p/258458#M49789</guid>
      <dc:creator>FreelanceReinh</dc:creator>
      <dc:date>2016-03-23T11:26:00Z</dc:date>
    </item>
    <item>
      <title>Re: Dataset Transformation from 1 observation with 16 var to dataset having 4 obs with 4 var .</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Dataset-Transformation-from-1-observation-with-16-var-to-dataset/m-p/258462#M49792</link>
      <description>&lt;P&gt;cou;d not see the complete code,can you resend.&lt;/P&gt;</description>
      <pubDate>Wed, 23 Mar 2016 11:44:54 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Dataset-Transformation-from-1-observation-with-16-var-to-dataset/m-p/258462#M49792</guid>
      <dc:creator>Chikku</dc:creator>
      <dc:date>2016-03-23T11:44:54Z</dc:date>
    </item>
    <item>
      <title>Re: Dataset Transformation from 1 observation with 16 var to dataset having 4 obs with 4 var .</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Dataset-Transformation-from-1-observation-with-16-var-to-dataset/m-p/258466#M49795</link>
      <description>&lt;P&gt;Its all there, in the grey box middle of the post?&lt;/P&gt;</description>
      <pubDate>Wed, 23 Mar 2016 11:54:40 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Dataset-Transformation-from-1-observation-with-16-var-to-dataset/m-p/258466#M49795</guid>
      <dc:creator>RW9</dc:creator>
      <dc:date>2016-03-23T11:54:40Z</dc:date>
    </item>
    <item>
      <title>Re: Dataset Transformation from 1 observation with 16 var to dataset having 4 obs with 4 var .</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Dataset-Transformation-from-1-observation-with-16-var-to-dataset/m-p/258524#M49816</link>
      <description>&lt;P&gt;It looks like a correlation matrix to me. &amp;nbsp;You can alternatively&amp;nbsp;put RES1-RES16 into a two dimensional array. &amp;nbsp;I added some of the compenents of a TYPE=CORR data set _TYPE_ _NAME_. &amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data have;
   input res1-res16;
   datalines;
1  0.866025 0.57735  0.75  
0.866025 1  0.333333 0.57735
0.57735  0.333333 1  0.866025 
0.75  4.57735  0.866025 1
;;;;
   run;

data _2d(type=corr);
   retain _type_ 'CORR';
   length _name_ $32;
   set have;
   array res[4,4] res:;
   array prod[4];
   keep prod: _type_ _name_;;
   do i=1 to hbound(res,1);
      _name_ = vname(prod[i]);
      do j=1 to hbound(res,2);
         prod[j]=res[i,j];
         end;
      output;
      end;
   run;
&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;&lt;IMG src="https://communities.sas.com/t5/image/serverpage/image-id/2430i5ADE64F9A0C559B7/image-size/original?v=mpbl-1&amp;amp;px=-1" border="0" alt="Capture.PNG" title="Capture.PNG" /&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 23 Mar 2016 13:58:19 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Dataset-Transformation-from-1-observation-with-16-var-to-dataset/m-p/258524#M49816</guid>
      <dc:creator>data_null__</dc:creator>
      <dc:date>2016-03-23T13:58:19Z</dc:date>
    </item>
    <item>
      <title>Re: Dataset Transformation from 1 observation with 16 var to dataset having 4 obs with 4 var .</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Dataset-Transformation-from-1-observation-with-16-var-to-dataset/m-p/258547#M49823</link>
      <description>Repostin likely won't help. Internet explorer has problems rendering code from this forum that includes braces. Often a line or more of code will be missing after {</description>
      <pubDate>Wed, 23 Mar 2016 14:39:19 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Dataset-Transformation-from-1-observation-with-16-var-to-dataset/m-p/258547#M49823</guid>
      <dc:creator>ballardw</dc:creator>
      <dc:date>2016-03-23T14:39:19Z</dc:date>
    </item>
    <item>
      <title>Re: Dataset Transformation from 1 observation with 16 var to dataset having 4 obs with 4 var .</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Dataset-Transformation-from-1-observation-with-16-var-to-dataset/m-p/258742#M49901</link>
      <description>&lt;PRE&gt;
It is IML thing.
1)

data have;
   input res1-res16;
   datalines;
1  0.866025 0.57735  0.75  
0.866025 1  0.333333 0.57735
0.57735  0.333333 1  0.866025 
0.75  4.57735  0.866025 1
;;;;
   run;
proc iml;
use have;
read all var _num_ into x;
close;
y=shape(x,4);
create want from y;
append from y;
close;
quit;








2)

data want;
 set have;
 array x{*} _numeric_;
 do i=1 to dim(x) by 4;
  pred1=x{i};pred2=x{i+1};pred3=x{i+2};pred4=x{i+3};
  output;
 end;
 keep pred:;
run;

&lt;/PRE&gt;</description>
      <pubDate>Thu, 24 Mar 2016 07:36:07 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Dataset-Transformation-from-1-observation-with-16-var-to-dataset/m-p/258742#M49901</guid>
      <dc:creator>Ksharp</dc:creator>
      <dc:date>2016-03-24T07:36:07Z</dc:date>
    </item>
  </channel>
</rss>

