<?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 duplicates in SAS Data Management</title>
    <link>https://communities.sas.com/t5/SAS-Data-Management/Collapsing-duplicates/m-p/621024#M18722</link>
    <description>&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;
data have;
input (CenterID      Organ ) ($);
cards;
1                  Heart
1                  Lung
1                  Kidney
2                  Heart
3                  Heart 
3                  Liver
4                  Heart
4                  Lung
5                  Liver
6                  Lung
7                  Heart
7                 Lung
7                 Liver
7                 Kidney
;

data want;
 do until(last.centerid);
  set have;
  by centerid;
  length want $100;
  want=catx('+',want,organ);
 end;
 drop organ;
run;&lt;/CODE&gt;&lt;/PRE&gt;</description>
    <pubDate>Thu, 30 Jan 2020 00:38:48 GMT</pubDate>
    <dc:creator>novinosrin</dc:creator>
    <dc:date>2020-01-30T00:38:48Z</dc:date>
    <item>
      <title>Collapsing duplicates</title>
      <link>https://communities.sas.com/t5/SAS-Data-Management/Collapsing-duplicates/m-p/621020#M18721</link>
      <description>&lt;P&gt;I have a dataset that lists my center ID and the organs transplanted at that center ID.&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I need to convert the dataset to tell me at each unique center ID how many and which organs are transplanted.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;What the data looks like:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Center ID&amp;nbsp; &amp;nbsp; &amp;nbsp; Organ&lt;/P&gt;&lt;P&gt;1&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Heart&lt;/P&gt;&lt;P&gt;1&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Lung&lt;/P&gt;&lt;P&gt;1&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Kidney&lt;/P&gt;&lt;P&gt;2&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Heart&lt;/P&gt;&lt;P&gt;3&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Heart&amp;nbsp;&lt;/P&gt;&lt;P&gt;3&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Liver&lt;/P&gt;&lt;P&gt;4&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Heart&lt;/P&gt;&lt;P&gt;4&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Lung&lt;/P&gt;&lt;P&gt;5&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Liver&lt;/P&gt;&lt;P&gt;6&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Lung&lt;/P&gt;&lt;P&gt;7&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Heart&lt;/P&gt;&lt;P&gt;7&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Lung&lt;/P&gt;&lt;P&gt;7&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Liver&lt;/P&gt;&lt;P&gt;7&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;Kidney&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;What I need it to look like:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Center ID&amp;nbsp; &amp;nbsp; &amp;nbsp; Organ&lt;/P&gt;&lt;P&gt;1&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Heart+Lung+Kidney&lt;/P&gt;&lt;P&gt;2&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Heart&lt;/P&gt;&lt;P&gt;3&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Heart+Liver&lt;/P&gt;&lt;P&gt;4&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Heart+Lung&lt;/P&gt;&lt;P&gt;5&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Liver&lt;/P&gt;&lt;P&gt;6&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Lung&lt;/P&gt;&lt;P&gt;7&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; Heart+Lung+Liver+Kidney&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;The last column can be coded for the different combinations of organs. Any help will be truly appreciated!!&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 30 Jan 2020 00:03:13 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Data-Management/Collapsing-duplicates/m-p/621020#M18721</guid>
      <dc:creator>Kashvig</dc:creator>
      <dc:date>2020-01-30T00:03:13Z</dc:date>
    </item>
    <item>
      <title>Re: Collapsing duplicates</title>
      <link>https://communities.sas.com/t5/SAS-Data-Management/Collapsing-duplicates/m-p/621024#M18722</link>
      <description>&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;
data have;
input (CenterID      Organ ) ($);
cards;
1                  Heart
1                  Lung
1                  Kidney
2                  Heart
3                  Heart 
3                  Liver
4                  Heart
4                  Lung
5                  Liver
6                  Lung
7                  Heart
7                 Lung
7                 Liver
7                 Kidney
;

data want;
 do until(last.centerid);
  set have;
  by centerid;
  length want $100;
  want=catx('+',want,organ);
 end;
 drop organ;
