<?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 Calculation of Combination of Variable values into counts in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/Calculation-of-Combination-of-Variable-values-into-counts/m-p/19291#M2969</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;It is dataset version.&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;&lt;PRE&gt;data have ;
&amp;nbsp; infile cards dsd truncover;
&amp;nbsp; length var1-var4 $15 ;
&amp;nbsp; input var1-var4 &amp;amp;;
cards;
London,New York,Ireland,Bangalore
Bangalore,Helsinki 
Helsinki,Oslo,Bangalore
Bangalore,London,New York
Oslo,Helsinki
;
run;

data vertical ;
&amp;nbsp; set have;
&amp;nbsp; array v{*} $ 15&amp;nbsp; var1-var4 ;
&amp;nbsp; do i=1 to dim(v);
&amp;nbsp;&amp;nbsp; do j=1 to dim(v);
&amp;nbsp;&amp;nbsp;&amp;nbsp; if i ne j and not missing(v{i}) and not missing(v{j}) 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; city1=v{i};city2=v{j};
&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; end;
&amp;nbsp; end; end;
run;
proc freq noprint;
 tables city1*city2/list nocum nopercent out=x;
run;

proc transpose data=x out=want(drop=_:);
by city1;
var count;
id city2;
run;

proc sql noprint;
 select name into : list separated by ' '
&amp;nbsp; from dictionary.columns 
&amp;nbsp;&amp;nbsp; where libname='WORK' and memname='WANT' and name ne 'city1'
&amp;nbsp;&amp;nbsp;&amp;nbsp; order by name;
quit;
data want(drop=i);
 retain city1 &amp;amp;list;
 set want;
 array v{*} $ 15 &amp;amp;list;
 do i=1 to dim(v);
