<?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: Making a duplicate row or &amp;quot;splitting a row in to many&amp;quot; in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/Making-a-duplicate-row-or-quot-splitting-a-row-in-to-many-quot/m-p/618959#M181638</link>
    <description>&lt;P&gt;&lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/215463"&gt;@jimmychoi&lt;/a&gt;:&lt;/P&gt;
&lt;P&gt;The concept is the same as &lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/138205"&gt;@novinosrin&lt;/a&gt;'s, just the mechanism of resurrecting the variables after they are nulled is a bit different:&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data have ;                                                                                                                                      
  input (company_name rd mfg failed) ($) ;                                                                                                       
  cards ;                                                                                                                                        
1abtik RD.PRO   .     F.PRO                                                                                                                      
Oncol    .     M.PRO  F.PRO                                                                                                                      
Thera  RD.PRO   .      .                                                                                                                         
Group  RD.PRO  M.PRO   .                                                                                                                         
;                                                                                                                                                
                                                                                                                                                 
data want (drop = _:) ;                                                                                                                          
  set have ;                                                                                                                                     
  array cc rd mfg failed ;                                                                                                                       
  do over cc ;                                                                                                                                   
    _t = cc ;                                                                                                                                    
    call missing (of cc[*]) ;                                                                                                                    
    cc = _t ;                                                                                                                                    
    if not cmiss (cc) then output ;                                                                                                              
    set have point = _n_ ;                                                                                                                       
  end ;                                                                                                                                          
run ;                 
&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;Kind regards&lt;/P&gt;
&lt;P&gt;Paul D.&lt;/P&gt;</description>
    <pubDate>Tue, 21 Jan 2020 20:54:38 GMT</pubDate>
    <dc:creator>hashman</dc:creator>
    <dc:date>2020-01-21T20:54:38Z</dc:date>
    <item>
      <title>Making a duplicate row or "splitting a row in to many"</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Making-a-duplicate-row-or-quot-splitting-a-row-in-to-many-quot/m-p/618863#M181604</link>
      <description>&lt;P&gt;Dear experts,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I want to duplicate a data set.&lt;/P&gt;&lt;P&gt;and what I want is to duplicate or split a specific row having more than one "RD", "MFG", "Failed" marked.&lt;/P&gt;&lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;Company_Name&lt;/TD&gt;&lt;TD&gt;RD&lt;/TD&gt;&lt;TD&gt;MFG&lt;/TD&gt;&lt;TD&gt;Failed&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1abtik ag&lt;/TD&gt;&lt;TD&gt;RD.PRO&lt;/TD&gt;&lt;TD&gt;　&lt;/TD&gt;&lt;TD&gt;F.PRO&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;21st Century Oncology Inc&lt;/TD&gt;&lt;TD&gt;　&lt;/TD&gt;&lt;TD&gt;M.PRO&lt;/TD&gt;&lt;TD&gt;F.PRO&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;21st Century Therapeutics&lt;/TD&gt;&lt;TD&gt;RD.PRO&lt;/TD&gt;&lt;TD&gt;　&lt;/TD&gt;&lt;TD&gt;　&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;22nd Century Group Inc&lt;/TD&gt;&lt;TD&gt;RD.PRO&lt;/TD&gt;&lt;TD&gt;M.PRO&lt;/TD&gt;&lt;TD&gt;　&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;below is the desired output:&lt;/P&gt;&lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;Company_Name&lt;/TD&gt;&lt;TD&gt;RD&lt;/TD&gt;&lt;TD&gt;MFG&lt;/TD&gt;&lt;TD&gt;Failed&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1abtik ag&lt;/TD&gt;&lt;TD&gt;RD.PRO&lt;/TD&gt;&lt;TD&gt;　&lt;/TD&gt;&lt;TD&gt;　&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1abtik ag&lt;/TD&gt;&lt;TD&gt;　&lt;/TD&gt;&lt;TD&gt;　&lt;/TD&gt;&lt;TD&gt;F.PRO&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;21st Century Oncology Inc&lt;/TD&gt;&lt;TD&gt;　&lt;/TD&gt;&lt;TD&gt;M.PRO&lt;/TD&gt;&lt;TD&gt;　&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;21st Century Oncology Inc&lt;/TD&gt;&lt;TD&gt;　&lt;/TD&gt;&lt;TD&gt;　&lt;/TD&gt;&lt;TD&gt;F.PRO&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;21st Century Therapeutics&lt;/TD&gt;&lt;TD&gt;RD.PRO&lt;/TD&gt;&lt;TD&gt;　&lt;/TD&gt;&lt;TD&gt;　&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;22nd Century Group Inc&lt;/TD&gt;&lt;TD&gt;RD.PRO&lt;/TD&gt;&lt;TD&gt;　&lt;/TD&gt;&lt;TD&gt;　&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;22nd Century Group Inc&lt;/TD&gt;&lt;TD&gt;　&lt;/TD&gt;&lt;TD&gt;M.PRO&lt;/TD&gt;&lt;TD&gt;　&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;</description>
      <pubDate>Tue, 21 Jan 2020 13:49:13 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Making-a-duplicate-row-or-quot-splitting-a-row-in-to-many-quot/m-p/618863#M181604</guid>
      <dc:creator>jimmychoi</dc:creator>
      <dc:date>2020-01-21T13:49:13Z</dc:date>
    </item>
    <item>
      <title>Re: Making a duplicate row or "splitting a row in to many"</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Making-a-duplicate-row-or-quot-splitting-a-row-in-to-many-quot/m-p/618867#M181605</link>
      <description>&lt;P&gt;Hi&amp;nbsp;&lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/215463"&gt;@jimmychoi&lt;/a&gt;&amp;nbsp; Long time,, hope you are well&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;
