<?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 replacing value in a column with a value in the same column in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/replacing-value-in-a-column-with-a-value-in-the-same-column/m-p/453017#M283989</link>
    <description>&lt;P&gt;I am trying to automate a manual task which I do with Filters in Excel.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Data A;&lt;/P&gt;&lt;P&gt;Input ID ENDDT NM1 $ NM2 $;&lt;/P&gt;&lt;P&gt;datalines;&lt;/P&gt;&lt;P&gt;123 2/28/2018 Roxy Yen&lt;/P&gt;&lt;P&gt;124 3/23/2018 Roxy Yen&lt;/P&gt;&lt;P&gt;125 1/3/3018 Max Nancy&lt;/P&gt;&lt;P&gt;126 2/20/2016 Yen Ungrouped&lt;/P&gt;&lt;P&gt;127 3/4/2014 Yen Ungrouped&lt;/P&gt;&lt;P&gt;128 1/12/2012 Nancy Ungrouped&lt;/P&gt;&lt;P&gt;129 2/26/2016 Jeff Steve&lt;/P&gt;&lt;P&gt;130 3/22/2017 Max Nancy&lt;/P&gt;&lt;P&gt;;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Step 1 - When there is ungrouped in Nm2, it should&amp;nbsp;take&amp;nbsp;NM1&amp;nbsp;of that row and check if the same name exists in NM2 in some other row, then Ungrouped should be replaced with that value(Ex - For row 126 Ungrouped should be replaced with Yen from either 123 or 124)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Step 2 - After NM2 replacement, NM1 of that row must be replaced with NM1 from which previous NM2 replacement happened(Ex-&amp;nbsp;For row 126 Yen should be replaced by Roxy)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Similarly For ID 128, Ungrouped should be replaced with Nancy by checking either rows 125 or 130 and Nancy in NM1 should be replaced with Max.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Finally there should not be any ungrouped values in NM2, if there is no match found from previous rows, it should print a message with all ID's.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;The dataset should&amp;nbsp;look like this in the end&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;123 2/28/2018 Roxy Yen&lt;/P&gt;&lt;P&gt;124&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;3/23/2018 Roxy Yen&lt;/P&gt;&lt;P&gt;125 1/3/3018 Max Nancy&lt;/P&gt;&lt;P&gt;126 2/20/2016&amp;nbsp;&lt;SPAN&gt;Roxy Yen&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;127 3/4/2014&amp;nbsp;&lt;SPAN&gt;Roxy Yen&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;128 1/12/2012&amp;nbsp;&lt;SPAN&gt;Max Nancy&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;129 2/26/2016 Jeff Steve&lt;/P&gt;&lt;P&gt;130 3/22/2017 Max Nancy&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Please let me know, how can I do this using general SAS programming. Any help would be highly appreciated.&lt;/P&gt;</description>
    <pubDate>Wed, 11 Apr 2018 00:42:34 GMT</pubDate>
    <dc:creator>Teja5b8</dc:creator>
    <dc:date>2018-04-11T00:42:34Z</dc:date>
    <item>
      <title>replacing value in a column with a value in the same column</title>
      <link>https://communities.sas.com/t5/SAS-Programming/replacing-value-in-a-column-with-a-value-in-the-same-column/m-p/453017#M283989</link>
      <description>&lt;P&gt;I am trying to automate a manual task which I do with Filters in Excel.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Data A;&lt;/P&gt;&lt;P&gt;Input ID ENDDT NM1 $ NM2 $;&lt;/P&gt;&lt;P&gt;datalines;&lt;/P&gt;&lt;P&gt;123 2/28/2018 Roxy Yen&lt;/P&gt;&lt;P&gt;124 3/23/2018 Roxy Yen&lt;/P&gt;&lt;P&gt;125 1/3/3018 Max Nancy&lt;/P&gt;&lt;P&gt;126 2/20/2016 Yen Ungrouped&lt;/P&gt;&lt;P&gt;127 3/4/2014 Yen Ungrouped&lt;/P&gt;&lt;P&gt;128 1/12/2012 Nancy Ungrouped&lt;/P&gt;&lt;P&gt;129 2/26/2016 Jeff Steve&lt;/P&gt;&lt;P&gt;130 3/22/2017 Max Nancy&lt;/P&gt;&lt;P&gt;;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Step 1 - When there is ungrouped in Nm2, it should&amp;nbsp;take&amp;nbsp;NM1&amp;nbsp;of that row and check if the same name exists in NM2 in some other row, then Ungrouped should be replaced with that value(Ex - For row 126 Ungrouped should be replaced with Yen from either 123 or 124)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Step 2 - After NM2 replacement, NM1 of that row must be replaced with NM1 from which previous NM2 replacement happened(Ex-&amp;nbsp;For row 126 Yen should be replaced by Roxy)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Similarly For ID 128, Ungrouped should be replaced with Nancy by checking either rows 125 or 130 and Nancy in NM1 should be replaced with Max.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Finally there should not be any ungrouped values in NM2, if there is no match found from previous rows, it should print a message with all ID's.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;The dataset should&amp;nbsp;look like this in the end&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;123 2/28/2018 Roxy Yen&lt;/P&gt;&lt;P&gt;124&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;3/23/2018 Roxy Yen&lt;/P&gt;&lt;P&gt;125 1/3/3018 Max Nancy&lt;/P&gt;&lt;P&gt;126 2/20/2016&amp;nbsp;&lt;SPAN&gt;Roxy Yen&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;127 3/4/2014&amp;nbsp;&lt;SPAN&gt;Roxy Yen&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;128 1/12/2012&amp;nbsp;&lt;SPAN&gt;Max Nancy&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;129 2/26/2016 Jeff Steve&lt;/P&gt;&lt;P&gt;130 3/22/2017 Max Nancy&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Please let me know, how can I do this using general SAS programming. Any help would be highly appreciated.&lt;/P&gt;</description>
      <pubDate>Wed, 11 Apr 2018 00:42:34 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/replacing-value-in-a-column-with-a-value-in-the-same-column/m-p/453017#M283989</guid>
      <dc:creator>Teja5b8</dc:creator>
      <dc:date>2018-04-11T00:42:34Z</dc:date>
    </item>
    <item>
      <title>Re: replacing value in a column with a value in the same column</title>
      <link>https://communities.sas.com/t5/SAS-Programming/replacing-value-in-a-column-with-a-value-in-the-same-column/m-p/453035#M283990</link>
      <description>&lt;P&gt;Without knowing much about your data, this works:&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;
