<?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: Group rows in PROC TABULATE in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/Group-rows-in-PROC-TABULATE/m-p/646306#M193303</link>
    <description>Your answer is in your cross post to &lt;A href="https://stackoverflow.com/questions/61673882/group-rows-in-proc-tabulate" target="_blank"&gt;https://stackoverflow.com/questions/61673882/group-rows-in-proc-tabulate&lt;/A&gt;</description>
    <pubDate>Fri, 08 May 2020 19:30:21 GMT</pubDate>
    <dc:creator>RichardDeVen</dc:creator>
    <dc:date>2020-05-08T19:30:21Z</dc:date>
    <item>
      <title>Group rows in PROC TABULATE</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Group-rows-in-PROC-TABULATE/m-p/646132#M193244</link>
      <description>&lt;P&gt;Hello everyone,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I have the following (fake) crime data about offenders:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;PRE&gt;/* Some fake-data */
DATA offenders;
INPUT id :$12. crime :4. offenderSex :$1. count :3.;
INFORMAT id $12.;
INFILE DATALINES DSD;
DATALINES;
1,110,f,3
2,32,f,1
3,31,m,1
4,113,m,1
5,110,m,1
6,31,m,1
7,31,m,1
8,110,f,2
9,113,m,1
10,31,m,1
11,113,m,1
12,110,f,1
13,32,m,1
14,31,m,1
15,31,m,1
16,31,m,1
17,110,f,2
18,113,m,2
19,31,m,1
20,31,m,1
21,110,m,4
22,32,f,1
23,31,m,1
24,31,m,1
25,110,f,4
26,110,m,1
27,110,m,1
28,110,m,2
29,32,m,1
30,113,f,1
31,32,m,1
32,31,f,1
33,110,m,1
34,32,f,1
35,113,m,2
36,31,m,1
37,113,m,1
38,110,f,1
39,113,u,2
;
RUN;

proc format;
 value crimes 110 = 'Theft'
		      113 = 'Robbery'
			  32 = 'Assault'
              31 = 'Minor assault';
run;&lt;/PRE&gt;&lt;P&gt;I use the following code to create a crosstable:&lt;/P&gt;&lt;PRE&gt;proc tabulate;
format crime crimes.;
freq count;
class crime offenderSex;
table crime="Type of crime", offenderSex="Sex of the offender" /misstext="0";
run;&lt;/PRE&gt;&lt;P&gt;Now, I'd like to group the rows, so that the totals for different categories are shown:&lt;/P&gt;&lt;PRE&gt;                           SEX&lt;BR /&gt;                           m   f&lt;BR /&gt;Assault
Minor assault
TOTAL VIOLENT CRIMES
Theft
Robbery
TOTAL PROPERTY CRIMES&lt;/PRE&gt;&lt;P&gt;I've already tried to create another format for the 'crime' variable, so that I can use "TABLE CATEGORY * crime" within PROC TABULATE. However, then I get it like this, which is not exactly, what I want:&lt;/P&gt;&lt;PRE&gt;                                      SEX&lt;BR /&gt;                                      m   f&lt;BR /&gt;VIOLENT CRIME   Assault&lt;BR /&gt;                Minor Assault&lt;BR /&gt;PROPERTY CRIMES Robbery&lt;BR /&gt;                Theft&lt;BR /&gt;                Burglary&lt;/PRE&gt;&lt;P&gt;Can anyone please explain me, how to do this? Thank you!&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Fri, 08 May 2020 08:56:09 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Group-rows-in-PROC-TABULATE/m-p/646132#M193244</guid>
      <dc:creator>dstuder</dc:creator>
      <dc:date>2020-05-08T08:56:09Z</dc:date>
    </item>
    <item>
      <title>Re: Group rows in PROC TABULATE</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Group-rows-in-PROC-TABULATE/m-p/646306#M193303</link>
      <description>Your answer is in your cross post to &lt;A href="https://stackoverflow.com/questions/61673882/group-rows-in-proc-tabulate" target="_blank"&gt;https://stackoverflow.com/questions/61673882/group-rows-in-proc-tabulate&lt;/A&gt;</description>
      <pubDate>Fri, 08 May 2020 19:30:21 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Group-rows-in-PROC-TABULATE/m-p/646306#M193303</guid>
      <dc:creator>RichardDeVen</dc:creator>
      <dc:date>2020-05-08T19:30:21Z</dc:date>
    </item>
    <item>
      <title>Re: Group rows in PROC TABULATE</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Group-rows-in-PROC-TABULATE/m-p/646327#M193319</link>
      <description>&lt;P&gt;Hi, as always, want to show a PROC REPORT approach to this. Output is:&lt;/P&gt;
&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Cynthia_sas_0-1588979114563.png" style="width: 400px;"&gt;&lt;img src="https://communities.sas.com/t5/image/serverpage/image-id/39226i58B280CFA6D3AED2/image-size/medium?v=v2&amp;amp;px=400" role="button" title="Cynthia_sas_0-1588979114563.png" alt="Cynthia_sas_0-1588979114563.png" /&gt;&lt;/span&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;code is:&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;/* Some fake-data */
** create format first;
proc format;
 value crimes 110 = 'Theft'
		      113 = 'Robbery'
			  32 = 'Assault'
              31 = 'Minor assault';
  value grpf 31,32 = 'Violent Crimes'
             110,113 = 'Property Crimes';
run;

DATA offenders;
  length grpvar $30 charcrime $30;
INPUT id :$12. crime :4. offenderSex :$1. count :3.;
INFORMAT id $12.;
INFILE DATALINES DSD;
grpvar = put(crime,grpf.);
charcrime = put(crime,crimes.);
return;
DATALINES;
...same datalines...
;
RUN;
 
title;
options missing=0;
proc report data=offenders
  style(summary)=Header;
  column grpvar charcrime count,offenderSex;
  define grpvar / group noprint;
  define charcrime / group 'Type of Crime'
         style(column)=Header;
  define offenderSex / across 'Sex of Offender';
  define count / sum ' ';
  break after grpvar/ summarize;
  compute charcrime;
    if upcase(_break_) = 'GRPVAR' then do;
	   if grpvar = 'Property Crimes' then
	      charcrime = 'Total Property Crimes';
	   else if grpvar = 'Violent Crimes' then 
	      charcrime = 'Total Violent Crimes';
    end; 
  endcomp;
run;&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;This did involve making a few new variables but it made the PROC REPORT easier to code.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Cynthia&lt;/P&gt;</description>
      <pubDate>Fri, 08 May 2020 23:06:03 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Group-rows-in-PROC-TABULATE/m-p/646327#M193319</guid>
      <dc:creator>Cynthia_sas</dc:creator>
      <dc:date>2020-05-08T23:06:03Z</dc:date>
    </item>
  </channel>
</rss>