&amp;nbsp; if missing(v{i}) then v{i}=0;
 end;
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;&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, 23 Dec 2011 07:21:01 GMT</pubDate>
    <dc:creator>Ksharp</dc:creator>
    <dc:date>2011-12-23T07:21:01Z</dc:date>
    <item>
      <title>Calculation of Combination of Variable values into counts</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Calculation-of-Combination-of-Variable-values-into-counts/m-p/19287#M2965</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I am facing some challenges in converting the following dataset into the table mentioned below using SAS.&lt;/P&gt;&lt;P&gt;Please try to give some suggestions on this.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Dataset:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;TABLE border="0" cellpadding="0" cellspacing="0" width="271"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD class="xl65" height="20" width="69"&gt;Var1&lt;/TD&gt;&lt;TD class="xl65" style="border-left: medium none;" width="69"&gt;Var2&lt;/TD&gt;&lt;TD class="xl65" style="border-left: medium none;" width="69"&gt;Var3&lt;/TD&gt;&lt;TD class="xl65" style="border-left: medium none;" width="64"&gt;Var4&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class="xl65" height="20" style="border-top: medium none;"&gt;London&lt;/TD&gt;&lt;TD class="xl65" style="border-left: medium none; border-top: medium none;"&gt;New York&lt;/TD&gt;&lt;TD class="xl65" style="border-left: medium none; border-top: medium none;"&gt;Ireland&lt;/TD&gt;&lt;TD class="xl65" style="border-left: medium none; border-top: medium none;"&gt;Bangalore&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class="xl65" height="20" style="border-top: medium none;"&gt;Bangalore&lt;/TD&gt;&lt;TD class="xl65" style="border-left: medium none; border-top: medium none;"&gt;Helsinki&lt;/TD&gt;&lt;TD class="xl65" style="border-left: medium none; border-top: medium none;"&gt;&lt;/TD&gt;&lt;TD class="xl65" style="border-left: medium none; border-top: medium none;"&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class="xl65" height="20" style="border-top: medium none;"&gt;Helsinki&lt;/TD&gt;&lt;TD class="xl65" style="border-left: medium none; border-top: medium none;"&gt;Oslo&lt;/TD&gt;&lt;TD class="xl65" style="border-left: medium none; border-top: medium none;"&gt;Bangalore&lt;/TD&gt;&lt;TD class="xl65" style="border-left: medium none; border-top: medium none;"&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class="xl65" height="20" style="border-top: medium none;"&gt;Bangalore&lt;/TD&gt;&lt;TD class="xl65" style="border-left: medium none; border-top: medium none;"&gt;London&lt;/TD&gt;&lt;TD class="xl65" style="border-left: medium none; border-top: medium none;"&gt;New York&lt;/TD&gt;&lt;TD class="xl65" style="border-left: medium none; border-top: medium none;"&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class="xl65" height="20" style="border-top: medium none;"&gt;Oslo&lt;/TD&gt;&lt;TD class="xl65" style="border-left: medium none; border-top: medium none;"&gt;Helsinki&lt;/TD&gt;&lt;TD class="xl65" style="border-left: medium none; border-top: medium none;"&gt;&lt;/TD&gt;&lt;TD class="xl65" style="border-left: medium none; border-top: medium none;"&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Output Table.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;TABLE border="0" cellpadding="0" cellspacing="0" width="463"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD class="xl65" height="20" width="69"&gt;&lt;/TD&gt;&lt;TD class="xl65" style="border-left: medium none;" width="69"&gt;Bangalore&lt;/TD&gt;&lt;TD class="xl65" style="border-left: medium none;" width="69"&gt;Helsinki&lt;/TD&gt;&lt;TD class="xl65" style="border-left: medium none;" width="64"&gt;Ireland&lt;/TD&gt;&lt;TD class="xl65" style="border-left: medium none;" width="64"&gt;London&lt;/TD&gt;&lt;TD class="xl65" style="border-left: medium none;" width="64"&gt;New York&lt;/TD&gt;&lt;TD class="xl65" style="border-left: medium none;" width="64"&gt;Oslo&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class="xl65" height="20" style="border-top: medium none;"&gt;Bangalore&lt;/TD&gt;&lt;TD align="right" class="xl65" style="border-left: medium none; border-top: medium none;"&gt;0&lt;/TD&gt;&lt;TD align="right" class="xl65" style="border-left: medium none; border-top: medium none;"&gt;2&lt;/TD&gt;&lt;TD align="right" class="xl65" style="border-left: medium none; border-top: medium none;"&gt;1&lt;/TD&gt;&lt;TD align="right" class="xl65" style="border-left: medium none; border-top: medium none;"&gt;2&lt;/TD&gt;&lt;TD align="right" class="xl65" style="border-left: medium none; border-top: medium none;"&gt;2&lt;/TD&gt;&lt;TD align="right" class="xl65" style="border-left: medium none; border-top: medium none;"&gt;1&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class="xl65" height="20" style="border-top: medium none;"&gt;Helsinki&lt;/TD&gt;&lt;TD align="right" class="xl65" style="border-left: medium none; border-top: medium none;"&gt;2&lt;/TD&gt;&lt;TD align="right" class="xl65" style="border-left: medium none; border-top: medium none;"&gt;0&lt;/TD&gt;&lt;TD class="xl65" style="border-left: medium none; border-top: medium none;"&gt;&lt;/TD&gt;&lt;TD class="xl65" style="border-left: medium none; border-top: medium none;"&gt;&lt;/TD&gt;&lt;TD class="xl65" style="border-left: medium none; border-top: medium none;"&gt;&lt;/TD&gt;&lt;TD align="right" class="xl65" style="border-left: medium none; border-top: medium none;"&gt;2&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class="xl65" height="20" style="border-top: medium none;"&gt;Ireland&lt;/TD&gt;&lt;TD align="right" class="xl65" style="border-left: medium none; border-top: medium none;"&gt;1&lt;/TD&gt;&lt;TD class="xl65" style="border-left: medium none; border-top: medium none;"&gt;&lt;/TD&gt;&lt;TD align="right" class="xl65" style="border-left: medium none; border-top: medium none;"&gt;0&lt;/TD&gt;&lt;TD align="right" class="xl65" style="border-left: medium none; border-top: medium none;"&gt;1&lt;/TD&gt;&lt;TD align="right" class="xl65" style="border-left: medium none; border-top: medium none;"&gt;1&lt;/TD&gt;&lt;TD class="xl65" style="border-left: medium none; border-top: medium none;"&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class="xl65" height="20" style="border-top: medium none;"&gt;London&lt;/TD&gt;&lt;TD align="right" class="xl65" style="border-left: medium none; border-top: medium none;"&gt;2&lt;/TD&gt;&lt;TD class="xl65" style="border-left: medium none; border-top: medium none;"&gt;&lt;/TD&gt;&lt;TD align="right" class="xl65" style="border-left: medium none; border-top: medium none;"&gt;1&lt;/TD&gt;&lt;TD align="right" class="xl65" style="border-left: medium none; border-top: medium none;"&gt;0&lt;/TD&gt;&lt;TD align="right" class="xl65" style="border-left: medium none; border-top: medium none;"&gt;2&lt;/TD&gt;&lt;TD class="xl65" style="border-left: medium none; border-top: medium none;"&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class="xl65" height="20" style="border-top: medium none;"&gt;New York&lt;/TD&gt;&lt;TD align="right" class="xl65" style="border-left: medium none; border-top: medium none;"&gt;2&lt;/TD&gt;&lt;TD class="xl65" style="border-left: medium none; border-top: medium none;"&gt;&lt;/TD&gt;&lt;TD align="right" class="xl65" style="border-left: medium none; border-top: medium none;"&gt;1&lt;/TD&gt;&lt;TD align="right" class="xl65" style="border-left: medium none; border-top: medium none;"&gt;2&lt;/TD&gt;&lt;TD align="right" class="xl65" style="border-left: medium none; border-top: medium none;"&gt;0&lt;/TD&gt;&lt;TD class="xl65" style="border-left: medium none; border-top: medium none;"&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD class="xl65" height="20" style="border-top: medium none;"&gt;Oslo&lt;/TD&gt;&lt;TD align="right" class="xl65" style="border-left: medium none; border-top: medium none;"&gt;1&lt;/TD&gt;&lt;TD align="right" class="xl65" style="border-left: medium none; border-top: medium none;"&gt;2&lt;/TD&gt;&lt;TD class="xl65" style="border-left: medium none; border-top: medium none;"&gt;&lt;/TD&gt;&lt;TD class="xl65" style="border-left: medium none; border-top: medium none;"&gt;&lt;/TD&gt;&lt;TD class="xl65" style="border-left: medium none; border-top: medium none;"&gt;&lt;/TD&gt;&lt;TD align="right" class="xl65" style="border-left: medium none; border-top: medium none;"&gt;0&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&lt;BR /&gt;Regards,&lt;/P&gt;&lt;P&gt;Siddhartha&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 22 Dec 2011 13:15:05 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Calculation-of-Combination-of-Variable-values-into-counts/m-p/19287#M2965</guid>
      <dc:creator>Siddhartha</dc:creator>
      <dc:date>2011-12-22T13:15:05Z</dc:date>
    </item>
    <item>
      <title>Calculation of Combination of Variable values into counts</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Calculation-of-Combination-of-Variable-values-into-counts/m-p/19288#M2966</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; infile cards dsd truncover;&lt;/P&gt;&lt;P&gt;&amp;nbsp; length var1-var4 $15 ;&lt;/P&gt;&lt;P&gt;&amp;nbsp; input var1-var4 &amp;amp;;&lt;/P&gt;&lt;P&gt;cards;&lt;/P&gt;&lt;P&gt;London,New York,Ireland,Bangalore&lt;/P&gt;&lt;P&gt;Bangalore,Helsinki&amp;nbsp; &lt;/P&gt;&lt;P&gt;Helsinki,Oslo,Bangalore &lt;/P&gt;&lt;P&gt;Bangalore,London,New York &lt;/P&gt;&lt;P&gt;Oslo,Helsinki&lt;/P&gt;&lt;P&gt;run;&lt;/P&gt;&lt;P&gt;data vertical ;&lt;/P&gt;&lt;P&gt;&amp;nbsp; set have;&lt;/P&gt;&lt;P&gt;&amp;nbsp; array v var1-var4 ;&lt;/P&gt;&lt;P&gt;&amp;nbsp; do i=1 to 4 while(v(i) ne ' '); &lt;/P&gt;&lt;P&gt;&amp;nbsp; do j=i+1 to 4 while(v(j) ne ' ');&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; city1=v(i);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; city2=v(j);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; output;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; city1=v(j);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; city2=v(i);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; output;&lt;/P&gt;&lt;P&gt;&amp;nbsp; end; end;&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 freq data=vertical;&lt;/P&gt;&lt;P&gt;&amp;nbsp; tables city1*city2 ;&lt;/P&gt;&lt;P&gt;run;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 22 Dec 2011 13:33:13 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Calculation-of-Combination-of-Variable-values-into-counts/m-p/19288#M2966</guid>
      <dc:creator>Tom</dc:creator>
      <dc:date>2011-12-22T13:33:13Z</dc:date>
    </item>
    <item>
      <title>Calculation of Combination of Variable values into counts</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Calculation-of-Combination-of-Variable-values-into-counts/m-p/19289#M2967</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I'd take Tom's approach one step further and add in a proc format and use proc summary rather than proc freq.&amp;nbsp; E.g.:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data have ;&lt;/P&gt;&lt;P&gt;&amp;nbsp; infile cards dsd truncover;&lt;/P&gt;&lt;P&gt;&amp;nbsp; length var1-var4 $15 ;&lt;/P&gt;&lt;P&gt;&amp;nbsp; input var1-var4 &amp;amp;;&lt;/P&gt;&lt;P&gt;cards;&lt;/P&gt;&lt;P&gt;London,New York,Ireland,Bangalore&lt;/P&gt;&lt;P&gt;Bangalore,Helsinki &lt;/P&gt;&lt;P&gt;Helsinki,Oslo,Bangalore&lt;/P&gt;&lt;P&gt;Bangalore,London,New York&lt;/P&gt;&lt;P&gt;Oslo,Helsinki&lt;/P&gt;&lt;P&gt;;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data vertical ;&lt;/P&gt;&lt;P&gt;&amp;nbsp; set have;&lt;/P&gt;&lt;P&gt;&amp;nbsp; array v var1-var4 ;&lt;/P&gt;&lt;P&gt;&amp;nbsp; do i=1 to 4 while(v(i) ne ' ');&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; do j=i+1 to 4 while(v(j) ne ' ');&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; city1=v(i);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; city2=v(j);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; output;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; city=v(j);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; city2=v(i);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; output;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; end;&lt;/P&gt;&lt;P&gt;&amp;nbsp; end;&lt;/P&gt;&lt;P&gt;run;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;proc format;&lt;/P&gt;&lt;P&gt;&amp;nbsp; value $cities&lt;/P&gt;&lt;P&gt;&amp;nbsp; "Bangalore"="Bangalore"&lt;/P&gt;&lt;P&gt;&amp;nbsp; "Helsinki"="Helsinki"&lt;/P&gt;&lt;P&gt;&amp;nbsp; "Ireland"="Ireland"&lt;/P&gt;&lt;P&gt;&amp;nbsp; "London"="London"&lt;/P&gt;&lt;P&gt;&amp;nbsp; "New York"="New York"&lt;/P&gt;&lt;P&gt;&amp;nbsp; "Oslo"="Oslo" ;&lt;/P&gt;&lt;P&gt;run;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;proc summary data=vertical nway completetypes;&lt;/P&gt;&lt;P&gt;&amp;nbsp; class city city2;&lt;/P&gt;&lt;P&gt;&amp;nbsp; output out=need (drop=_type_ rename=(_freq_=count));&lt;/P&gt;&lt;P&gt;&amp;nbsp; format city $cities.;&lt;/P&gt;&lt;P&gt;run;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data need;&lt;/P&gt;&lt;P&gt;&amp;nbsp; set need;&lt;/P&gt;&lt;P&gt;&amp;nbsp; if city eq city2 then count=0;&lt;/P&gt;&lt;P&gt;run;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;proc transpose data=need&lt;/P&gt;&lt;P&gt;&amp;nbsp; out=want (drop=_:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; rename=(&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; col1=Bangalore&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; col2=Helsinki&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; col3=Ireland&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; col4=London&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; col5=New_York&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; col6=Oslo&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ));&lt;/P&gt;&lt;P&gt;&amp;nbsp; by city;&lt;/P&gt;&lt;P&gt;run;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 22 Dec 2011 14:06:18 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Calculation-of-Combination-of-Variable-values-into-counts/m-p/19289#M2967</guid>
      <dc:creator>art297</dc:creator>
      <dc:date>2011-12-22T14:06:18Z</dc:date>
    </item>
    <item>
      <title>Calculation of Combination of Variable values into counts</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Calculation-of-Combination-of-Variable-values-into-counts/m-p/19290#M2968</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Are you sure you need a dataset like this. If it were ,How to name the first column ?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE&gt;data have ;
