<?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: Combining multiple rows (without missings) into one row based on a variable in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/Combining-multiple-rows-without-missings-into-one-row-based-on-a/m-p/447823#M112570</link>
    <description>&lt;P&gt;Look at Example 2 here:&lt;/P&gt;
&lt;P&gt;&lt;A href="https://stats.idre.ucla.edu/sas/modules/how-to-reshape-data-long-to-wide-using-proc-transpose/" target="_blank"&gt;https://stats.idre.ucla.edu/sas/modules/how-to-reshape-data-long-to-wide-using-proc-transpose/&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
    <pubDate>Thu, 22 Mar 2018 15:21:58 GMT</pubDate>
    <dc:creator>Reeza</dc:creator>
    <dc:date>2018-03-22T15:21:58Z</dc:date>
    <item>
      <title>Combining multiple rows (without missings) into one row based on a variable</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Combining-multiple-rows-without-missings-into-one-row-based-on-a/m-p/447811#M112565</link>
      <description>&lt;P&gt;Hi all,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I have a dataset that has multiple observations from a given&amp;nbsp;household and I need it combined into one row per household. The problem is that the variables are the same for each observation so I can't use some of the other suggestions I have seen.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;The data is currently set up like this:&lt;/P&gt;&lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;HH&lt;/TD&gt;&lt;TD&gt;risk_grp&lt;/TD&gt;&lt;TD&gt;Positive&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;1-4 Yrs&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;1-4 Yrs&lt;/TD&gt;&lt;TD&gt;0&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;5-14 Yrs&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;3&lt;/TD&gt;&lt;TD&gt;5-14 Yrs&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;3&lt;/TD&gt;&lt;TD&gt;&amp;gt;14 Yrs&lt;/TD&gt;&lt;TD&gt;0&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;4&lt;/TD&gt;&lt;TD&gt;&amp;gt;14 Yrs&lt;/TD&gt;&lt;TD&gt;0&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;5&lt;/TD&gt;&lt;TD&gt;1-4 Yrs&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;5&lt;/TD&gt;&lt;TD&gt;5-14 Yrs&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;5&lt;/TD&gt;&lt;TD&gt;&amp;gt;14 Yrs&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;And I am hoping for something like this:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;TABLE border="0" cellspacing="0" cellpadding="0"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;HH&lt;/TD&gt;&lt;TD&gt;risk_grp1&lt;/TD&gt;&lt;TD&gt;Positive_1&lt;/TD&gt;&lt;TD&gt;risk_grp2&lt;/TD&gt;&lt;TD&gt;Positive_2&lt;/TD&gt;&lt;TD&gt;risk_grp3&lt;/TD&gt;&lt;TD&gt;Positive_3&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;1-4 Yrs&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;.&lt;/TD&gt;&lt;TD&gt;.&lt;/TD&gt;&lt;TD&gt;.&lt;/TD&gt;&lt;TD&gt;.&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;1-4 Yrs&lt;/TD&gt;&lt;TD&gt;0&lt;/TD&gt;&lt;TD&gt;5-14 Yrs&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;.&lt;/TD&gt;&lt;TD&gt;.&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;3&lt;/TD&gt;&lt;TD&gt;5-14 Yrs&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;&amp;gt;14 Yrs&lt;/TD&gt;&lt;TD&gt;0&lt;/TD&gt;&lt;TD&gt;.&lt;/TD&gt;&lt;TD&gt;.&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;4&lt;/TD&gt;&lt;TD&gt;&amp;gt;14 Yrs&lt;/TD&gt;&lt;TD&gt;0&lt;/TD&gt;&lt;TD&gt;.&lt;/TD&gt;&lt;TD&gt;.&lt;/TD&gt;&lt;TD&gt;.&lt;/TD&gt;&lt;TD&gt;.&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;5&lt;/TD&gt;&lt;TD&gt;1-4 Yrs&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;5-14 Yrs&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;&amp;gt;14 Yrs&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Any help would be greatly appreciated! Also I am using SAS University Edition.&lt;/P&gt;</description>
      <pubDate>Thu, 22 Mar 2018 15:09:09 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Combining-multiple-rows-without-missings-into-one-row-based-on-a/m-p/447811#M112565</guid>
      <dc:creator>mdz</dc:creator>
      <dc:date>2018-03-22T15:09:09Z</dc:date>
    </item>
    <item>
      <title>Re: Combining multiple rows (without missings) into one row based on a variable</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Combining-multiple-rows-without-missings-into-one-row-based-on-a/m-p/447817#M112567</link>
      <description>&lt;P&gt;You might want to tell us what that resulting data set will be used for. Many times that "wide" format is much harder to work with.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;If the purpose is to create a report that people will read then going directly to one of the report procedures such a proc report or tabulate may work better.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Best is to post example data in the form of a data step. Instructions here: &lt;A href="https://communities.sas.com/t5/SAS-Communities-Library/How-to-create-a-data-step-version-of-your-data-AKA-generate/ta-p/258712" target="_blank"&gt;https://communities.sas.com/t5/SAS-Communities-Library/How-to-create-a-data-step-version-of-your-data-AKA-generate/ta-p/258712&lt;/A&gt; will show how to turn an existing SAS data set into data step code that can be pasted into a forum code box using the {i} icon or attached as text to show exactly what you have and that we can test code against.&lt;/P&gt;</description>
      <pubDate>Thu, 22 Mar 2018 15:13:41 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Combining-multiple-rows-without-missings-into-one-row-based-on-a/m-p/447817#M112567</guid>
      <dc:creator>ballardw</dc:creator>
      <dc:date>2018-03-22T15:13:41Z</dc:date>
    </item>
    <item>
      <title>Re: Combining multiple rows (without missings) into one row based on a variable</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Combining-multiple-rows-without-missings-into-one-row-based-on-a/m-p/447818#M112568</link>
      <description>&lt;P&gt;proc tabulate will give you what you want.&amp;nbsp; You can define columns and rows easily.&lt;/P&gt;</description>
      <pubDate>Thu, 22 Mar 2018 15:16:27 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Combining-multiple-rows-without-missings-into-one-row-based-on-a/m-p/447818#M112568</guid>
      <dc:creator>tomrvincent</dc:creator>
      <dc:date>2018-03-22T15:16:27Z</dc:date>
    </item>
    <item>
      <title>Re: Combining multiple rows (without missings) into one row based on a variable</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Combining-multiple-rows-without-missings-into-one-row-based-on-a/m-p/447823#M112570</link>
      <description>&lt;P&gt;Look at Example 2 here:&lt;/P&gt;
