<?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 How do I combine each row into one big row? in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/How-do-I-combine-each-row-into-one-big-row/m-p/25000#M4295</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;how about:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data tmp;&lt;/P&gt;&lt;P&gt;length stmt $50;&lt;/P&gt;&lt;P&gt;&amp;nbsp; input cat stmt &amp;amp;$;&lt;/P&gt;&lt;P&gt;&amp;nbsp; datalines4;&lt;/P&gt;&lt;P&gt;1 data A;&lt;/P&gt;&lt;P&gt;1 set sashelp.class;&lt;/P&gt;&lt;P&gt;1 run;&lt;/P&gt;&lt;P&gt;1 proc print data=a;&lt;/P&gt;&lt;P&gt;1 run;&lt;/P&gt;&lt;P&gt;2 data B;&lt;/P&gt;&lt;P&gt;2 set sashelp.cars;&lt;/P&gt;&lt;P&gt;2 run;&lt;/P&gt;&lt;P&gt;2 proc print data=b;&lt;/P&gt;&lt;P&gt;2 run;&lt;/P&gt;&lt;P&gt;;;;;&lt;/P&gt;&lt;P&gt;data want (keep=_stmt);&lt;/P&gt;&lt;P&gt;&amp;nbsp; length _stmt $ 100;&lt;/P&gt;&lt;P&gt;&amp;nbsp; set tmp;&lt;/P&gt;&lt;P&gt;&amp;nbsp; by cat;&lt;/P&gt;&lt;P&gt;&amp;nbsp; if first.cat then _stmt='';&lt;/P&gt;&lt;P&gt;&amp;nbsp; retain _stmt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; _stmt=catx('',_stmt,stmt);&lt;/P&gt;&lt;P&gt;&amp;nbsp; if last.cat then output;&lt;/P&gt;&lt;P&gt;&amp;nbsp; run;&lt;/P&gt;&lt;P&gt;&amp;nbsp; proc print;run;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Obs&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; _stmt&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; data A; set sashelp.class; run; proc print data=a; run;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; data B; set sashelp.cars; run; proc print data=b; run;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Fri, 09 Mar 2012 00:55:50 GMT</pubDate>
    <dc:creator>Linlin</dc:creator>
    <dc:date>2012-03-09T00:55:50Z</dc:date>
    <item>
      <title>How do I combine each row into one big row?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/How-do-I-combine-each-row-into-one-big-row/m-p/24989#M4284</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;data t;&lt;/P&gt;&lt;P&gt;length stmt $50;&lt;/P&gt;&lt;P&gt;input stmt &amp;amp;$;&lt;/P&gt;&lt;P&gt;cards;&lt;/P&gt;&lt;P&gt;data tmp&lt;/P&gt;&lt;P&gt;set sashelp.car&lt;/P&gt;&lt;P&gt;run&lt;/P&gt;&lt;P&gt;;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data t2(keep = m);&lt;/P&gt;&lt;P&gt;set t;&lt;/P&gt;&lt;P&gt;m = trim (left(stmt)) || ";";&lt;/P&gt;&lt;P&gt;run;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I want to write a macro, a macro that merges all rows into one big row then pass it along to a variable, using %put to output it.&lt;/P&gt;&lt;P&gt;Here I give an example 3 rows, the number of rows could be dynamic,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;How do I do that?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 08 Mar 2012 06:07:25 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/How-do-I-combine-each-row-into-one-big-row/m-p/24989#M4284</guid>
      <dc:creator>ZRick</dc:creator>
      <dc:date>2012-03-08T06:07:25Z</dc:date>
    </item>
    <item>
      <title>How do I combine each row into one big row?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/How-do-I-combine-each-row-into-one-big-row/m-p/24990#M4285</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I don't know how you define the number of rows could be dynamic?&lt;/P&gt;&lt;P&gt;But code might be like:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE&gt;data t;
format stmt $50.;
input stmt $;
cards;
data tmp
set sashelp.car
run
;
run;
data want;
 set t end=last;
 length row $ 3200;
 retain row;
 row=catx(';',row,stmt);
 if last then output;
 keep row;