run;&lt;/CODE&gt;&lt;/PRE&gt;</description>
      <pubDate>Thu, 30 Jan 2020 00:38:48 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Data-Management/Collapsing-duplicates/m-p/621024#M18722</guid>
      <dc:creator>novinosrin</dc:creator>
      <dc:date>2020-01-30T00:38:48Z</dc:date>
    </item>
    <item>
      <title>Re: Collapsing duplicates</title>
      <link>https://communities.sas.com/t5/SAS-Data-Management/Collapsing-duplicates/m-p/621026#M18723</link>
      <description>&lt;P&gt;Here is one option:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data have;&lt;BR /&gt;infile datalines;&lt;BR /&gt;input centerId 1. organ:$20.;&lt;BR /&gt;datalines;&lt;BR /&gt;1 Heart&lt;BR /&gt;1 Lung&lt;BR /&gt;1 Kidney&lt;BR /&gt;2 Heart&lt;BR /&gt;3 Heart &lt;BR /&gt;3 Liver&lt;BR /&gt;4 Heart&lt;BR /&gt;4 Lung&lt;BR /&gt;5 Liver&lt;BR /&gt;6 Lung&lt;BR /&gt;7 Heart&lt;BR /&gt;7 Lung&lt;BR /&gt;7 Liver&lt;BR /&gt;7 Kidney&lt;BR /&gt;;&lt;BR /&gt;&lt;BR /&gt;proc sort data=have;
by centerid organ;

DATA want;
SET have;
BY centerId organ;
FORMAT organ_list $100. cnt 9.;
RETAIN organ_list cnt;

IF first.centerid THEN
DO;
	organ_list = '';
	cnt = 0;
END;

	organ_list = CATX('+',organ_list,organ);
	cnt+1;

	IF last.centerid; *output only last one for centerID;
DROP organ;
RUN;&lt;/CODE&gt;&lt;/PRE&gt;</description>
      <pubDate>Thu, 30 Jan 2020 00:48:57 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Data-Management/Collapsing-duplicates/m-p/621026#M18723</guid>
      <dc:creator>plevcek</dc:creator>
      <dc:date>2020-01-30T00:48:57Z</dc:date>
    </item>
    <item>
      <title>Re: Collapsing duplicates</title>
      <link>https://communities.sas.com/t5/SAS-Data-Management/Collapsing-duplicates/m-p/621989#M18738</link>
      <description>&lt;P&gt;Hi&amp;nbsp;&lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/309638"&gt;@Kashvig&lt;/a&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;According to your post, you want for&amp;nbsp;&lt;SPAN&gt;each unique center ID how many and which organs are transplanted. Your output example doesn't include counts, but here is an expanded version of the code provided by&amp;nbsp;&lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/138205"&gt;@novinosrin&lt;/a&gt;&amp;nbsp;,that includes counts for each organ and total.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data have;
input (CenterID      Organ ) ($);
cards;
1                  Heart
1                  Lung
1                  Kidney
1                  Heart
2                  Heart
3                  Heart 
3                  Liver
4                  Heart
4                  Lung
5                  Liver
6                  Lung
7                  Heart
7                 Lung
7                 Lung
7                 Liver
7                 Kidney
;

proc sql;
	create table w as
		select distinct CenterID, Organ, count(*) as Cnt
		from have
		group by CenterID, Organ 
		order by  CenterID, Organ;
quit;

data want;
	drop Cnt Tot organ;

	do until(last.centerid);
		set w;
		length want $100;
		by centerid;
		if first.centerid then Tot = 0;
		want=catx(' + ',want,trim(organ)||':'||strip(put(Cnt,8.)));
		Tot = Tot + Cnt;
	end;
	want=catx(' - ',want,'Total:'||strip(put(Tot,8.)));
run;&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-left" image-alt="totals.gif" style="width: 363px;"&gt;&lt;img src="https://communities.sas.com/t5/image/serverpage/image-id/35832i7C5F5E7E12C01E70/image-size/large?v=v2&amp;amp;px=999" role="button" title="totals.gif" alt="totals.gif" /&gt;&lt;/span&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Mon, 03 Feb 2020 16:52:42 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Data-Management/Collapsing-duplicates/m-p/621989#M18738</guid>
      <dc:creator>ErikLund_Jensen</dc:creator>
      <dc:date>2020-02-03T16:52:42Z</dc:date>
    </item>
  </channel>
</rss>