&lt;P&gt;&lt;A href="https://stats.idre.ucla.edu/sas/modules/how-to-reshape-data-long-to-wide-using-proc-transpose/" target="_blank"&gt;https://stats.idre.ucla.edu/sas/modules/how-to-reshape-data-long-to-wide-using-proc-transpose/&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 22 Mar 2018 15:21:58 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Combining-multiple-rows-without-missings-into-one-row-based-on-a/m-p/447823#M112570</guid>
      <dc:creator>Reeza</dc:creator>
      <dc:date>2018-03-22T15:21:58Z</dc:date>
    </item>
    <item>
      <title>Re: Combining multiple rows (without missings) into one row based on a variable</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Combining-multiple-rows-without-missings-into-one-row-based-on-a/m-p/447830#M112572</link>
      <description>&lt;P&gt;data have;&lt;BR /&gt;infile datalines dlm=" " dsd;&lt;BR /&gt;input HH risk_grp &amp;amp; $10. Positive;&lt;BR /&gt;datalines;&lt;BR /&gt;1 1-4 Yrs 1&lt;BR /&gt;2 1-4 Yrs 0&lt;BR /&gt;2 5-14 Yrs 1&lt;BR /&gt;3 5-14 Yrs 1&lt;BR /&gt;3 &amp;gt;14 Yrs 0&lt;BR /&gt;4 &amp;gt;14 Yrs 0&lt;BR /&gt;5 1-4 Yrs 1&lt;BR /&gt;5 5-14 Yrs 1&lt;BR /&gt;5 &amp;gt;14 Yrs 1&lt;BR /&gt;;&lt;BR /&gt;run;&lt;/P&gt;