&amp;nbsp; infile cards dsd truncover;
&amp;nbsp; length var1-var4 $15 ;
&amp;nbsp; input var1-var4 &amp;amp;;
cards;
London,New York,Ireland,Bangalore
Bangalore,Helsinki 
Helsinki,Oslo,Bangalore
Bangalore,London,New York
Oslo,Helsinki
;
run;

data vertical ;
&amp;nbsp; set have;
&amp;nbsp; array v{*} $ 15&amp;nbsp; var1-var4 ;
&amp;nbsp; do i=1 to dim(v);
&amp;nbsp;&amp;nbsp; do j=1 to dim(v);
&amp;nbsp;&amp;nbsp;&amp;nbsp; if i ne j and not missing(v{i}) and not missing(v{j}) 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; city1=v{i};city2=v{j};
&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; end;
&amp;nbsp; end; end;
run;
options missing='0';
proc tabulate data=vertical format=best8.;
class city1 city2;
table city1=' ',city2=' ';
keylabel n=' ';
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;&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, 23 Dec 2011 06:46:55 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Calculation-of-Combination-of-Variable-values-into-counts/m-p/19290#M2968</guid>
      <dc:creator>Ksharp</dc:creator>
      <dc:date>2011-12-23T06:46:55Z</dc:date>
    </item>
    <item>
      <title>Calculation of Combination of Variable values into counts</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Calculation-of-Combination-of-Variable-values-into-counts/m-p/19291#M2969</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;It is dataset version.&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;&lt;PRE&gt;data have ;