run;
&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Ksharp&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 08 Mar 2012 06:24:41 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/How-do-I-combine-each-row-into-one-big-row/m-p/24990#M4285</guid>
      <dc:creator>Ksharp</dc:creator>
      <dc:date>2012-03-08T06:24:41Z</dc:date>
    </item>
    <item>
      <title>How do I combine each row into one big row?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/How-do-I-combine-each-row-into-one-big-row/m-p/24991#M4286</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I think I am getting there， Ksharp， your code is really useful, I edit it, but final output appeared twice, one shows up as "data tmp", one shows up as the right combination "data tmp; set sashelp.car; run", 2nd one is what I want, not "data tmp", any ideas?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data t;&lt;/P&gt;&lt;P&gt;length stmt $50;&lt;/P&gt;&lt;P&gt;input stmt &amp;amp;$;&lt;/P&gt;&lt;P&gt;cards;&lt;/P&gt;&lt;P&gt;data tmp&lt;/P&gt;&lt;P&gt;set sashelp.car&lt;/P&gt;&lt;P&gt;run;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data _null_;&lt;/P&gt;&lt;P&gt; set t end=last;&lt;/P&gt;&lt;P&gt; length row $ 3200;&lt;/P&gt;&lt;P&gt; retain row;&lt;/P&gt;&lt;P&gt; row=catx("; ",row,stmt);&lt;/P&gt;&lt;P&gt; if last then call symput('var', row);&lt;/P&gt;&lt;P&gt;run;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;%put &amp;amp;var;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 08 Mar 2012 06:42:48 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/How-do-I-combine-each-row-into-one-big-row/m-p/24991#M4286</guid>
      <dc:creator>ZRick</dc:creator>
      <dc:date>2012-03-08T06:42:48Z</dc:date>
    </item>
    <item>
      <title>How do I combine each row into one big row?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/How-do-I-combine-each-row-into-one-big-row/m-p/24992#M4287</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;It is very interesting. Obviously SAS take the value be a sas statement. We should mask them all.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE&gt;data t;
length stmt $50;
input stmt &amp;amp;$;
cards;
data tmp
set sashelp.car
;
run;

data _null_;
set t end=last;
length row $ 3200;
retain row;
row=catx("; ",row,stmt);
if last then call symput('var', row);
run;

%put %bquote(&amp;amp;v) ;


