<?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: create two different datasets based on the original dataset in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/create-two-different-datasets-based-on-the-original-dataset/m-p/518581#M140375</link>
    <description>&lt;P&gt;As I see it, you plan to ignore any company for which the matchname is always blank.&amp;nbsp;&amp;nbsp; But otherwise&amp;nbsp;blank matchname records are output to a dataset depending on the number of unique (non-blank) matchnames, right?&amp;nbsp; If so:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data want1 want2;
  do until (last.company_name);
    set have;
    by company_name matchname notsorted;
    if last.matchname and matchname^=' ' then nmatches=sum(nmatches,1);
  end;
  do until (last.company_name);
    set have;
    by company_name ;
    if nmatches=1 then output want1; else
    if nmatches&amp;gt;1 then output want2;
  end;
  drop nmatches;
run;&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Notes:&lt;/P&gt;
&lt;OL&gt;
&lt;LI&gt;This assumes your dataset is sorted by company_name.&lt;/LI&gt;
&lt;LI&gt;Within each company_name&amp;nbsp;group, the data are sub-grouped (but not necessarily in sorted order) by matchname.&lt;/LI&gt;
&lt;LI&gt;It also assumes that there is no blank matchname in the middle of a non-blank matchname group.&amp;nbsp; I.e. it doesn't synthetically generate more matchname groups that actually exist.&lt;/LI&gt;
&lt;LI&gt;Again, if matchname is always blank, then there is no output, per your example.&lt;/LI&gt;
&lt;/OL&gt;</description>
    <pubDate>Tue, 04 Dec 2018 21:08:48 GMT</pubDate>
    <dc:creator>mkeintz</dc:creator>
    <dc:date>2018-12-04T21:08:48Z</dc:date>
    <item>
      <title>create two different datasets based on the original dataset</title>
      <link>https://communities.sas.com/t5/SAS-Programming/create-two-different-datasets-based-on-the-original-dataset/m-p/518552#M140362</link>
      <description>&lt;P&gt;dear all,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;how can I create dataset&amp;nbsp;A and dataset B based on the original dataset (e.g., dataset C)?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;for example,&lt;/P&gt;&lt;P&gt;for the original dataset (dataset C)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;Company name&lt;/TD&gt;&lt;TD&gt;Country&lt;/TD&gt;&lt;TD&gt;Matched BvD ID&lt;/TD&gt;&lt;TD&gt;Matched company name&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;02 MICRO&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;02 MICRO&lt;/TD&gt;&lt;TD&gt;TW&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;02 MICRO&lt;/TD&gt;&lt;TD&gt;US&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1...&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;GB04165791&lt;/TD&gt;&lt;TD&gt;BH (CITY FORUM) LIMITED (Previous name: 1)&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1...&lt;/TD&gt;&lt;TD&gt;GB&lt;/TD&gt;&lt;TD&gt;GB04165791&lt;/TD&gt;&lt;TD&gt;BH (CITY FORUM) LIMITED (Previous name: 1)&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1...&lt;/TD&gt;&lt;TD&gt;US&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;21(TWO-ONE) COMPANY&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;21(TWO-ONE) COMPANY&lt;/TD&gt;&lt;TD&gt;JP&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;21(TWO-ONE) COMPANY&lt;/TD&gt;&lt;TD&gt;US&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;3-D MATRIX&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;JP4010001087940&lt;/TD&gt;&lt;TD&gt;3-D MATRIX,LTD.&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;3-D MATRIX&lt;/TD&gt;&lt;TD&gt;JP&lt;/TD&gt;&lt;TD&gt;JP4010001087940&lt;/TD&gt;&lt;TD&gt;3-D MATRIX,LTD.&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;3-D MATRIX&lt;/TD&gt;&lt;TD&gt;KR&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;3-D MATRIX&lt;/TD&gt;&lt;TD&gt;US&lt;/TD&gt;&lt;TD&gt;US138675448L&lt;/TD&gt;&lt;TD&gt;MATRIX 3D LLC&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I would like to have the dataset A like&lt;/P&gt;&lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;Company name&lt;/TD&gt;&lt;TD&gt;Country&lt;/TD&gt;&lt;TD&gt;Matched BvD ID&lt;/TD&gt;&lt;TD&gt;Matched company name&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1...&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;GB04165791&lt;/TD&gt;&lt;TD&gt;BH (CITY FORUM) LIMITED (Previous name: 1)&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1...&lt;/TD&gt;&lt;TD&gt;GB&lt;/TD&gt;&lt;TD&gt;GB04165791&lt;/TD&gt;&lt;TD&gt;BH (CITY FORUM) LIMITED (Previous name: 1)&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;1...&lt;/TD&gt;&lt;TD&gt;US&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;in the dataset A each group of Company_name has only one distinct Matched_company_name (which is &lt;SPAN&gt;BH (CITY FORUM) LIMITED (Previous name: 1))&lt;/SPAN&gt;.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I would like to also&amp;nbsp;create the dataset B like,&lt;/P&gt;&lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;Company name&lt;/TD&gt;&lt;TD&gt;Country&lt;/TD&gt;&lt;TD&gt;Matched BvD ID&lt;/TD&gt;&lt;TD&gt;Matched company name&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;3-D MATRIX&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;JP4010001087940&lt;/TD&gt;&lt;TD&gt;3-D MATRIX,LTD.&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;3-D MATRIX&lt;/TD&gt;&lt;TD&gt;JP&lt;/TD&gt;&lt;TD&gt;JP4010001087940&lt;/TD&gt;&lt;TD&gt;3-D MATRIX,LTD.&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;3-D MATRIX&lt;/TD&gt;&lt;TD&gt;KR&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;3-D MATRIX&lt;/TD&gt;&lt;TD&gt;US&lt;/TD&gt;&lt;TD&gt;US138675448L&lt;/TD&gt;&lt;TD&gt;MATRIX 3D LLC&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&amp;nbsp;in dataset B, &lt;SPAN&gt;each group of Company_name has&amp;nbsp;at least two distinct Matched_company_name (which are 3-D MATRIX,LTD. and&amp;nbsp;MATRIX 3D LLC).&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;I would like to exclude observations which Company_name are '02 MICRO' and '21(TWO-ONE) COMPANY' as none of them have&amp;nbsp;Matched_company_name variables.&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;could you please give me some suggestion about this?&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Tue, 04 Dec 2018 20:08:04 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/create-two-different-datasets-based-on-the-original-dataset/m-p/518552#M140362</guid>
      <dc:creator>France</dc:creator>
      <dc:date>2018-12-04T20:08:04Z</dc:date>
    </item>
    <item>
      <title>Re: create two different datasets based on the original dataset</title>
      <link>https://communities.sas.com/t5/SAS-Programming/create-two-different-datasets-based-on-the-original-dataset/m-p/518573#M140371</link>
      <description>How do you determine a ‘match’? How similar should the strings be?</description>
      <pubDate>Tue, 04 Dec 2018 20:47:44 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/create-two-different-datasets-based-on-the-original-dataset/m-p/518573#M140371</guid>
      <dc:creator>PeterClemmensen</dc:creator>
      <dc:date>2018-12-04T20:47:44Z</dc:date>
    </item>
    <item>
      <title>Re: create two different datasets based on the original dataset</title>
      <link>https://communities.sas.com/t5/SAS-Programming/create-two-different-datasets-based-on-the-original-dataset/m-p/518581#M140375</link>
      <description>&lt;P&gt;As I see it, you plan to ignore any company for which the matchname is always blank.&amp;nbsp;&amp;nbsp; But otherwise&amp;nbsp;blank matchname records are output to a dataset depending on the number of unique (non-blank) matchnames, right?&amp;nbsp; If so:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data want1 want2;
  do until (last.company_name);
    set have;
    by company_name matchname notsorted;
    if last.matchname and matchname^=' ' then nmatches=sum(nmatches,1);
  end;
  do until (last.company_name);
    set have;
    by company_name ;
    if nmatches=1 then output want1; else
    if nmatches&amp;gt;1 then output want2;
  end;
  drop nmatches;