proc sql;
   select a.ID
         ,a.ENDDT
         ,coalesce(b.NM1,a.NM1)  as NM1
         ,coalesce(b.NM2,a.NM2)  as NM2
   from HAVE        a
        left join
        (select unique NM1, NM2 from HAVE where NM2 ne 'Ungrouped') b 
        on  a.NM2 = 'Ungrouped'
        and a.NM1 = b.NM2
   order by ID ;
quit;&lt;/CODE&gt;&lt;/PRE&gt;
&lt;TABLE width="396"&gt;
&lt;TBODY&gt;
&lt;TR&gt;
&lt;TD width="71"&gt;ID&lt;/TD&gt;
&lt;TD width="108"&gt;ENDDT&lt;/TD&gt;
&lt;TD width="108"&gt;NM1&lt;/TD&gt;
&lt;TD width="109"&gt;NM2&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="71"&gt;123&lt;/TD&gt;
&lt;TD width="108"&gt;28-Feb-18&lt;/TD&gt;
&lt;TD width="108"&gt;Roxy&lt;/TD&gt;
&lt;TD width="109"&gt;Yen&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="71"&gt;124&lt;/TD&gt;
&lt;TD width="108"&gt;23-Mar-18&lt;/TD&gt;
&lt;TD width="108"&gt;Roxy&lt;/TD&gt;
&lt;TD width="109"&gt;Yen&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="71"&gt;125&lt;/TD&gt;
&lt;TD width="108"&gt;3-Jan-18&lt;/TD&gt;
&lt;TD width="108"&gt;Max&lt;/TD&gt;
&lt;TD width="109"&gt;Nancy&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="71"&gt;126&lt;/TD&gt;
&lt;TD width="108"&gt;20-Feb-16&lt;/TD&gt;
&lt;TD width="108"&gt;Roxy&lt;/TD&gt;
&lt;TD width="109"&gt;Yen&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="71"&gt;127&lt;/TD&gt;
&lt;TD width="108"&gt;4-Mar-14&lt;/TD&gt;
&lt;TD width="108"&gt;Roxy&lt;/TD&gt;
&lt;TD width="109"&gt;Yen&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="71"&gt;128&lt;/TD&gt;
&lt;TD width="108"&gt;12-Jan-12&lt;/TD&gt;
&lt;TD width="108"&gt;Max&lt;/TD&gt;
&lt;TD width="109"&gt;Nancy&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="71"&gt;129&lt;/TD&gt;
&lt;TD width="108"&gt;26-Feb-16&lt;/TD&gt;
&lt;TD width="108"&gt;Jeff&lt;/TD&gt;
&lt;TD width="109"&gt;Steve&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD width="71"&gt;130&lt;/TD&gt;
&lt;TD width="108"&gt;22-Mar-17&lt;/TD&gt;
&lt;TD width="108"&gt;Max&lt;/TD&gt;
&lt;TD width="109"&gt;Nancy&lt;/TD&gt;
&lt;/TR&gt;
&lt;/TBODY&gt;
&lt;/TABLE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 11 Apr 2018 02:55:51 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/replacing-value-in-a-column-with-a-value-in-the-same-column/m-p/453035#M283990</guid>
      <dc:creator>ChrisNZ</dc:creator>
      <dc:date>2018-04-11T02:55:51Z</dc:date>
    </item>
    <item>
      <title>Re: replacing value in a column with a value in the same column</title>
      <link>https://communities.sas.com/t5/SAS-Programming/replacing-value-in-a-column-with-a-value-in-the-same-column/m-p/454319#M283991</link>
      <description>&lt;P&gt;Thanks Chris. Appreciate your support.&lt;/P&gt;</description>
      <pubDate>Sun, 15 Apr 2018 23:35:30 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/replacing-value-in-a-column-with-a-value-in-the-same-column/m-p/454319#M283991</guid>
      <dc:creator>Teja5b8</dc:creator>
      <dc:date>2018-04-15T23:35:30Z</dc:date>
    </item>
  </channel>
</rss>