&lt;P&gt;proc transpose data=have out=want1(Drop=_name_) prefix=Positive_;&lt;BR /&gt;by HH;&lt;BR /&gt;var Positive;&lt;BR /&gt;run;&lt;BR /&gt;proc transpose data=have out=want2(Drop=_name_) prefix=risk_grp_;&lt;BR /&gt;by HH;&lt;BR /&gt;var risk_grp;&lt;BR /&gt;run;&lt;BR /&gt;DATA WANT;&lt;BR /&gt;MERGE Want1 Want2;&lt;BR /&gt;by HH;&lt;BR /&gt;run;&lt;/P&gt;</description>
      <pubDate>Thu, 22 Mar 2018 15:42:00 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Combining-multiple-rows-without-missings-into-one-row-based-on-a/m-p/447830#M112572</guid>
      <dc:creator>SuryaKiran</dc:creator>
      <dc:date>2018-03-22T15:42:00Z</dc:date>
    </item>
    <item>
      <title>Re: Combining multiple rows (without missings) into one row based on a variable</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Combining-multiple-rows-without-missings-into-one-row-based-on-a/m-p/447847#M112576</link>
      <description>&lt;P&gt;That doesn't work, but this does (always test your solution before posting it):&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;data have;&lt;BR /&gt;infile datalines dlm=" " dsd;&lt;BR /&gt;input Positive HH risk_grp $10. ;&lt;BR /&gt;datalines;&lt;BR /&gt;1 1 1-4 Yrs&lt;BR /&gt;0 2 1-4 Yrs&lt;BR /&gt;1 2 5-14 Yrs&lt;BR /&gt;1 3 5-14 Yrs&lt;BR /&gt;0 3 &amp;gt;14 Yrs&lt;BR /&gt;0 4 &amp;gt;14 Yrs&lt;BR /&gt;1 5 1-4 Yrs&lt;BR /&gt;1 5 5-14 Yrs&lt;BR /&gt;1 5 &amp;gt;14 Yrs&lt;BR /&gt;;&lt;BR /&gt;run;&lt;BR /&gt;&lt;BR /&gt;proc transpose data=have out=want1(Drop=_name_) prefix=Positive_;&lt;BR /&gt;by HH;&lt;BR /&gt;var Positive;&lt;BR /&gt;run;&lt;BR /&gt;proc transpose data=have out=want2(Drop=_name_) prefix=risk_grp_;&lt;BR /&gt;by HH;&lt;BR /&gt;var risk_grp;&lt;BR /&gt;run;&lt;BR /&gt;DATA WANT;&lt;BR /&gt;MERGE Want1 Want2;&lt;BR /&gt;by HH;&lt;BR /&gt;run;&lt;/P&gt;</description>
      <pubDate>Thu, 22 Mar 2018 16:50:03 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Combining-multiple-rows-without-missings-into-one-row-based-on-a/m-p/447847#M112576</guid>
      <dc:creator>tomrvincent</dc:creator>
      <dc:date>2018-03-22T16:50:03Z</dc:date>
    </item>
    <item>
      <title>Re: Combining multiple rows (without missings) into one row based on a variable</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Combining-multiple-rows-without-missings-into-one-row-based-on-a/m-p/447879#M112590</link>
      <description>&lt;P&gt;&lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/83078"&gt;@SuryaKiran&lt;/a&gt;&amp;nbsp; Your proposed solution on the thread&amp;nbsp;&lt;A href="https://communities.sas.com/t5/Base-SAS-Programming/way-to-simplyfy-the-code/m-p/447544#M112453&amp;nbsp;" target="_blank"&gt;https://communities.sas.com/t5/Base-SAS-Programming/way-to-simplyfy-the-code/m-p/447544#M112453&amp;nbsp;&lt;/A&gt; doesn't work either as you have gotten the macro execution and sas execution comepletely wrong. I don't want mean to sound strong/harsh but I have to concur with&amp;nbsp;&lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/144199"&gt;@tomrvincent&lt;/a&gt;&amp;nbsp; in the objective that it may mislead for the OP and other readers&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Kindly test or just outline the approach&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 22 Mar 2018 18:31:16 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Combining-multiple-rows-without-missings-into-one-row-based-on-a/m-p/447879#M112590</guid>
      <dc:creator>MarkWik</dc:creator>
      <dc:date>2018-03-22T18:31:16Z</dc:date>
    </item>
    <item>
      <title>Re: Combining multiple rows (without missings) into one row based on a variable</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Combining-multiple-rows-without-missings-into-one-row-based-on-a/m-p/447884#M112593</link>
      <description>&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data have;