&amp;nbsp; infile cards dsd truncover;
&amp;nbsp; length var1-var4 $15 ;
&amp;nbsp; input var1-var4 &amp;amp;;
cards;
London,New York,Ireland,Bangalore
Bangalore,Helsinki 
Helsinki,Oslo,Bangalore
Bangalore,London,New York
Oslo,Helsinki
;
run;

data vertical ;
&amp;nbsp; set have;
&amp;nbsp; array v{*} $ 15&amp;nbsp; var1-var4 ;
&amp;nbsp; do i=1 to dim(v);
&amp;nbsp;&amp;nbsp; do j=1 to dim(v);
&amp;nbsp;&amp;nbsp;&amp;nbsp; if i ne j and not missing(v{i}) and not missing(v{j}) 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; city1=v{i};city2=v{j};
&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; end;
&amp;nbsp; end; end;
run;
proc freq noprint;
 tables city1*city2/list nocum nopercent out=x;
run;

proc transpose data=x out=want(drop=_:);
by city1;
var count;
id city2;
run;

proc sql noprint;
 select name into : list separated by ' '
&amp;nbsp; from dictionary.columns 
&amp;nbsp;&amp;nbsp; where libname='WORK' and memname='WANT' and name ne 'city1'
&amp;nbsp;&amp;nbsp;&amp;nbsp; order by name;
quit;
data want(drop=i);
 retain city1 &amp;amp;list;
 set want;
 array v{*} $ 15 &amp;amp;list;
 do i=1 to dim(v);
&amp;nbsp; if missing(v{i}) then v{i}=0;
 end;
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;&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, 23 Dec 2011 07:21:01 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Calculation-of-Combination-of-Variable-values-into-counts/m-p/19291#M2969</guid>
      <dc:creator>Ksharp</dc:creator>
      <dc:date>2011-12-23T07:21:01Z</dc:date>
    </item>
  </channel>
</rss>