data have;
input Company_Name &amp;amp; $30.	(RD	MFG	Failed) ($);
cards;
1abtik ag	RD.PRO	.　	F.PRO
21st Century Oncology Inc	.　	M.PRO	F.PRO
21st Century Therapeutics	RD.PRO	　. .	　
22nd Century Group Inc	 RD.PRO	M.PRO	.　
;

data want;
 set have;
 array t rd mfg failed;
 array temp(3) $20;
 if dim(t)-cmiss(of t(*))&amp;gt;1 then do;
 do over t;
  temp(_i_)=t;
 end;
 call missing(of t(*));
 do over t;
  if temp(_i_)&amp;gt;' ' then do;
  t=temp(_i_);
  output;
  call missing(t);
  end;
 end;
 end;
 else output;
 drop temp:;
run;&lt;/CODE&gt;&lt;/PRE&gt;</description>
      <pubDate>Tue, 21 Jan 2020 14:05:34 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Making-a-duplicate-row-or-quot-splitting-a-row-in-to-many-quot/m-p/618867#M181605</guid>
      <dc:creator>novinosrin</dc:creator>
      <dc:date>2020-01-21T14:05:34Z</dc:date>
    </item>
    <item>
      <title>Re: Making a duplicate row or "splitting a row in to many"</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Making-a-duplicate-row-or-quot-splitting-a-row-in-to-many-quot/m-p/618959#M181638</link>
      <description>&lt;P&gt;&lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/215463"&gt;@jimmychoi&lt;/a&gt;:&lt;/P&gt;
&lt;P&gt;The concept is the same as &lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/138205"&gt;@novinosrin&lt;/a&gt;'s, just the mechanism of resurrecting the variables after they are nulled is a bit different:&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data have ;                                                                                                                                      
  input (company_name rd mfg failed) ($) ;                                                                                                       
  cards ;                                                                                                                                        
1abtik RD.PRO   .     F.PRO                                                                                                                      
Oncol    .     M.PRO  F.PRO                                                                                                                      
Thera  RD.PRO   .      .                                                                                                                         
Group  RD.PRO  M.PRO   .                                                                                                                         
;                                                                                                                                                
                                                                                                                                                 
data want (drop = _:) ;                                                                                                                          
  set have ;                                                                                                                                     
  array cc rd mfg failed ;                                                                                                                       
  do over cc ;                                                                                                                                   
    _t = cc ;                                                                                                                                    
    call missing (of cc[*]) ;                                                                                                                    
    cc = _t ;                                                                                                                                    
    if not cmiss (cc) then output ;                                                                                                              
    set have point = _n_ ;                                                                                                                       
  end ;                                                                                                                                          
run ;                 
&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;Kind regards&lt;/P&gt;
&lt;P&gt;Paul D.&lt;/P&gt;</description>
      <pubDate>Tue, 21 Jan 2020 20:54:38 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Making-a-duplicate-row-or-quot-splitting-a-row-in-to-many-quot/m-p/618959#M181638</guid>
      <dc:creator>hashman</dc:creator>
      <dc:date>2020-01-21T20:54:38Z</dc:date>
    </item>
    <item>
      <title>Re: Making a duplicate row or "splitting a row in to many"</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Making-a-duplicate-row-or-quot-splitting-a-row-in-to-many-quot/m-p/619131#M181716</link>
      <description>&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data have;
infile cards expandtabs truncover;
input Company_Name &amp;amp; $30.	(RD	MFG	Failed) ($);
cards;
1abtik ag	  RD.PRO . 	F.PRO
21st Century Oncology Inc	  . M.PRO	F.PRO
21st Century Therapeutics	  RD.PRO	 .  .	　
22nd Century Group Inc	   RD.PRO	M.PRO  . 
;
proc transpose data=have out=temp;
by Company_Name;
var RD	MFG	Failed;
run;

data temp;
 set temp(where=(col1 is not missing));
 by Company_Name;
 if first.Company_Name then n=0;
 n+1;
run;
proc transpose data=temp out=want(drop=_:);
by Company_Name n;
var col1;
id _name_;
run;

&lt;/CODE&gt;&lt;/PRE&gt;</description>
      <pubDate>Wed, 22 Jan 2020 12:44:29 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Making-a-duplicate-row-or-quot-splitting-a-row-in-to-many-quot/m-p/619131#M181716</guid>
      <dc:creator>Ksharp</dc:creator>
      <dc:date>2020-01-22T12:44:29Z</dc:date>
    </item>
  </channel>
</rss>