&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Ksharp&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 08 Mar 2012 07:17:33 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/How-do-I-combine-each-row-into-one-big-row/m-p/24992#M4287</guid>
      <dc:creator>Ksharp</dc:creator>
      <dc:date>2012-03-08T07:17:33Z</dc:date>
    </item>
    <item>
      <title>Re: How do I combine each row into one big row?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/How-do-I-combine-each-row-into-one-big-row/m-p/24993#M4288</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Here's a neat way to combine them.&amp;nbsp; You still might face the issues you saw when printing with %PUT (although it's not clear why in the world you would want to use %PUT to output the results):&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;proc sql;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; select trim(stmt) into : macrovar separated by ';' from t;&lt;/P&gt;&lt;P&gt;quit;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;You would still need to add one final semicolon at the end.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Good luck.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 08 Mar 2012 13:55:43 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/How-do-I-combine-each-row-into-one-big-row/m-p/24993#M4288</guid>
      <dc:creator>Astounding</dc:creator>
      <dc:date>2012-03-08T13:55:43Z</dc:date>
    </item>
    <item>
      <title>Re: How do I combine each row into one big row?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/How-do-I-combine-each-row-into-one-big-row/m-p/24994#M4289</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;You asked about "﻿﻿why you want to use %put to output the results"&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Basically, you see, entrie row will be big data step, I want to use them in the macro, so when this macro is called, the data step is executed automatically. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I don't know if output to log is the right place to do that, maybe you have a better suggestion?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 08 Mar 2012 16:25:09 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/How-do-I-combine-each-row-into-one-big-row/m-p/24994#M4289</guid>
      <dc:creator>ZRick</dc:creator>
      <dc:date>2012-03-08T16:25:09Z</dc:date>
    </item>
    <item>
      <title>Re: How do I combine each row into one big row?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/How-do-I-combine-each-row-into-one-big-row/m-p/24995#M4290</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Well, if you have a macro variable holding all the statements that should execute, just add:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;amp;macrovar;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I added the semicolon at the end to allow for my variation where the final semicolon had to be added.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;You might play with these options first to find a combination that would give you just one version of the statements on the log:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;options nosymbolgen;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;options nomprint;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;And if you don't need to "save up" the statements but can run them immediately, you could skip creating a macro variable entirely.&amp;nbsp; Here's a variation on your original DATA step:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data _null_;&lt;/P&gt;&lt;P&gt;length stmt $ 50;&lt;/P&gt;&lt;P&gt;input stmt $ &amp;amp;;&lt;/P&gt;&lt;P&gt;call execute (stmt || ';');&lt;/P&gt;&lt;P&gt;cards;&lt;/P&gt;&lt;P&gt;...&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;This approach has a theoretical drawback.&amp;nbsp; If the incoming lines contain any macro language commands (rather than DATA step statements), they will execute immediately (out of order) before the DATA step statements execute.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Good luck.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 08 Mar 2012 18:24:14 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/How-do-I-combine-each-row-into-one-big-row/m-p/24995#M4290</guid>
      <dc:creator>Astounding</dc:creator>
      <dc:date>2012-03-08T18:24:14Z</dc:date>
    </item>
    <item>
      <title>Re: How do I combine each row into one big row?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/How-do-I-combine-each-row-into-one-big-row/m-p/24996#M4291</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I find it normally easier to write dynamically created code to a temporary file. From what you describe I believe this approach should also work for what you want to do.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="font-family: &amp;amp;quot;Courier New&amp;amp;quot;; background: white; color: blue; mso-fareast-language: EN-AU;"&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="MsoNormal" style="margin: 0cm 0cm 0pt; mso-layout-grid-align: none;"&gt;&lt;SPAN style="font-family: &amp;amp;quot;Courier New&amp;amp;quot;; background: white; color: blue; mso-fareast-language: EN-AU;"&gt;filename&lt;/SPAN&gt;&lt;SPAN style="font-family: &amp;amp;quot;Courier New&amp;amp;quot;; background: white; color: black; mso-fareast-language: EN-AU;"&gt; code &lt;/SPAN&gt;&lt;SPAN style="font-family: &amp;amp;quot;Courier New&amp;amp;quot;; background: white; color: blue; mso-fareast-language: EN-AU;"&gt;temp&lt;/SPAN&gt;&lt;SPAN style="font-family: &amp;amp;quot;Courier New&amp;amp;quot;; background: white; color: black; mso-fareast-language: EN-AU;"&gt;;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P class="MsoNormal" style="margin: 0cm 0cm 0pt; mso-layout-grid-align: none;"&gt;&lt;SPAN style="font-family: &amp;amp;quot;Courier New&amp;amp;quot;; background: white; color: black; mso-fareast-language: EN-AU;"&gt; &lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P class="MsoNormal" style="margin: 0cm 0cm 0pt; mso-layout-grid-align: none;"&gt;&lt;STRONG style="mso-fareast-language: EN-AU; color: navy; background: white; font-family: &amp;amp;quot;"&gt;data&lt;/STRONG&gt;&lt;SPAN style="font-family: &amp;amp;quot;Courier New&amp;amp;quot;; background: white; color: black; mso-fareast-language: EN-AU;"&gt; &lt;/SPAN&gt;&lt;SPAN style="font-family: &amp;amp;quot;Courier New&amp;amp;quot;; background: white; color: blue; mso-fareast-language: EN-AU;"&gt;_null_&lt;/SPAN&gt;&lt;SPAN style="font-family: &amp;amp;quot;Courier New&amp;amp;quot;; background: white; color: black; mso-fareast-language: EN-AU;"&gt;;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="MsoNormal" style="margin: 0cm 0cm 0pt; mso-layout-grid-align: none;"&gt;&lt;SPAN style="mso-fareast-language: EN-AU; color: black; background: white; mso-spacerun: yes; font-family: &amp;amp;quot;"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="font-family: &amp;amp;quot;Courier New&amp;amp;quot;; background: white; color: blue; mso-fareast-language: EN-AU;"&gt;file&lt;/SPAN&gt;&lt;SPAN style="font-family: &amp;amp;quot;Courier New&amp;amp;quot;; background: white; color: black; mso-fareast-language: EN-AU;"&gt; code;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="MsoNormal" style="margin: 0cm 0cm 0pt; mso-layout-grid-align: none;"&gt;&lt;SPAN style="mso-fareast-language: EN-AU; color: black; background: white; mso-spacerun: yes; font-family: &amp;amp;quot;"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="font-family: &amp;amp;quot;Courier New&amp;amp;quot;; background: white; color: blue; mso-fareast-language: EN-AU;"&gt;input&lt;/SPAN&gt;&lt;SPAN style="font-family: &amp;amp;quot;Courier New&amp;amp;quot;; background: white; color: black; mso-fareast-language: EN-AU;"&gt;;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="MsoNormal" style="margin: 0cm 0cm 0pt; mso-layout-grid-align: none;"&gt;&lt;SPAN style="mso-fareast-language: EN-AU; color: black; background: white; mso-spacerun: yes; font-family: &amp;amp;quot;"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="font-family: &amp;amp;quot;Courier New&amp;amp;quot;; background: white; color: blue; mso-fareast-language: EN-AU;"&gt;put&lt;/SPAN&gt;&lt;SPAN style="font-family: &amp;amp;quot;Courier New&amp;amp;quot;; background: white; color: black; mso-fareast-language: EN-AU;"&gt; &lt;/SPAN&gt;&lt;SPAN style="font-family: &amp;amp;quot;Courier New&amp;amp;quot;; background: white; color: blue; mso-fareast-language: EN-AU;"&gt;_infile_&lt;/SPAN&gt;&lt;SPAN style="font-family: &amp;amp;quot;Courier New&amp;amp;quot;; background: white; color: black; mso-fareast-language: EN-AU;"&gt;;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="MsoNormal" style="margin: 0cm 0cm 0pt; mso-layout-grid-align: none;"&gt;&lt;SPAN style="mso-fareast-language: EN-AU; color: black; background: white; mso-spacerun: yes; font-family: &amp;amp;quot;"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="font-family: &amp;amp;quot;Courier New&amp;amp;quot;; background: white; color: blue; mso-fareast-language: EN-AU;"&gt;datalines4&lt;/SPAN&gt;&lt;SPAN style="font-family: &amp;amp;quot;Courier New&amp;amp;quot;; background: white; color: black; mso-fareast-language: EN-AU;"&gt;;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="MsoNormal" style="margin: 0cm 0cm 0pt; mso-layout-grid-align: none;"&gt;&lt;SPAN style="font-family: &amp;amp;quot;Courier New&amp;amp;quot;; background: #ffffc0; color: black; mso-fareast-language: EN-AU;"&gt;data tmp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="MsoNormal" style="margin: 0cm 0cm 0pt; mso-layout-grid-align: none;"&gt;&lt;SPAN style="font-family: &amp;amp;quot;Courier New&amp;amp;quot;; background: #ffffc0; color: black; mso-fareast-language: EN-AU;"&gt;set sashelp.class;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="MsoNormal" style="margin: 0cm 0cm 0pt; mso-layout-grid-align: none;"&gt;&lt;SPAN style="font-family: &amp;amp;quot;Courier New&amp;amp;quot;; background: #ffffc0; color: black; mso-fareast-language: EN-AU;"&gt;run;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="MsoNormal" style="margin: 0cm 0cm 0pt; mso-layout-grid-align: none;"&gt;&lt;SPAN style="font-family: &amp;amp;quot;Courier New&amp;amp;quot;; background: #ffffc0; color: black; mso-fareast-language: EN-AU;"&gt;proc print data=tmp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="MsoNormal" style="margin: 0cm 0cm 0pt; mso-layout-grid-align: none;"&gt;&lt;SPAN style="font-family: &amp;amp;quot;Courier New&amp;amp;quot;; background: #ffffc0; color: black; mso-fareast-language: EN-AU;"&gt;run;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="MsoNormal" style="margin: 0cm 0cm 0pt; mso-layout-grid-align: none;"&gt;&lt;SPAN style="font-family: &amp;amp;quot;Courier New&amp;amp;quot;; background: white; color: black; mso-fareast-language: EN-AU;"&gt;;;;;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="MsoNormal" style="margin: 0cm 0cm 0pt; mso-layout-grid-align: none;"&gt;&lt;STRONG style="mso-fareast-language: EN-AU; color: navy; background: white; font-family: &amp;amp;quot;"&gt;run&lt;/STRONG&gt;&lt;SPAN style="font-family: &amp;amp;quot;Courier New&amp;amp;quot;; background: white; color: black; mso-fareast-language: EN-AU;"&gt;;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P class="MsoNormal" style="margin: 0cm 0cm 0pt; mso-layout-grid-align: none;"&gt;&lt;SPAN style="font-family: &amp;amp;quot;Courier New&amp;amp;quot;; background: white; color: black; mso-fareast-language: EN-AU;"&gt; &lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P class="MsoNormal" style="margin: 0cm 0cm 0pt; mso-layout-grid-align: none;"&gt;&lt;SPAN style="font-family: &amp;amp;quot;Courier New&amp;amp;quot;; background: white; color: black; mso-fareast-language: EN-AU;"&gt; &lt;/SPAN&gt;&lt;/P&gt;&lt;P class="MsoNormal" style="margin: 0cm 0cm 0pt; mso-layout-grid-align: none;"&gt;&lt;SPAN style="font-family: &amp;amp;quot;Courier New&amp;amp;quot;; background: white; color: black; mso-fareast-language: EN-AU;"&gt; &lt;/SPAN&gt;&lt;/P&gt;&lt;P class="MsoNormal" style="margin: 0cm 0cm 0pt; mso-layout-grid-align: none;"&gt;&lt;STRONG style="mso-fareast-language: EN-AU; color: navy; background: white; font-family: &amp;amp;quot;"&gt;%macro&lt;/STRONG&gt;&lt;SPAN style="font-family: &amp;amp;quot;Courier New&amp;amp;quot;; background: white; color: black; mso-fareast-language: EN-AU;"&gt; test(check);&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="MsoNormal" style="margin: 0cm 0cm 0pt; mso-layout-grid-align: none;"&gt;&lt;SPAN style="mso-fareast-language: EN-AU; color: black; background: white; mso-spacerun: yes; font-family: &amp;amp;quot;"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="font-family: &amp;amp;quot;Courier New&amp;amp;quot;; background: white; color: blue; mso-fareast-language: EN-AU;"&gt;%if&lt;/SPAN&gt;&lt;SPAN style="font-family: &amp;amp;quot;Courier New&amp;amp;quot;; background: white; color: black; mso-fareast-language: EN-AU;"&gt; &amp;amp;check=&lt;/SPAN&gt;&lt;STRONG style="mso-fareast-language: EN-AU; color: teal; background: white; font-family: &amp;amp;quot;"&gt;1&lt;/STRONG&gt;&lt;SPAN style="font-family: &amp;amp;quot;Courier New&amp;amp;quot;; background: white; color: black; mso-fareast-language: EN-AU;"&gt; &lt;/SPAN&gt;&lt;SPAN style="font-family: &amp;amp;quot;Courier New&amp;amp;quot;; background: white; color: blue; mso-fareast-language: EN-AU;"&gt;%then&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="MsoNormal" style="margin: 0cm 0cm 0pt; mso-layout-grid-align: none;"&gt;&lt;SPAN style="mso-fareast-language: EN-AU; color: black; background: white; mso-spacerun: yes; font-family: &amp;amp;quot;"&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="font-family: &amp;amp;quot;Courier New&amp;amp;quot;; background: white; color: blue; mso-fareast-language: EN-AU;"&gt;%include&lt;/SPAN&gt;&lt;SPAN style="font-family: &amp;amp;quot;Courier New&amp;amp;quot;; background: white; color: black; mso-fareast-language: EN-AU;"&gt; code;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="MsoNormal" style="margin: 0cm 0cm 0pt; mso-layout-grid-align: none;"&gt;&lt;SPAN style="mso-fareast-language: EN-AU; color: black; background: white; mso-spacerun: yes; font-family: &amp;amp;quot;"&gt;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="font-family: &amp;amp;quot;Courier New&amp;amp;quot;; background: white; color: blue; mso-fareast-language: EN-AU;"&gt;%else&lt;/SPAN&gt;&lt;SPAN style="font-family: &amp;amp;quot;Courier New&amp;amp;quot;; background: white; color: black; mso-fareast-language: EN-AU;"&gt; &lt;/SPAN&gt;&lt;SPAN style="font-family: &amp;amp;quot;Courier New&amp;amp;quot;; background: white; color: blue; mso-fareast-language: EN-AU;"&gt;%put&lt;/SPAN&gt;&lt;SPAN style="font-family: &amp;amp;quot;Courier New&amp;amp;quot;; background: white; color: black; mso-fareast-language: EN-AU;"&gt; Nothing to execute;&lt;/SPAN&gt;&lt;/P&gt;&lt;P class="MsoNormal" style="margin: 0cm 0cm 0pt; mso-layout-grid-align: none;"&gt;&lt;STRONG style="mso-fareast-language: EN-AU; color: navy; background: white; font-family: &amp;amp;quot;"&gt;%mend&lt;/STRONG&gt;&lt;SPAN style="font-family: &amp;amp;quot;Courier New&amp;amp;quot;; background: white; color: black; mso-fareast-language: EN-AU;"&gt;;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P class="MsoNormal" style="margin: 0cm 0cm 0pt; mso-layout-grid-align: none;"&gt;&lt;SPAN style="font-family: &amp;amp;quot;Courier New&amp;amp;quot;; background: white; color: black; mso-fareast-language: EN-AU;"&gt; &lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P class="MsoNormal" style="margin: 0cm 0cm 0pt; mso-layout-grid-align: none;"&gt;&lt;SPAN style="font-family: &amp;amp;quot;Courier New&amp;amp;quot;; background: white; color: black; mso-fareast-language: EN-AU;"&gt; &lt;/SPAN&gt;&lt;/P&gt;&lt;P class="MsoNormal" style="margin: 0cm 0cm 0pt; mso-layout-grid-align: none;"&gt;&lt;SPAN style="font-family: &amp;amp;quot;Courier New&amp;amp;quot;; background: white; color: green; mso-fareast-language: EN-AU;"&gt;/*%test(1);*/&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P class="MsoNormal" style="margin: 0cm 0cm 0pt; mso-layout-grid-align: none;"&gt;&lt;SPAN style="font-family: &amp;amp;quot;Courier New&amp;amp;quot;; background: white; color: green; mso-fareast-language: EN-AU;"&gt; &lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P class="MsoNormal" style="margin: 0cm 0cm 0pt; mso-layout-grid-align: none;"&gt;&lt;SPAN style="font-family: &amp;amp;quot;Courier New&amp;amp;quot;; background: white; color: black; mso-fareast-language: EN-AU;"&gt;%&lt;STRONG&gt;&lt;EM&gt;test&lt;/EM&gt;&lt;/STRONG&gt;(&lt;/SPAN&gt;&lt;STRONG style="mso-fareast-language: EN-AU; color: teal; background: white; font-family: &amp;amp;quot;"&gt;0&lt;/STRONG&gt;&lt;SPAN style="font-family: &amp;amp;quot;Courier New&amp;amp;quot;; background: white; color: black; mso-fareast-language: EN-AU;"&gt;);&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P class="MsoNormal" style="margin: 6pt 0cm 0pt;"&gt;&lt;SPAN style="font-family: Helvetica; color: #000000;"&gt; &lt;/SPAN&gt;&lt;/P&gt;&lt;P class="MsoNormal" style="margin: 6pt 0cm 0pt;"&gt;&lt;SPAN style="mso-fareast-language: EN-AU; color: #000000; background: white; font-family: Helvetica;"&gt; &lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 08 Mar 2012 18:52:24 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/How-do-I-combine-each-row-into-one-big-row/m-p/24996#M4291</guid>
      <dc:creator>Patrick</dc:creator>
      <dc:date>2012-03-08T18:52:24Z</dc:date>
    </item>
    <item>
      <title>Re: How do I combine each row into one big row?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/How-do-I-combine-each-row-into-one-big-row/m-p/24997#M4292</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I think Patrick is pointing you in a better direction. &lt;/P&gt;&lt;P&gt;You may run into problems with the size a single macro variable will be with this approach as well.&lt;/P&gt;&lt;P&gt;I had at one time responsibility for creating code from a bunch of descriptors. The total created over 50 SAS program files and about 6 megabytes of code. Trying to maintain that with a single macro variable would nave been unfeasible.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Also you're likely to have issues with macro quoting if you include any macro variables, definitions or calls within the generated code.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 08 Mar 2012 19:11:28 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/How-do-I-combine-each-row-into-one-big-row/m-p/24997#M4292</guid>
      <dc:creator>ballardw</dc:creator>
      <dc:date>2012-03-08T19:11:28Z</dc:date>
    </item>
    <item>
      <title>How do I combine each row into one big row?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/How-do-I-combine-each-row-into-one-big-row/m-p/24998#M4293</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt; How do I lump them into 2 rows now by cat? &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;for following code, lump them into two rows, one for cat=1, one for cat=2&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG style="color: #000080; font-size: 10pt; font-family: Courier New;"&gt;&lt;STRONG style="color: #000080; font-size: 10pt; font-family: Courier New;"&gt;&lt;STRONG style="color: #000080; font-size: 10pt; font-family: Courier New;"&gt;&lt;STRONG style=": ; color: #000080; font-size: 10pt; font-family: Courier New;"&gt;&lt;STRONG style="color: #000080; font-size: 10pt; font-family: Courier New;"&gt;&lt;STRONG style="color: #000080; font-size: 10pt; font-family: Courier New;"&gt;&lt;STRONG style="color: #000080; font-size: 10pt; font-family: Courier New;"&gt;&lt;/STRONG&gt;&lt;/STRONG&gt;&lt;/STRONG&gt;&lt;/STRONG&gt;&lt;/STRONG&gt;&lt;/STRONG&gt;&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;data tmp;&lt;BR /&gt;length stmt $50;&lt;BR /&gt;&amp;nbsp; input cat stmt &amp;amp;$;&lt;BR /&gt;&amp;nbsp; datalines4;&lt;BR /&gt;1 data A;&lt;BR /&gt;1 set sashelp.class;&lt;BR /&gt;1 run;&lt;BR /&gt;1 proc print data=a;&lt;BR /&gt;1 run;&lt;BR /&gt;2 data B;&lt;BR /&gt;2 set sashelp.cars;&lt;BR /&gt;2 run;&lt;BR /&gt;2 proc print data=b;&lt;BR /&gt;2 run;&lt;BR /&gt;;;;;&lt;/P&gt;&lt;P&gt;proc sql;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; select trim(stmt) into : macrovar separated by '' from tmp;&lt;BR /&gt;quit;&lt;/P&gt;&lt;P&gt;%put %bquote(&amp;amp;macrovar);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #008080; font-size: 10pt; font-family: Courier New;"&gt; &lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;SPAN style="font-family: Courier New; color: #000080; font-size: 10pt;"&gt;&lt;SPAN style="color: #000080; font-size: 10pt; font-family: Courier New;"&gt;&lt;P&gt;&lt;/P&gt;&lt;/SPAN&gt;&lt;P&gt;&lt;/P&gt;&lt;/SPAN&gt;&lt;P&gt;&lt;SPAN style="color: #000080; font-size: 10pt; font-family: Courier New;"&gt; &lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;SPAN style="font-family: Courier New; color: #000080; font-size: 10pt;"&gt;&lt;SPAN style="color: #000080; font-size: 10pt; font-family: Courier New;"&gt;&lt;P&gt;&lt;/P&gt;&lt;/SPAN&gt;&lt;P&gt;&lt;/P&gt;&lt;/SPAN&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 09 Mar 2012 00:10:42 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/How-do-I-combine-each-row-into-one-big-row/m-p/24998#M4293</guid>
      <dc:creator>ZRick</dc:creator>
      <dc:date>2012-03-09T00:10:42Z</dc:date>
    </item>
    <item>
      <title>How do I combine each row into one big row?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/How-do-I-combine-each-row-into-one-big-row/m-p/24999#M4294</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Not sure what do you mean by 'two rows'. is this what you want?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;proc sql;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; select trim(stmt) into : macrovar1 separated by '' from tmp where cat=1;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; select trim(stmt) into : macrovar2 separated by '' from tmp where cat=2;&lt;/P&gt;&lt;P&gt;quit;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;%put %bquote(&amp;amp;macrovar1); &lt;/P&gt;&lt;P&gt; %put&amp;nbsp;&amp;nbsp; %bquote(&amp;amp;macrovar2);&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Haikuo&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 09 Mar 2012 00:55:33 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/How-do-I-combine-each-row-into-one-big-row/m-p/24999#M4294</guid>
      <dc:creator>Haikuo</dc:creator>
      <dc:date>2012-03-09T00:55:33Z</dc:date>
    </item>
    <item>
      <title>How do I combine each row into one big row?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/How-do-I-combine-each-row-into-one-big-row/m-p/25000#M4295</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;how about:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data tmp;&lt;/P&gt;&lt;P&gt;length stmt $50;&lt;/P&gt;&lt;P&gt;&amp;nbsp; input cat stmt &amp;amp;$;&lt;/P&gt;&lt;P&gt;&amp;nbsp; datalines4;&lt;/P&gt;&lt;P&gt;1 data A;&lt;/P&gt;&lt;P&gt;1 set sashelp.class;&lt;/P&gt;&lt;P&gt;1 run;&lt;/P&gt;&lt;P&gt;1 proc print data=a;&lt;/P&gt;&lt;P&gt;1 run;&lt;/P&gt;&lt;P&gt;2 data B;&lt;/P&gt;&lt;P&gt;2 set sashelp.cars;&lt;/P&gt;&lt;P&gt;2 run;&lt;/P&gt;&lt;P&gt;2 proc print data=b;&lt;/P&gt;&lt;P&gt;2 run;&lt;/P&gt;&lt;P&gt;;;;;&lt;/P&gt;&lt;P&gt;data want (keep=_stmt);&lt;/P&gt;&lt;P&gt;&amp;nbsp; length _stmt $ 100;&lt;/P&gt;&lt;P&gt;&amp;nbsp; set tmp;&lt;/P&gt;&lt;P&gt;&amp;nbsp; by cat;&lt;/P&gt;&lt;P&gt;&amp;nbsp; if first.cat then _stmt='';&lt;/P&gt;&lt;P&gt;&amp;nbsp; retain _stmt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; _stmt=catx('',_stmt,stmt);&lt;/P&gt;&lt;P&gt;&amp;nbsp; if last.cat then output;&lt;/P&gt;&lt;P&gt;&amp;nbsp; run;&lt;/P&gt;&lt;P&gt;&amp;nbsp; proc print;run;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Obs&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; _stmt&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; data A; set sashelp.class; run; proc print data=a; run;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; data B; set sashelp.cars; run; proc print data=b; run;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 09 Mar 2012 00:55:50 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/How-do-I-combine-each-row-into-one-big-row/m-p/25000#M4295</guid>
      <dc:creator>Linlin</dc:creator>
      <dc:date>2012-03-09T00:55:50Z</dc:date>
    </item>
    <item>
      <title>How do I combine each row into one big row?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/How-do-I-combine-each-row-into-one-big-row/m-p/25001#M4296</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;It looks like you are creating dynamic code.&lt;/P&gt;&lt;P&gt;As my experience, CALL EXECUTE is the best choice.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Ksharp&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 09 Mar 2012 01:57:42 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/How-do-I-combine-each-row-into-one-big-row/m-p/25001#M4296</guid>
      <dc:creator>Ksharp</dc:creator>
      <dc:date>2012-03-09T01:57:42Z</dc:date>
    </item>
    <item>
      <title>How do I combine each row into one big row?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/How-do-I-combine-each-row-into-one-big-row/m-p/25002#M4297</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Really really love the code!&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 09 Mar 2012 02:15:20 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/How-do-I-combine-each-row-into-one-big-row/m-p/25002#M4297</guid>
      <dc:creator>ZRick</dc:creator>
      <dc:date>2012-03-09T02:15:20Z</dc:date>
    </item>
    <item>
      <title>How do I combine each row into one big row?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/How-do-I-combine-each-row-into-one-big-row/m-p/25003#M4298</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt; would you mind illustrating little bit?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 09 Mar 2012 02:15:50 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/How-do-I-combine-each-row-into-one-big-row/m-p/25003#M4298</guid>
      <dc:creator>ZRick</dc:creator>
      <dc:date>2012-03-09T02:15:50Z</dc:date>
    </item>
    <item>
      <title>How do I combine each row into one big row?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/How-do-I-combine-each-row-into-one-big-row/m-p/25004#M4299</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt; it is ok to use "Cat =1", "cat =2", &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;but I prefer not to, because that is "hardcoding", &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;if the cat is dynamiclly generated, I have no way of knowing cat=??.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 09 Mar 2012 02:17:49 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/How-do-I-combine-each-row-into-one-big-row/m-p/25004#M4299</guid>
      <dc:creator>ZRick</dc:creator>
      <dc:date>2012-03-09T02:17:49Z</dc:date>
    </item>
    <item>
      <title>How do I combine each row into one big row?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/How-do-I-combine-each-row-into-one-big-row/m-p/25005#M4300</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;proc sql;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; select count(distinct cat) into :mv from tmp;&lt;/P&gt;&lt;P&gt;quit;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;note:&lt;/P&gt;&lt;P&gt;added: distinct, &lt;/P&gt;&lt;P&gt;deleted: group by cat.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 09 Mar 2012 02:26:15 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/How-do-I-combine-each-row-into-one-big-row/m-p/25005#M4300</guid>
      <dc:creator>Haikuo</dc:creator>
      <dc:date>2012-03-09T02:26:15Z</dc:date>
    </item>
    <item>
      <title>How do I combine each row into one big row?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/How-do-I-combine-each-row-into-one-big-row/m-p/25006#M4301</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;For the Linlin's example .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE&gt;data temp;
