<?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 Merging two datasets in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/Merging-two-datasets/m-p/672988#M202340</link>
    <description>&lt;P&gt;Hello All,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I have two datasets with a common variable -number, I am trying to merge them.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Datset1-&lt;/P&gt;&lt;P&gt;Id Number place&lt;/P&gt;&lt;P&gt;1&amp;nbsp; &amp;nbsp; 20&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;A&lt;/P&gt;&lt;P&gt;2&amp;nbsp; &amp;nbsp; 25&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;B&lt;/P&gt;&lt;P&gt;3&amp;nbsp; &amp;nbsp; 30&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;C&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Dataset2-&lt;/P&gt;&lt;P&gt;Number&amp;nbsp; country&lt;/P&gt;&lt;P&gt;20&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; US&lt;/P&gt;&lt;P&gt;20&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; US&amp;nbsp;&amp;nbsp;&lt;/P&gt;&lt;P&gt;20&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; US&lt;/P&gt;&lt;P&gt;21&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; CA&lt;/P&gt;&lt;P&gt;22&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; US&lt;/P&gt;&lt;P&gt;25&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; UK&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;What I would like to have&amp;nbsp; a data set where the number is common&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Dataset - Want&lt;/P&gt;&lt;P&gt;Id Number place Country&lt;/P&gt;&lt;P&gt;1&amp;nbsp; &amp;nbsp; 20&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;A&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;US&lt;/P&gt;&lt;P&gt;1&amp;nbsp; &amp;nbsp; 20&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;US&lt;/P&gt;&lt;P&gt;1&amp;nbsp; &amp;nbsp; 20&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;US&lt;/P&gt;&lt;P&gt;2&amp;nbsp; &amp;nbsp; 25&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;B&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;UK&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I tried using the following statement and got the following output&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Statement:&lt;/P&gt;&lt;P&gt;data want;&lt;/P&gt;&lt;P&gt;set dataset1(in=a) dataset2(in=b);&lt;/P&gt;&lt;P&gt;by number;&lt;/P&gt;&lt;P&gt;if a and b then output;&lt;/P&gt;&lt;P&gt;run;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Output -Want&lt;/P&gt;&lt;P&gt;Id Number place Country&lt;/P&gt;&lt;P&gt;1&amp;nbsp; &amp;nbsp; 20&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;A&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;US&lt;/P&gt;&lt;P&gt;1&amp;nbsp; &amp;nbsp; 20&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;A&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; US&lt;/P&gt;&lt;P&gt;1&amp;nbsp; &amp;nbsp; 20&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;A&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; US&lt;/P&gt;&lt;P&gt;1&amp;nbsp; &amp;nbsp; 20&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;A&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; US&lt;/P&gt;&lt;P&gt;2&amp;nbsp; &amp;nbsp; 25&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;B&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;UK&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Can anyone help?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
    <pubDate>Tue, 28 Jul 2020 22:08:43 GMT</pubDate>
    <dc:creator>ihtishamsultan</dc:creator>
    <dc:date>2020-07-28T22:08:43Z</dc:date>
    <item>
      <title>Merging two datasets</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Merging-two-datasets/m-p/672988#M202340</link>
      <description>&lt;P&gt;Hello All,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I have two datasets with a common variable -number, I am trying to merge them.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Datset1-&lt;/P&gt;&lt;P&gt;Id Number place&lt;/P&gt;&lt;P&gt;1&amp;nbsp; &amp;nbsp; 20&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;A&lt;/P&gt;&lt;P&gt;2&amp;nbsp; &amp;nbsp; 25&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;B&lt;/P&gt;&lt;P&gt;3&amp;nbsp; &amp;nbsp; 30&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;C&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Dataset2-&lt;/P&gt;&lt;P&gt;Number&amp;nbsp; country&lt;/P&gt;&lt;P&gt;20&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; US&lt;/P&gt;&lt;P&gt;20&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; US&amp;nbsp;&amp;nbsp;&lt;/P&gt;&lt;P&gt;20&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; US&lt;/P&gt;&lt;P&gt;21&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; CA&lt;/P&gt;&lt;P&gt;22&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; US&lt;/P&gt;&lt;P&gt;25&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; UK&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;What I would like to have&amp;nbsp; a data set where the number is common&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Dataset - Want&lt;/P&gt;&lt;P&gt;Id Number place Country&lt;/P&gt;&lt;P&gt;1&amp;nbsp; &amp;nbsp; 20&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;A&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;US&lt;/P&gt;&lt;P&gt;1&amp;nbsp; &amp;nbsp; 20&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;US&lt;/P&gt;&lt;P&gt;1&amp;nbsp; &amp;nbsp; 20&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;US&lt;/P&gt;&lt;P&gt;2&amp;nbsp; &amp;nbsp; 25&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;B&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;UK&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I tried using the following statement and got the following output&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Statement:&lt;/P&gt;&lt;P&gt;data want;&lt;/P&gt;&lt;P&gt;set dataset1(in=a) dataset2(in=b);&lt;/P&gt;&lt;P&gt;by number;&lt;/P&gt;&lt;P&gt;if a and b then output;&lt;/P&gt;&lt;P&gt;run;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Output -Want&lt;/P&gt;&lt;P&gt;Id Number place Country&lt;/P&gt;&lt;P&gt;1&amp;nbsp; &amp;nbsp; 20&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;A&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;US&lt;/P&gt;&lt;P&gt;1&amp;nbsp; &amp;nbsp; 20&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;A&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; US&lt;/P&gt;&lt;P&gt;1&amp;nbsp; &amp;nbsp; 20&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;A&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; US&lt;/P&gt;&lt;P&gt;1&amp;nbsp; &amp;nbsp; 20&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;A&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; US&lt;/P&gt;&lt;P&gt;2&amp;nbsp; &amp;nbsp; 25&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;B&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;UK&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Can anyone help?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Tue, 28 Jul 2020 22:08:43 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Merging-two-datasets/m-p/672988#M202340</guid>
      <dc:creator>ihtishamsultan</dc:creator>
      <dc:date>2020-07-28T22:08:43Z</dc:date>
    </item>
    <item>
      <title>Re: Merging two datasets</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Merging-two-datasets/m-p/672996#M202348</link>
      <description>&lt;P&gt;Please watch the spelling of things like data set names.&lt;/P&gt;