infile datalines dlm=" " dsd;
input Positive HH risk_grp $10. ;
datalines;
1 1 1-4 Yrs
0 2 1-4 Yrs
1 2 5-14 Yrs
1 3 5-14 Yrs
0 3 &amp;gt;14 Yrs
0 4 &amp;gt;14 Yrs
1 5 1-4 Yrs
1 5 5-14 Yrs
1 5 &amp;gt;14 Yrs
;
run;


data want;
do _n_=1 by 1 until(last.hh);
set have;
by hh;
array Positive_(3) ;/*subscript value to be modified for real dataset*/
array risk_grpp(3) $25;/*subscript value to be modified for real dataset*/
if first.hh then call missing(of Positive_(*),of risk_grpp(*));
Positive_(_n_)=Positive;
risk_grpp(_n_)=risk_grp;
end;
drop risk_grp Positive;
run;&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 22 Mar 2018 18:46:19 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Combining-multiple-rows-without-missings-into-one-row-based-on-a/m-p/447884#M112593</guid>
      <dc:creator>novinosrin</dc:creator>
      <dc:date>2018-03-22T18:46:19Z</dc:date>
    </item>
    <item>
      <title>Re: Combining multiple rows (without missings) into one row based on a variable</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Combining-multiple-rows-without-missings-into-one-row-based-on-a/m-p/447994#M112625</link>
      <description>&lt;P&gt;If you download and run the macro you will find at:&amp;nbsp;&lt;A href="https://communities.sas.com/t5/SAS-Communities-Library/A-better-way-to-FLIP-i-e-transpose-make-wide-a-dataset/ta-p/433620" target="_blank"&gt;https://communities.sas.com/t5/SAS-Communities-Library/A-better-way-to-FLIP-i-e-transpose-make-wide-a-dataset/ta-p/433620&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;your problem is easy to solve:&lt;/P&gt;
&lt;PRE&gt;%transpose(data=have,out=want,by=hh,var=risk_grp Positive)
&lt;/PRE&gt;
&lt;P&gt;Art, CEO, AnalystFinder.com&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 22 Mar 2018 22:49:49 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Combining-multiple-rows-without-missings-into-one-row-based-on-a/m-p/447994#M112625</guid>
      <dc:creator>art297</dc:creator>
      <dc:date>2018-03-22T22:49:49Z</dc:date>
    </item>
    <item>
      <title>Re: Combining multiple rows (without missings) into one row based on a variable</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Combining-multiple-rows-without-missings-into-one-row-based-on-a/m-p/448136#M112698</link>
      <description>&lt;P&gt;Art,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;This worked like a charm! Thanks so much for the reply and help on the problem!&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Fri, 23 Mar 2018 13:06:01 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Combining-multiple-rows-without-missings-into-one-row-based-on-a/m-p/448136#M112698</guid>
      <dc:creator>mdz</dc:creator>
      <dc:date>2018-03-23T13:06:01Z</dc:date>
    </item>
    <item>
      <title>Re: Combining multiple rows (without missings) into one row based on a variable</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Combining-multiple-rows-without-missings-into-one-row-based-on-a/m-p/448162#M112710</link>
      <description>&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data have;
infile datalines dlm=" " dsd;
input Positive HH risk_grp $10. ;
datalines;
1 1 1-4 Yrs
0 2 1-4 Yrs
1 2 5-14 Yrs
1 3 5-14 Yrs
0 3 &amp;gt;14 Yrs
0 4 &amp;gt;14 Yrs
1 5 1-4 Yrs
1 5 5-14 Yrs
1 5 &amp;gt;14 Yrs
;
run;
proc sql noprint;
select max(n) into : n
 from (select count(*) as n from have group by hh);
quit;
proc summary data=have;
by hh;
output out=want idgroup(out[&amp;amp;n] (risk_grp Positive)=);
run;
proc print noobs;run;&lt;/CODE&gt;&lt;/PRE&gt;</description>
      <pubDate>Fri, 23 Mar 2018 14:08:10 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Combining-multiple-rows-without-missings-into-one-row-based-on-a/m-p/448162#M112710</guid>
      <dc:creator>Ksharp</dc:creator>
      <dc:date>2018-03-23T14:08:10Z</dc:date>
    </item>
  </channel>
</rss>