input tname $40. ;
cards;
sashelp.class
sashelp.cars
;
run;
data _null_;
 set temp;
 call execute(catx(' ','data',scan(tname,-1,'.'),'; set',tname,';run; proc print;run;'));
run;

&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Ksharp&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 09 Mar 2012 05:57:56 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/How-do-I-combine-each-row-into-one-big-row/m-p/25006#M4301</guid>
      <dc:creator>Ksharp</dc:creator>
      <dc:date>2012-03-09T05:57:56Z</dc:date>
    </item>
    <item>
      <title>How do I combine each row into one big row?</title>
      <link>https://communities.sas.com/t5/SAS-Programming/How-do-I-combine-each-row-into-one-big-row/m-p/25007#M4302</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;ZRick,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I can't help but wonder if we're approaching this problem the right way.&amp;nbsp; There's an earlier step that generates all these lines of SAS code.&amp;nbsp; Now we're looking to reorganize them and run them.&amp;nbsp; Would it make sense to break into the earlier step instead?&amp;nbsp; Right now it generates several streams of SAS statements.&amp;nbsp; Would it make more sense for the earlier step to generate stream1.sas with all the cat=1 lines, stream2.sas with all the cat=2 lines, etc.?&amp;nbsp; You would have ready-to-run programs holding all the proper statements.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Just a thought.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 09 Mar 2012 13:26:26 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/How-do-I-combine-each-row-into-one-big-row/m-p/25007#M4302</guid>
      <dc:creator>Astounding</dc:creator>
      <dc:date>2012-03-09T13:26:26Z</dc:date>
    </item>
  </channel>
</rss>