&lt;P&gt;If at all possible provide data in the form of a data step and paste code into a code box opened on the forum with the &amp;lt;/&amp;gt; icon. Text pasted into the main message boxes will get reformatted by the forum and may result in "code" that no longer works when someone else copies and tries to use it, such as testing code against your data.&lt;/P&gt;
&lt;P&gt;Consider:&lt;/P&gt;
&lt;PRE&gt;data Dataset1;
   input Id Number place $;
datalines;
1    20         A
2    25         B
3    30         C
;
 
data Dataset2;
   input number  country $;
datalines;
20            US
20            US  
20            US
21            CA
22            US
25            UK
;

data want;
   merge dataset1 (in=in1)
         dataset2 (in=in2)
   ;
   by number;
   if not first.number then call missing(place);
   if in1 and in2;
run;
&lt;/PRE&gt;
&lt;P&gt;You didn't want a SET statement, which appends or stacks data sets, MERGE combines them row by row.&lt;/P&gt;
&lt;P&gt;The BY number now tries to align values based on the value of number.&lt;/P&gt;
&lt;P&gt;The "if in1 and in2" only keeps records that appear with values from both sets (i.e. matching Number).&lt;/P&gt;
&lt;P&gt;Since you have a peculiar requirement to have Place missing when multiple number matches occur the that is done with the call missing to set the Place to missing except for the first value of each number match.&lt;/P&gt;
&lt;P&gt;When you use BY in a data step SAS provides automatic variables First. and Last. (please notice the dots) that are used to tell if a specific row has the First or last of each by group value. They are true/false boolean values that can be used as shown.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;If you have multiple values of number in both sets then you have many-to-many merge and it is very likely that a data step merge won't get what you want.&lt;/P&gt;</description>
      <pubDate>Tue, 28 Jul 2020 22:12:15 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Merging-two-datasets/m-p/672996#M202348</guid>
      <dc:creator>ballardw</dc:creator>
      <dc:date>2020-07-28T22:12:15Z</dc:date>
    </item>
    <item>
      <title>Re: Merging two datasets</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Merging-two-datasets/m-p/673105#M202426</link>
      <description>&lt;P&gt;Thank you for your reply.&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I will keep in mind and use the &amp;lt;/&amp;gt; icon.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;In my real dataset, I have many variables like "place". Can you please advice how should I go about that?&lt;/P&gt;</description>
      <pubDate>Wed, 29 Jul 2020 13:00:40 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Merging-two-datasets/m-p/673105#M202426</guid>
      <dc:creator>ihtishamsultan</dc:creator>
      <dc:date>2020-07-29T13:00:40Z</dc:date>
    </item>
    <item>
      <title>Re: Merging two datasets</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Merging-two-datasets/m-p/673141#M202442</link>
      <description>&lt;BLOCKQUOTE&gt;&lt;HR /&gt;&lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/235318"&gt;@ihtishamsultan&lt;/a&gt;&amp;nbsp;wrote:&lt;BR /&gt;
&lt;P&gt;Thank you for your reply.&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;I will keep in mind and use the &amp;lt;/&amp;gt; icon.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;In my real dataset, I have many variables like "place". Can you please advice how should I go about that?&lt;/P&gt;
&lt;HR /&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;Are they all supposed to be set missing the same way? Then place all the variable names separated by commas like Call Missing(place, othervar, thatvar).&lt;/P&gt;
&lt;P&gt;Call missing is one of the few functions that will handle multiple variables of different types, so you can mix numeric and character functions.&lt;/P&gt;
&lt;P&gt;If you need something else done with other variables then you will need to provide example data and rules for what is to be done.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 29 Jul 2020 14:18:05 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Merging-two-datasets/m-p/673141#M202442</guid>
      <dc:creator>ballardw</dc:creator>
      <dc:date>2020-07-29T14:18:05Z</dc:date>
    </item>
    <item>
      <title>Re: Merging two datasets</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Merging-two-datasets/m-p/673312#M202528</link>
      <description>Thank you, yes I wanted all of them to be missing. I'll separate them by commas as you advised.&lt;BR /&gt;&lt;BR /&gt;Thanks again.</description>
      <pubDate>Wed, 29 Jul 2020 21:16:54 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Merging-two-datasets/m-p/673312#M202528</guid>
      <dc:creator>ihtishamsultan</dc:creator>
      <dc:date>2020-07-29T21:16:54Z</dc:date>
    </item>
  </channel>
</rss>

