<?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: merging data in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/merging-data/m-p/479277#M123674</link>
    <description>&lt;P&gt;Many thanks hashman&lt;/P&gt;</description>
    <pubDate>Wed, 18 Jul 2018 21:08:03 GMT</pubDate>
    <dc:creator>Archibald2</dc:creator>
    <dc:date>2018-07-18T21:08:03Z</dc:date>
    <item>
      <title>merging data</title>
      <link>https://communities.sas.com/t5/SAS-Programming/merging-data/m-p/479118#M123619</link>
      <description>&lt;P&gt;Hello,&amp;nbsp;&lt;/P&gt;&lt;P&gt;I need to merge the DATASET 1&amp;nbsp; with DATASET 2&amp;nbsp; to get to a final dataset "DATA WANT" and I need some guidance.&lt;/P&gt;&lt;P&gt;please note that dataset 1 is a matched pair data of students and dataset 2&amp;nbsp; contains additional variables on the matched pairs data.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;DATASET 1&lt;/P&gt;&lt;DIV class="branch"&gt;&lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;groupA_id&lt;/TD&gt;&lt;TD&gt;groupB_id&lt;/TD&gt;&lt;TD&gt;groupA_grade&lt;/TD&gt;&lt;TD&gt;groupB_grade&lt;/TD&gt;&lt;TD&gt;groupA_sex&lt;/TD&gt;&lt;TD&gt;groupB_sex&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;00000-000001&lt;/TD&gt;&lt;TD&gt;00000-000200&lt;/TD&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;00000-000001&lt;/TD&gt;&lt;TD&gt;00000-000201&lt;/TD&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;00000-000001&lt;/TD&gt;&lt;TD&gt;00000-000202&lt;/TD&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;00000-000002&lt;/TD&gt;&lt;TD&gt;00000-000203&lt;/TD&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;00000-000002&lt;/TD&gt;&lt;TD&gt;00000-000204&lt;/TD&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;00000-000002&lt;/TD&gt;&lt;TD&gt;00000-000205&lt;/TD&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;00000-000003&lt;/TD&gt;&lt;TD&gt;00000-000206&lt;/TD&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;00000-000003&lt;/TD&gt;&lt;TD&gt;00000-000207&lt;/TD&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;00000-000003&lt;/TD&gt;&lt;TD&gt;00000-000208&lt;/TD&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;/DIV&gt;&lt;DIV class="branch"&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV class="branch"&gt;&lt;BR /&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV class="branch"&gt;&lt;DIV&gt;DATASET 2&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp; &lt;TABLE border="0" cellspacing="0" cellpadding="0"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;id&lt;/TD&gt;&lt;TD&gt;Siblings&lt;/TD&gt;&lt;TD&gt;economic status&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;00000-000001&lt;/TD&gt;&lt;TD&gt;Yes&lt;/TD&gt;&lt;TD&gt;low&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;00000-000001&lt;/TD&gt;&lt;TD&gt;yes&lt;/TD&gt;&lt;TD&gt;low&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;00000-000001&lt;/TD&gt;&lt;TD&gt;yes&lt;/TD&gt;&lt;TD&gt;low&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;00000-000002&lt;/TD&gt;&lt;TD&gt;yes&lt;/TD&gt;&lt;TD&gt;low&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;00000-000002&lt;/TD&gt;&lt;TD&gt;yes&lt;/TD&gt;&lt;TD&gt;low&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;00000-000002&lt;/TD&gt;&lt;TD&gt;yes&lt;/TD&gt;&lt;TD&gt;low&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;00000-000003&lt;/TD&gt;&lt;TD&gt;no&lt;/TD&gt;&lt;TD&gt;high&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;00000-000003&lt;/TD&gt;&lt;TD&gt;no&lt;/TD&gt;&lt;TD&gt;high&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;00000-000003&lt;/TD&gt;&lt;TD&gt;no&lt;/TD&gt;&lt;TD&gt;high&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;00000-000200&lt;/TD&gt;&lt;TD&gt;yes&lt;/TD&gt;&lt;TD&gt;low&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;00000-000201&lt;/TD&gt;&lt;TD&gt;no&lt;/TD&gt;&lt;TD&gt;low&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;00000-000202&lt;/TD&gt;&lt;TD&gt;no&lt;/TD&gt;&lt;TD&gt;high&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;00000-000203&lt;/TD&gt;&lt;TD&gt;no&lt;/TD&gt;&lt;TD&gt;medium&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;00000-000204&lt;/TD&gt;&lt;TD&gt;no&lt;/TD&gt;&lt;TD&gt;high&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;00000-000205&lt;/TD&gt;&lt;TD&gt;yes&lt;/TD&gt;&lt;TD&gt;low&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;00000-000206&lt;/TD&gt;&lt;TD&gt;no&lt;/TD&gt;&lt;TD&gt;medium&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;00000-000207&lt;/TD&gt;&lt;TD&gt;yes&lt;/TD&gt;&lt;TD&gt;high&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;00000-000208&lt;/TD&gt;&lt;TD&gt;yes&lt;/TD&gt;&lt;TD&gt;high&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&lt;P&gt;DATA WANT&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;id&lt;/TD&gt;&lt;TD&gt;grade&lt;/TD&gt;&lt;TD&gt;sex&lt;/TD&gt;&lt;TD&gt;Siblings&lt;/TD&gt;&lt;TD&gt;economic status&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;00000-000001&lt;/TD&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;Yes&lt;/TD&gt;&lt;TD&gt;low&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;00000-000002&lt;/TD&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;yes&lt;/TD&gt;&lt;TD&gt;low&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;00000-000003&lt;/TD&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;no&lt;/TD&gt;&lt;TD&gt;high&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;00000-000002&lt;/TD&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;yes&lt;/TD&gt;&lt;TD&gt;low&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;00000-000200&lt;/TD&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;yes&lt;/TD&gt;&lt;TD&gt;low&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;00000-000201&lt;/TD&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;no&lt;/TD&gt;&lt;TD&gt;low&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;00000-000202&lt;/TD&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;no&lt;/TD&gt;&lt;TD&gt;high&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;00000-000203&lt;/TD&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;no&lt;/TD&gt;&lt;TD&gt;medium&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;00000-000204&lt;/TD&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;no&lt;/TD&gt;&lt;TD&gt;high&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;00000-000205&lt;/TD&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;yes&lt;/TD&gt;&lt;TD&gt;low&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;00000-000206&lt;/TD&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;no&lt;/TD&gt;&lt;TD&gt;medium&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;00000-000207&lt;/TD&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;yes&lt;/TD&gt;&lt;TD&gt;high&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;00000-000208&lt;/TD&gt;&lt;TD&gt;2&lt;/TD&gt;&lt;TD&gt;1&lt;/TD&gt;&lt;TD&gt;yes&lt;/TD&gt;&lt;TD&gt;high&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;Any help would be appreciated. Thanks&lt;/DIV&gt;&lt;/DIV&gt;</description>
      <pubDate>Wed, 18 Jul 2018 16:01:54 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/merging-data/m-p/479118#M123619</guid>
      <dc:creator>Archibald2</dc:creator>
      <dc:date>2018-07-18T16:01:54Z</dc:date>
    </item>
    <item>
      <title>Re: merging data</title>
      <link>https://communities.sas.com/t5/SAS-Programming/merging-data/m-p/479206#M123652</link>
      <description>&lt;P&gt;Your sample output is inconsistent in terms of keeping ID duplicates because ID=&lt;SPAN&gt;00000-000002 is duplicated while the rest are not. Assuming that it's a typo and you don't want any dupes but only the first ID encountered in the data set 2, you can proceed as follows:&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;PRE&gt;data want (drop = group: rc) ;                                                 
  if _n_ = 1 then do ;                                                         
    dcl hash h (ordered:"a") ;                                                 
    h.defineKey ("id") ;                                                       
    h.defineData ("id", "grade", "sex") ;                                      
    h.defineDone () ;                                                          
    do until (z) ;                                                             
      set ds1 end = z ;                                                        
      id = groupa_id ; grade = groupa_grade ; sex = groupa_sex ; rc = h.add() ;
      id = groupb_id ; grade = groupb_grade ; sex = groupb_sex ; rc = h.add() ;
    end ;                                                                      
    h.output (dataset:"hash") ;                                                
    dcl hash u () ;                                                            
    u.defineKey ("id") ;                                                       
    u.defineDone () ;                                                          
  end ;                                                                        
  set ds2 ;                                           
  if u.check() ne 0 ;                                                          
  u.add() ;                                                                    
  if h.find() ne 0 then call missing (grade, sex) ;                            
run ;                                                                          &lt;/PRE&gt;&lt;P&gt;&lt;SPAN&gt;If you want to keep the dupes from DS2, get rid of the hash table U and the related statements with the method calls referencing U.&lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Wed, 18 Jul 2018 18:58:41 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/merging-data/m-p/479206#M123652</guid>
      <dc:creator>hashman</dc:creator>
      <dc:date>2018-07-18T18:58:41Z</dc:date>
    </item>
    <item>
      <title>Re: merging data</title>
      <link>https://communities.sas.com/t5/SAS-Programming/merging-data/m-p/479277#M123674</link>
      <description>&lt;P&gt;Many thanks hashman&lt;/P&gt;</description>
      <pubDate>Wed, 18 Jul 2018 21:08:03 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/merging-data/m-p/479277#M123674</guid>
      <dc:creator>Archibald2</dc:creator>
      <dc:date>2018-07-18T21:08:03Z</dc:date>
    </item>
  </channel>
</rss>