run;&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Notes:&lt;/P&gt;
&lt;OL&gt;
&lt;LI&gt;This assumes your dataset is sorted by company_name.&lt;/LI&gt;
&lt;LI&gt;Within each company_name&amp;nbsp;group, the data are sub-grouped (but not necessarily in sorted order) by matchname.&lt;/LI&gt;
&lt;LI&gt;It also assumes that there is no blank matchname in the middle of a non-blank matchname group.&amp;nbsp; I.e. it doesn't synthetically generate more matchname groups that actually exist.&lt;/LI&gt;
&lt;LI&gt;Again, if matchname is always blank, then there is no output, per your example.&lt;/LI&gt;
&lt;/OL&gt;</description>
      <pubDate>Tue, 04 Dec 2018 21:08:48 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/create-two-different-datasets-based-on-the-original-dataset/m-p/518581#M140375</guid>
      <dc:creator>mkeintz</dc:creator>
      <dc:date>2018-12-04T21:08:48Z</dc:date>
    </item>
    <item>
      <title>Re: create two different datasets based on the original dataset</title>
      <link>https://communities.sas.com/t5/SAS-Programming/create-two-different-datasets-based-on-the-original-dataset/m-p/518589#M140376</link>
      <description>&lt;P&gt;Creating new tables is seldom needed and even less often a good idea.&lt;/P&gt;
