<?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: Collapsing rows given several conditions and applying different functions in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/Collapsing-rows-given-several-conditions-and-applying-different/m-p/759095#M239814</link>
    <description>&lt;P&gt;Not sure if your date is DDMMYY or MMDDYY. Here in Europe it's DDMMYY.&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data have;
input 
ID $ Customer $ Date : ddmmyy10. PROD $ SUM Digital Random_field $;
format Date date9.;
cards;
ID1	C1	05.05.2021	P1	15	1	AAA
ID2	C1	05.05.2021	P1	16	0	AAA
ID3	C2	06.05.2021	P2	21	1	BBB
;
run;

PROC MEANS data=have(drop=ID) SUM MEAN nway noprint;
 CLASS Customer Date PROD;
 var SUM Digital;
 output out=want(drop=_TYPE_ SUM_mean Digital_sum) sum= mean= / autoname;
run;

proc print; run;
/* end of program */&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;Regards,&lt;/P&gt;
&lt;P&gt;Koen&lt;/P&gt;</description>
    <pubDate>Tue, 03 Aug 2021 17:12:40 GMT</pubDate>
    <dc:creator>sbxkoenk</dc:creator>
    <dc:date>2021-08-03T17:12:40Z</dc:date>
    <item>
      <title>Collapsing rows given several conditions and applying different functions</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Collapsing-rows-given-several-conditions-and-applying-different/m-p/759053#M239793</link>
      <description>&lt;P&gt;Good day everyone !&amp;nbsp;&lt;/P&gt;&lt;P&gt;Currently I'm solving one complicated task and got stuck.&lt;/P&gt;&lt;P&gt;Better explain on example:&lt;/P&gt;&lt;P&gt;I have:&lt;/P&gt;&lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;ID&lt;/TD&gt;&lt;TD&gt;Customer&lt;/TD&gt;&lt;TD&gt;Date&lt;/TD&gt;&lt;TD&gt;PROD&lt;/TD&gt;&lt;TD&gt;SUM&lt;/TD&gt;&lt;TD&gt;Digital&lt;/TD&gt;&lt;TD&gt;Random field&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;ID1&lt;/TD&gt;&lt;TD&gt;C1&lt;/TD&gt;&lt;TD&gt;05.05.2021&lt;/TD&gt;&lt;TD&gt;P1&lt;/TD&gt;&lt;TD&gt;15&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;AAA&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;ID2&lt;/TD&gt;&lt;TD&gt;C1&lt;/TD&gt;&lt;TD&gt;05.05.2021&lt;/TD&gt;&lt;TD&gt;P1&lt;/TD&gt;&lt;TD&gt;16&lt;/TD&gt;&lt;TD&gt;0&lt;/TD&gt;&lt;TD&gt;AAA&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;ID3&lt;/TD&gt;&lt;TD&gt;C2&lt;/TD&gt;&lt;TD&gt;06.05.2021&lt;/TD&gt;&lt;TD&gt;P2&lt;/TD&gt;&lt;TD&gt;21&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;BBB&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Given this data set I need to collapse rows when Customer, Date and Prod are equal. In fact, it is one deal, written on a different rows. Field SUM I need to sum up when collapsing, Digital - need to take average of rows. Random Field rows are identical in a group of deals.&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;As an output:&lt;/P&gt;&lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;Customer&lt;/TD&gt;&lt;TD&gt;Date&lt;/TD&gt;&lt;TD&gt;PROD&lt;/TD&gt;&lt;TD&gt;SUM&lt;/TD&gt;&lt;TD&gt;Digital&lt;/TD&gt;&lt;TD&gt;Random field&lt;/TD&gt;&lt;TD&gt;Count rows&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;C1&lt;/TD&gt;&lt;TD&gt;05.05.2021&lt;/TD&gt;&lt;TD&gt;P1&lt;/TD&gt;&lt;TD&gt;31&lt;/TD&gt;&lt;TD&gt;0.5&lt;/TD&gt;&lt;TD&gt;AAA&lt;/TD&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;C2&lt;/TD&gt;&lt;TD&gt;06.05.2021&lt;/TD&gt;&lt;TD&gt;P2&lt;/TD&gt;&lt;TD&gt;21&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;BBB&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&amp;nbsp; &amp;nbsp;&lt;/P&gt;&lt;P&gt;Please help, this is really complicated to me &lt;span class="lia-unicode-emoji" title=":grinning_face_with_big_eyes:"&gt;😃&lt;/span&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Tue, 03 Aug 2021 15:33:40 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Collapsing-rows-given-several-conditions-and-applying-different/m-p/759053#M239793</guid>
      <dc:creator>Banker337</dc:creator>
      <dc:date>2021-08-03T15:33:40Z</dc:date>
    </item>
    <item>
      <title>Re: Collapsing rows given several conditions and applying different functions</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Collapsing-rows-given-several-conditions-and-applying-different/m-p/759090#M239811</link>
      <description>&lt;P&gt;Well, I figured it out)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;proc sql noprint; 
  create table output as 
    select Customer, Date, Prod, 
		Randomfield
      ,sum(Sum) as Sum 
      ,avg(Digital) as Digital
      ,count(*) as count
  from work.data_test
  group by Customer, Date, Prod 
