<?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: table inside table in SAS Procedures</title>
    <link>https://communities.sas.com/t5/SAS-Procedures/table-inside-table/m-p/104359#M29161</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;PROCs FORMAT and Tabulate&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;First, instead of creating lots of if/then/else code use a format to create groups and text labels.&lt;/P&gt;&lt;P&gt;with your labels one can't tell which end to include in the ranges below. You need to decide that before proceding.&lt;/P&gt;&lt;P&gt;Proc Format library=work;&lt;/P&gt;&lt;P&gt;value age&lt;/P&gt;&lt;P&gt;45 - 49 = '45 to 49'&lt;/P&gt;&lt;P&gt;50 - 54 = '50 to 54'&lt;/P&gt;&lt;P&gt;55 - 59 = '55 to 59'&lt;/P&gt;&lt;P&gt;60 - 64 = '60 to 64'&lt;/P&gt;&lt;P&gt;65 - 70 = '65 to 70'&lt;/P&gt;&lt;P&gt;;&lt;/P&gt;&lt;P&gt;/* assumes you have variable coded 1 is yes 0 is no , if the other way around change the text*/&lt;/P&gt;&lt;P&gt;value yn&lt;/P&gt;&lt;P&gt;1 = 'Yes'&lt;/P&gt;&lt;P&gt;0 = 'No'&lt;/P&gt;&lt;P&gt;;&lt;/P&gt;&lt;P&gt;run;&lt;/P&gt;&lt;P&gt;/* this should make a table similar to what you show. IF ANY OF THE V1 V2 OR V3 ARE MISSING&lt;/P&gt;&lt;P&gt;you may want the option&lt;STRONG&gt; /missing &lt;/STRONG&gt;in class statement.&lt;/P&gt;&lt;P&gt;*/&lt;/P&gt;&lt;P&gt;proc tabulate data=&amp;lt;your data set name here&amp;gt; ;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; class age;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; class v1 v3 ; /* I didn't put V2 in here cause I don't know what your coding looks like */&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; format age age. v1 v3 yn. ;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; table age',&lt;/P&gt;&lt;P&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; v3' *n=''*f=f6.0;&lt;/P&gt;&lt;P&gt;run;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Making actual 2x2 tables within the cells of age and V3 might be more work than it's worth. but you can get similar information with&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;proc tabulate data=&amp;lt;your data set name here&amp;gt; ;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; class age;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; class v1 v2 v3 ; /* I didn't put V2 in here cause I don't know what your coding looks like */&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; format age age. v1 v3 yn. ;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; table age' * V2,&lt;/P&gt;&lt;P&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; v3' * V1 * n=''*f=f6.0;&lt;/P&gt;&lt;P&gt;run;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;LABELS for v1 v2 and v3 will make the table more useful.&lt;/P&gt;&lt;P&gt;Something like:&lt;/P&gt;&lt;P&gt;label V1 = 'Response to question 1';&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Fri, 04 May 2012 19:53:06 GMT</pubDate>
    <dc:creator>ballardw</dc:creator>
    <dc:date>2012-05-04T19:53:06Z</dc:date>
    <item>
      <title>table inside table</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/table-inside-table/m-p/104358#M29160</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;&lt;BR /&gt;Hi all,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I have a table need to creat that looks like the following.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;TABLE border="1" class="jiveBorder" style="BORDER-BOTTOM: #000000 1px solid; BORDER-LEFT: #000000 1px solid; WIDTH: 100%; BORDER-TOP: #000000 1px solid; BORDER-RIGHT: #000000 1px solid;"&gt;&lt;TBODY&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;TABLE border="1" class="jiveBorder" style="BORDER-BOTTOM: #000000 1px solid; BORDER-LEFT: #000000 1px solid; WIDTH: 100%; BORDER-TOP: #000000 1px solid; BORDER-RIGHT: #000000 1px solid;"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TH style="text-align: center; background-color: #6690bc; color: #ffffff; padding: 2px;"&gt;&lt;/TH&gt;&lt;TH style="text-align: center; background-color: #6690bc; color: #ffffff; padding: 2px;"&gt;&lt;STRONG&gt;Yes&lt;/STRONG&gt;&lt;/TH&gt;&lt;TH style="text-align: center; background-color: #6690bc; color: #ffffff; padding: 2px;"&gt;&lt;STRONG&gt;No&lt;/STRONG&gt;&lt;/TH&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD style="padding: 2px;"&gt;age(45,50)&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD style="padding: 2px;"&gt;age(50,55)&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD style="padding: 2px;"&gt;age(55,60)&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD style="padding: 2px;"&gt;age (60,65)&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD style="padding: 2px;"&gt;age(65,70)&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;&lt;/TD&gt;&lt;TD style="padding: 2px;"&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;age is a continous variable, I can do if statement to separate by agecat (45,50),(50,55),(55,60),(60,65),(65,70).&lt;/P&gt;&lt;P&gt;yes and no&amp;nbsp; are two levels from v3.&lt;/P&gt;&lt;P&gt;but each cell need another 2*2 table in side for v1 and v2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I've attached the part of the data.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks,&lt;/P&gt;&lt;P&gt;Christina&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 04 May 2012 18:19:21 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/table-inside-table/m-p/104358#M29160</guid>
      <dc:creator>ChristinaWang</dc:creator>
      <dc:date>2012-05-04T18:19:21Z</dc:date>
    </item>
    <item>
      <title>Re: table inside table</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/table-inside-table/m-p/104359#M29161</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;PROCs FORMAT and Tabulate&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;First, instead of creating lots of if/then/else code use a format to create groups and text labels.&lt;/P&gt;&lt;P&gt;with your labels one can't tell which end to include in the ranges below. You need to decide that before proceding.&lt;/P&gt;&lt;P&gt;Proc Format library=work;&lt;/P&gt;&lt;P&gt;value age&lt;/P&gt;&lt;P&gt;45 - 49 = '45 to 49'&lt;/P&gt;&lt;P&gt;50 - 54 = '50 to 54'&lt;/P&gt;&lt;P&gt;55 - 59 = '55 to 59'&lt;/P&gt;&lt;P&gt;60 - 64 = '60 to 64'&lt;/P&gt;&lt;P&gt;65 - 70 = '65 to 70'&lt;/P&gt;&lt;P&gt;;&lt;/P&gt;&lt;P&gt;/* assumes you have variable coded 1 is yes 0 is no , if the other way around change the text*/&lt;/P&gt;&lt;P&gt;value yn&lt;/P&gt;&lt;P&gt;1 = 'Yes'&lt;/P&gt;&lt;P&gt;0 = 'No'&lt;/P&gt;&lt;P&gt;;&lt;/P&gt;&lt;P&gt;run;&lt;/P&gt;&lt;P&gt;/* this should make a table similar to what you show. IF ANY OF THE V1 V2 OR V3 ARE MISSING&lt;/P&gt;&lt;P&gt;you may want the option&lt;STRONG&gt; /missing &lt;/STRONG&gt;in class statement.&lt;/P&gt;&lt;P&gt;*/&lt;/P&gt;&lt;P&gt;proc tabulate data=&amp;lt;your data set name here&amp;gt; ;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; class age;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; class v1 v3 ; /* I didn't put V2 in here cause I don't know what your coding looks like */&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; format age age. v1 v3 yn. ;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; table age',&lt;/P&gt;&lt;P&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; v3' *n=''*f=f6.0;&lt;/P&gt;&lt;P&gt;run;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Making actual 2x2 tables within the cells of age and V3 might be more work than it's worth. but you can get similar information with&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;proc tabulate data=&amp;lt;your data set name here&amp;gt; ;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; class age;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; class v1 v2 v3 ; /* I didn't put V2 in here cause I don't know what your coding looks like */&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; format age age. v1 v3 yn. ;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; table age' * V2,&lt;/P&gt;&lt;P&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; v3' * V1 * n=''*f=f6.0;&lt;/P&gt;&lt;P&gt;run;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;LABELS for v1 v2 and v3 will make the table more useful.&lt;/P&gt;&lt;P&gt;Something like:&lt;/P&gt;&lt;P&gt;label V1 = 'Response to question 1';&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 04 May 2012 19:53:06 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/table-inside-table/m-p/104359#M29161</guid>
      <dc:creator>ballardw</dc:creator>
      <dc:date>2012-05-04T19:53:06Z</dc:date>
    </item>
  </channel>
</rss>