&lt;P&gt;In your case, you can probably do a&amp;nbsp;BY processing&lt;/P&gt;
&lt;P&gt;&lt;FONT face="courier new,courier"&gt;proc XXX;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="courier new,courier"&gt;&amp;nbsp; by&amp;nbsp;&lt;SPAN&gt;Company_Name;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="courier new,courier"&gt;&lt;SPAN&gt;&amp;nbsp; where&amp;nbsp;Matched_Company_Name ne ' ';&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT face="courier new,courier"&gt;&lt;SPAN&gt;run;&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;Would&lt;SPAN&gt;&amp;nbsp;that work for you?&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;Why do some matched records have no matched value?&lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Tue, 04 Dec 2018 21:42:05 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/create-two-different-datasets-based-on-the-original-dataset/m-p/518589#M140376</guid>
      <dc:creator>ChrisNZ</dc:creator>
      <dc:date>2018-12-04T21:42:05Z</dc:date>
    </item>
    <item>
      <title>Re: create two different datasets based on the original dataset</title>
      <link>https://communities.sas.com/t5/SAS-Programming/create-two-different-datasets-based-on-the-original-dataset/m-p/518592#M140377</link>
      <description>&lt;P&gt;&lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/16961"&gt;@ChrisNZ&lt;/a&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;I think the OP wanted to distinguish companies with more than one non-blank matchname value.&amp;nbsp; So a simple where statement would not likely capture it.&amp;nbsp; Companies with nothing but blanks seem to ignored in the required sample output, but otherwise blank records go to the same destination as the non-blank records.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;I suspect the OP has his/her own data set that is (fuzzy?) matched by name against company data from Bureau van Dijk (the BVD_ID column).&amp;nbsp; Sometimes this yields multiple possibilities, and there likely needs to be a good deal of further "disambiguation", or some sort of data consolidation.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;One of the problems with data from BvD, as I recall, was that (unlike many other vendors of corporate data) it did not provide tracking from year to year when there was a spin off or merger.&amp;nbsp; So a user desiring a longer data history would have to try some sort of other ways (including historical name matching) to properly link different data "vintages".&amp;nbsp; It's not a historic research friendly database.&lt;/P&gt;</description>
      <pubDate>Tue, 04 Dec 2018 21:59:48 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/create-two-different-datasets-based-on-the-original-dataset/m-p/518592#M140377</guid>
      <dc:creator>mkeintz</dc:creator>
      <dc:date>2018-12-04T21:59:48Z</dc:date>
    </item>
    <item>
      <title>Re: create two different datasets based on the original dataset</title>
      <link>https://communities.sas.com/t5/SAS-Programming/create-two-different-datasets-based-on-the-original-dataset/m-p/518778#M140443</link>
      <description>&lt;P&gt;Dear mkeintz,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;thank you for your suggestion.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;thanks for your description, that is what I need. however, some company_name variables which recorded with &lt;SPAN&gt;unique (non-blank) Matched_company_name variable are also included in the dataset 'want2'.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;I add a sample in the attachment (include 1000 observations) would you like to check?&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;thanks in advance.&lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Wed, 05 Dec 2018 13:36:49 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/create-two-different-datasets-based-on-the-original-dataset/m-p/518778#M140443</guid>
      <dc:creator>France</dc:creator>
      <dc:date>2018-12-05T13:36:49Z</dc:date>
    </item>
    <item>
      <title>Re: create two different datasets based on the original dataset</title>
      <link>https://communities.sas.com/t5/SAS-Programming/create-two-different-datasets-based-on-the-original-dataset/m-p/518821#M140457</link>
      <description>&lt;P&gt;I think you're the right person to check with your new sample.&amp;nbsp; See if the program produces what you intend.&lt;/P&gt;</description>
      <pubDate>Wed, 05 Dec 2018 15:00:13 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/create-two-different-datasets-based-on-the-original-dataset/m-p/518821#M140457</guid>
      <dc:creator>mkeintz</dc:creator>
      <dc:date>2018-12-05T15:00:13Z</dc:date>
    </item>
  </channel>
</rss>