;quit;&lt;/CODE&gt;&lt;/PRE&gt;</description>
      <pubDate>Tue, 03 Aug 2021 17:05:23 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Collapsing-rows-given-several-conditions-and-applying-different/m-p/759090#M239811</guid>
      <dc:creator>Banker337</dc:creator>
      <dc:date>2021-08-03T17:05:23Z</dc:date>
    </item>
    <item>
      <title>Re: Collapsing rows given several conditions and applying different functions</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Collapsing-rows-given-several-conditions-and-applying-different/m-p/759095#M239814</link>
      <description>&lt;P&gt;Not sure if your date is DDMMYY or MMDDYY. Here in Europe it's DDMMYY.&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data have;
input 
ID $ Customer $ Date : ddmmyy10. PROD $ SUM Digital Random_field $;
format Date date9.;
cards;
ID1	C1	05.05.2021	P1	15	1	AAA
ID2	C1	05.05.2021	P1	16	0	AAA
ID3	C2	06.05.2021	P2	21	1	BBB
;
run;

PROC MEANS data=have(drop=ID) SUM MEAN nway noprint;
 CLASS Customer Date PROD;
 var SUM Digital;
 output out=want(drop=_TYPE_ SUM_mean Digital_sum) sum= mean= / autoname;
run;

proc print; run;
/* end of program */&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;Regards,&lt;/P&gt;
&lt;P&gt;Koen&lt;/P&gt;</description>
      <pubDate>Tue, 03 Aug 2021 17:12:40 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Collapsing-rows-given-several-conditions-and-applying-different/m-p/759095#M239814</guid>
      <dc:creator>sbxkoenk</dc:creator>
      <dc:date>2021-08-03T17:12:40Z</dc:date>
    </item>
    <item>
      <title>Re: Collapsing rows given several conditions and applying different functions</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Collapsing-rows-given-several-conditions-and-applying-different/m-p/759103#M239817</link>
      <description>&lt;P&gt;Hi:&lt;/P&gt;
&lt;P&gt;&amp;nbsp; And to add to the list of possible solutions, here's a PROC REPORT solution:&lt;/P&gt;
&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Cynthia_sas_0-1628012048427.png" style="width: 400px;"&gt;&lt;img src="https://communities.sas.com/t5/image/serverpage/image-id/62218i46D437EDCDD76FD7/image-size/medium?v=v2&amp;amp;px=400" role="button" title="Cynthia_sas_0-1628012048427.png" alt="Cynthia_sas_0-1628012048427.png" /&gt;&lt;/span&gt;&lt;/P&gt;
&lt;P&gt;And, TABULATE would do it too, although the arrangement of variables needs to change a bit for TABULATE to do the collapsing and summarizing:&lt;/P&gt;
&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Cynthia_sas_1-1628012281232.png" style="width: 400px;"&gt;&lt;img src="https://communities.sas.com/t5/image/serverpage/image-id/62219i3128047F7BE9D112/image-size/medium?v=v2&amp;amp;px=400" role="button" title="Cynthia_sas_1-1628012281232.png" alt="Cynthia_sas_1-1628012281232.png" /&gt;&lt;/span&gt;&lt;/P&gt;
&lt;P&gt;Hope this gives you more ideas.&lt;/P&gt;
&lt;P&gt;Cynthia&lt;/P&gt;</description>
      <pubDate>Tue, 03 Aug 2021 17:38:36 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Collapsing-rows-given-several-conditions-and-applying-different/m-p/759103#M239817</guid>
      <dc:creator>Cynthia_sas</dc:creator>
      <dc:date>2021-08-03T17:38:36Z</dc:date>
    </item>
  </channel>
</rss>

