<?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 BY keeping duplicates in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/GROUP-BY-keeping-duplicates/m-p/568675#M160139</link>
    <description>&lt;P&gt;Please supply example data for your datasets. Use data steps with datalines, so we can easily recreate your datasets for testing.&lt;/P&gt;</description>
    <pubDate>Tue, 25 Jun 2019 09:48:58 GMT</pubDate>
    <dc:creator>Kurt_Bremser</dc:creator>
    <dc:date>2019-06-25T09:48:58Z</dc:date>
    <item>
      <title>GROUP BY keeping duplicates</title>
      <link>https://communities.sas.com/t5/SAS-Programming/GROUP-BY-keeping-duplicates/m-p/568662#M160128</link>
      <description>&lt;P&gt;I am trying to group the towns and Area_segment so that I have a number of customers for each area segment and town. However there are duplicate results in my table which means the group by has not grouped the desired variables. The code is a s follows:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;proc sql;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;---------------------------------------------------------------------------------------------&lt;/SPAN&gt;&lt;BR /&gt;CREATE TABLE WORK.Qopenbranch AS&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;---------------------------------------------------------------------------------------------&lt;/SPAN&gt;&lt;BR /&gt;SELECT&lt;BR /&gt;case when areasegment = ' ' then 'Unknown' else areasegment end as Area_Segment,&lt;BR /&gt;COUNT( calculated Area_Segment) AS nocustomers,&lt;BR /&gt;town&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;---------------------------------------------------------------------------------------------&lt;/SPAN&gt;&lt;BR /&gt;FROM WORK.QProductList AS a LEFT JOIN Cn.Branch AS b&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;---------------------------------------------------------------------------------------------&lt;/SPAN&gt;&lt;BR /&gt;ON&lt;BR /&gt;a.branchcode = b.branchcode&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;---------------------------------------------------------------------------------------------&lt;/SPAN&gt;&lt;BR /&gt;GROUP BY&lt;BR /&gt;town, Area_Segment;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;---------------------------------------------------------------------------------------------&lt;/SPAN&gt;&lt;BR /&gt;quit;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Could someone explain?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thanks&lt;/P&gt;</description>
      <pubDate>Tue, 25 Jun 2019 10:42:31 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/GROUP-BY-keeping-duplicates/m-p/568662#M160128</guid>
      <dc:creator>geds133</dc:creator>
      <dc:date>2019-06-25T10:42:31Z</dc:date>
    </item>
    <item>
      <title>Re: GROUP BY keeping duplicates</title>
      <link>https://communities.sas.com/t5/SAS-Programming/GROUP-BY-keeping-duplicates/m-p/568675#M160139</link>
      <description>&lt;P&gt;Please supply example data for your datasets. Use data steps with datalines, so we can easily recreate your datasets for testing.&lt;/P&gt;</description>
      <pubDate>Tue, 25 Jun 2019 09:48:58 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/GROUP-BY-keeping-duplicates/m-p/568675#M160139</guid>
      <dc:creator>Kurt_Bremser</dc:creator>
      <dc:date>2019-06-25T09:48:58Z</dc:date>
    </item>
    <item>
      <title>Re: GROUP BY keeping duplicates</title>
      <link>https://communities.sas.com/t5/SAS-Programming/GROUP-BY-keeping-duplicates/m-p/568686#M160144</link>
      <description>&lt;P&gt;I cannot provide example data as it is confidential. Apologies, I am new to SAS so am unsure how this should be laid out.&lt;/P&gt;</description>
      <pubDate>Tue, 25 Jun 2019 10:33:50 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/GROUP-BY-keeping-duplicates/m-p/568686#M160144</guid>
      <dc:creator>geds133</dc:creator>
      <dc:date>2019-06-25T10:33:50Z</dc:date>
    </item>
    <item>
      <title>Re: GROUP BY keeping duplicates</title>
      <link>https://communities.sas.com/t5/SAS-Programming/GROUP-BY-keeping-duplicates/m-p/568690#M160146</link>
      <description>&lt;P&gt;Take small subsets of your data, just enough to illustrate the issue.&lt;/P&gt;
&lt;P&gt;Anonymize the necessary columns, then post here.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;SAS code is data driven, without knowing the data it's next to impossible to diagnose anything.&lt;/P&gt;</description>
      <pubDate>Tue, 25 Jun 2019 10:49:02 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/GROUP-BY-keeping-duplicates/m-p/568690#M160146</guid>
      <dc:creator>Kurt_Bremser</dc:creator>
      <dc:date>2019-06-25T10:49:02Z</dc:date>
    </item>
    <item>
      <title>Re: GROUP BY keeping duplicates</title>
      <link>https://communities.sas.com/t5/SAS-Programming/GROUP-BY-keeping-duplicates/m-p/568738#M160168</link>
      <description>&lt;BLOCKQUOTE&gt;&lt;HR /&gt;&lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/277796"&gt;@geds133&lt;/a&gt;&amp;nbsp;wrote:&lt;BR /&gt;
&lt;P&gt;However there are duplicate results in my table which means the group by has not grouped the desired variables.&lt;/P&gt;
&lt;HR /&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;Maybe the "duplicates" only look like duplicates, but in fact there are minor differences between the (character) GROUP BY variable values, e.g. due to leading blanks or invisible characters. (With numeric grouping variables tiny rounding errors could cause the differences.)&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Example:&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;proc print data=test;
run;&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;Result:&lt;/P&gt;
&lt;PRE&gt;Obs        x    state      town

 1      -0.1     NY      New York
 2      22.2     NY      New York
 3      22.8     NY      New York&lt;/PRE&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;proc sql;
select state, town, sum(x) as total
from test
group by state, town;
quit;&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;Result:&lt;/P&gt;
&lt;PRE&gt;state  town                     total
-------------------------------------
NY     New York                 -0.1
NY     New York                  22.8
NY     New York                  22.2&lt;/PRE&gt;
&lt;P&gt;No aggregation has occurred, but aren't there duplicate state-town combinations?&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Solution:&lt;/P&gt;
&lt;LI-SPOILER&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data test;
length x 8 state $3 town $20;
input x 4. town $char20.;
if _n_=2 then substr(town,4,1)='A0'x;
state='NY'||byte(x+10);
cards;
-0.1 New York
22.2New York
22.8New York
;

proc print data=test;
format state $hex6. town $hex18.;
run;&lt;/CODE&gt;&amp;nbsp;&amp;nbsp;&lt;/PRE&gt;
&lt;/LI-SPOILER&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Tue, 25 Jun 2019 13:18:23 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/GROUP-BY-keeping-duplicates/m-p/568738#M160168</guid>
      <dc:creator>FreelanceReinh</dc:creator>
      <dc:date>2019-06-25T13:18:23Z</dc:date>
    </item>
  </channel>
</rss>

