<?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: Data Manipulation in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/Data-Manipulation/m-p/727277#M226166</link>
    <description>&lt;BLOCKQUOTE&gt;&lt;HR /&gt;&lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/336862"&gt;@newsas007&lt;/a&gt;&amp;nbsp;wrote:&lt;BR /&gt;
&lt;P&gt;Hi there,&lt;/P&gt;
&lt;P&gt;I have data that has pre and post indo. I need a new data that should not include conditions that occurred in pre. For example, ID#1 has Anemia and Diarrhea in pre and post both. The new data needs to delete these observations.&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Data have:&lt;/P&gt;
&lt;TABLE width="359"&gt;
&lt;TBODY&gt;
&lt;TR&gt;
&lt;TD width="64"&gt;ID&lt;/TD&gt;
&lt;TD width="75"&gt;DateX&lt;/TD&gt;
&lt;TD width="156"&gt;Conditions&lt;/TD&gt;
&lt;TD width="64"&gt;Type&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;1&lt;/TD&gt;
&lt;TD&gt;12/25/2019&lt;/TD&gt;
&lt;TD&gt;Anemia&lt;/TD&gt;
&lt;TD&gt;Post&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;1&lt;/TD&gt;
&lt;TD&gt;11/5/2018&lt;/TD&gt;
&lt;TD&gt;Colitis&lt;/TD&gt;
&lt;TD&gt;Post&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;1&lt;/TD&gt;
&lt;TD&gt;11/5/2018&lt;/TD&gt;
&lt;TD&gt;Diarrhea&lt;/TD&gt;
&lt;TD&gt;Post&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;1&lt;/TD&gt;
&lt;TD&gt;11/24/2019&lt;/TD&gt;
&lt;TD&gt;Kidney failure/disease&lt;/TD&gt;
&lt;TD&gt;Post&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;1&lt;/TD&gt;
&lt;TD&gt;12/12/2018&lt;/TD&gt;
&lt;TD&gt;Neuro&lt;/TD&gt;
&lt;TD&gt;Post&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;1&lt;/TD&gt;
&lt;TD&gt;5/20/2017&lt;/TD&gt;
&lt;TD&gt;Anemia&lt;/TD&gt;
&lt;TD&gt;Pre&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;1&lt;/TD&gt;
&lt;TD&gt;5/20/2017&lt;/TD&gt;
&lt;TD&gt;Diarrhea&lt;/TD&gt;
&lt;TD&gt;Pre&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;1&lt;/TD&gt;
&lt;TD&gt;9/14/2017&lt;/TD&gt;
&lt;TD&gt;Myositis&lt;/TD&gt;
&lt;TD&gt;Pre&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;1&lt;/TD&gt;
&lt;TD&gt;4/24/2017&lt;/TD&gt;
&lt;TD&gt;Polyneuropathy&lt;/TD&gt;
&lt;TD&gt;Pre&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;2&lt;/TD&gt;
&lt;TD&gt;8/19/2020&lt;/TD&gt;
&lt;TD&gt;Adrenal/Adrenocortical&lt;/TD&gt;
&lt;TD&gt;Post&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;2&lt;/TD&gt;
&lt;TD&gt;3/23/2020&lt;/TD&gt;
&lt;TD&gt;Colitis&lt;/TD&gt;
&lt;TD&gt;Post&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;2&lt;/TD&gt;
&lt;TD&gt;10/7/2019&lt;/TD&gt;
&lt;TD&gt;Neutropenia&lt;/TD&gt;
&lt;TD&gt;Post&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;3&lt;/TD&gt;
&lt;TD&gt;7/9/2017&lt;/TD&gt;
&lt;TD&gt;Dermatitis/Rash&lt;/TD&gt;
&lt;TD&gt;Post&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;3&lt;/TD&gt;
&lt;TD&gt;4/22/2018&lt;/TD&gt;
&lt;TD&gt;Liver failure/disease&lt;/TD&gt;
&lt;TD&gt;Post&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;3&lt;/TD&gt;
&lt;TD&gt;4/5/2015&lt;/TD&gt;
&lt;TD&gt;Myositis&lt;/TD&gt;
&lt;TD&gt;Post&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;3&lt;/TD&gt;
&lt;TD&gt;6/8/2015&lt;/TD&gt;
&lt;TD&gt;Neuro&lt;/TD&gt;
&lt;TD&gt;Post&lt;/TD&gt;
&lt;/TR&gt;
&lt;/TBODY&gt;
&lt;/TABLE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Data Want:&lt;/P&gt;
&lt;TABLE width="359"&gt;
&lt;TBODY&gt;
&lt;TR&gt;
&lt;TD width="64"&gt;ID&lt;/TD&gt;
&lt;TD width="75"&gt;DateX&lt;/TD&gt;
&lt;TD width="156"&gt;Conditions&lt;/TD&gt;
&lt;TD width="64"&gt;Type&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;1&lt;/TD&gt;
&lt;TD&gt;12/25/2019&lt;/TD&gt;
&lt;TD&gt;Anemia&lt;/TD&gt;
&lt;TD&gt;Post&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;1&lt;/TD&gt;
&lt;TD&gt;11/5/2018&lt;/TD&gt;
&lt;TD&gt;Colitis&lt;/TD&gt;
&lt;TD&gt;Post&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;1&lt;/TD&gt;
&lt;TD&gt;11/5/2018&lt;/TD&gt;
&lt;TD&gt;Diarrhea&lt;/TD&gt;
&lt;TD&gt;Post&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;1&lt;/TD&gt;
&lt;TD&gt;11/24/2019&lt;/TD&gt;
&lt;TD&gt;Kidney failure/disease&lt;/TD&gt;
&lt;TD&gt;Post&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;1&lt;/TD&gt;
&lt;TD&gt;12/12/2018&lt;/TD&gt;
&lt;TD&gt;Neuro&lt;/TD&gt;
&lt;TD&gt;Post&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;1&lt;/TD&gt;
&lt;TD&gt;5/20/2017&lt;/TD&gt;
&lt;TD&gt;Anemia&lt;/TD&gt;
&lt;TD&gt;Pre&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;1&lt;/TD&gt;
&lt;TD&gt;5/20/2017&lt;/TD&gt;
&lt;TD&gt;Diarrhea&lt;/TD&gt;
&lt;TD&gt;Pre&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;1&lt;/TD&gt;
&lt;TD&gt;9/14/2017&lt;/TD&gt;
&lt;TD&gt;Myositis&lt;/TD&gt;
&lt;TD&gt;Pre&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;1&lt;/TD&gt;
&lt;TD&gt;4/24/2017&lt;/TD&gt;
&lt;TD&gt;Polyneuropathy&lt;/TD&gt;
&lt;TD&gt;Pre&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;2&lt;/TD&gt;
&lt;TD&gt;8/19/2020&lt;/TD&gt;
&lt;TD&gt;Adrenal/Adrenocortical&lt;/TD&gt;
&lt;TD&gt;Post&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;2&lt;/TD&gt;
&lt;TD&gt;3/23/2020&lt;/TD&gt;
&lt;TD&gt;Colitis&lt;/TD&gt;
&lt;TD&gt;Post&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;2&lt;/TD&gt;
&lt;TD&gt;10/7/2019&lt;/TD&gt;
&lt;TD&gt;Neutropenia&lt;/TD&gt;
&lt;TD&gt;Post&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;3&lt;/TD&gt;
&lt;TD&gt;7/9/2017&lt;/TD&gt;
&lt;TD&gt;Dermatitis/Rash&lt;/TD&gt;
&lt;TD&gt;Post&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;3&lt;/TD&gt;
&lt;TD&gt;4/22/2018&lt;/TD&gt;
&lt;TD&gt;Liver failure/disease&lt;/TD&gt;
&lt;TD&gt;Post&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;3&lt;/TD&gt;
&lt;TD&gt;4/5/2015&lt;/TD&gt;
&lt;TD&gt;Myositis&lt;/TD&gt;
&lt;TD&gt;Post&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;3&lt;/TD&gt;
&lt;TD&gt;6/8/2015&lt;/TD&gt;
&lt;TD&gt;Neuro&lt;/TD&gt;
&lt;TD&gt;Post&lt;/TD&gt;
&lt;/TR&gt;
&lt;/TBODY&gt;
&lt;/TABLE&gt;
&lt;HR /&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;Please double check your "want". It looks exactly like Have to me.&lt;/P&gt;
&lt;P&gt;Provide your data as data step code pasted into a text box using the &amp;lt;/&amp;gt; icon on the forum such as&lt;/P&gt;
&lt;PRE&gt;data have;
   infile datalines dlm=',';
   input ID $ DateX :mmddyy10. Conditions :$25. Type :$4.;
   format datex mmddyy10.;
datalines;
1,12/25/2019,Anemia,Post
1,11/5/2018,Colitis,Post
1,11/5/2018,Diarrhea,Post
1,11/24/2019,Kidney failure/disease,Post
1,12/12/2018,Neuro,Post
1,5/20/2017,Anemia,Pre
1,5/20/2017,Diarrhea,Pre
1,9/14/2017,Myositis,Pre
1,4/24/2017,Polyneuropathy,Pre
2,8/19/2020,Adrenal/Adrenocortical,Post
2,3/23/2020,Colitis,Post
2,10/7/2019,Neutropenia,Post
3,7/9/2017,Dermatitis/Rash,Post
3,4/22/2018,Liver failure/disease,Post
3,4/5/2015,Myositis,Post
3,6/8/2015,Neuro,Post
;
&lt;/PRE&gt;
&lt;P&gt;I can't tell if you want just the "pre" , just the "post" or both removed.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;The following code removes both.&lt;/P&gt;
&lt;PRE&gt;proc sort data=have;
   by id conditions datex;
run;

data want;
   set have;
   by id conditions;
   if type='Pre' and first.conditions and not (last.conditions) then delete;
   if type='Post' and not(first.conditions) and last.conditions then delete;
run;&lt;/PRE&gt;
&lt;P&gt;You can remove one of the "if" that you don't need.&lt;/P&gt;
&lt;P&gt;This works by getting like values of Conditions in chronological order for each ID. If your Datex is not a numeric date value then you need to make a date value, preferably with an appropriate format for legibility.&lt;/P&gt;
&lt;P&gt;The BY statement in the Want data step code creates automatic true/false variables for each of the variables on the By statement. So each record can tell whether the Condition is the first time that appears for each id. If a value is the only one then both First and Last are true.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Warning: If you have 3 values of the same condition for an ID this is likely to not do what you want.&lt;/P&gt;
&lt;P&gt;Also if the "Pre" and "Post" are incorrect for chronological order then this will fail.&lt;/P&gt;
&lt;P&gt;Both of the above would require a more complete example data, example results and likely additional actual description of rules involved.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
    <pubDate>Wed, 17 Mar 2021 23:33:52 GMT</pubDate>
    <dc:creator>ballardw</dc:creator>
    <dc:date>2021-03-17T23:33:52Z</dc:date>
    <item>
      <title>Data Manipulation</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Data-Manipulation/m-p/727266#M226158</link>
      <description>&lt;P&gt;Hi there,&lt;/P&gt;
&lt;P&gt;I have data that has pre and post indo. I need a new data that should not include conditions that occurred in pre. For example, ID#1 has Anemia and Diarrhea in pre and post both. The new data needs to delete these observations.&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Data have:&lt;/P&gt;
&lt;TABLE width="359"&gt;
&lt;TBODY&gt;
&lt;TR&gt;
&lt;TD width="64"&gt;ID&lt;/TD&gt;
&lt;TD width="75"&gt;DateX&lt;/TD&gt;
&lt;TD width="156"&gt;Conditions&lt;/TD&gt;
&lt;TD width="64"&gt;Type&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;1&lt;/TD&gt;
&lt;TD&gt;12/25/2019&lt;/TD&gt;
&lt;TD&gt;Anemia&lt;/TD&gt;
&lt;TD&gt;Post&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;1&lt;/TD&gt;
&lt;TD&gt;11/5/2018&lt;/TD&gt;
&lt;TD&gt;Colitis&lt;/TD&gt;
&lt;TD&gt;Post&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;1&lt;/TD&gt;
&lt;TD&gt;11/5/2018&lt;/TD&gt;
&lt;TD&gt;Diarrhea&lt;/TD&gt;
&lt;TD&gt;Post&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;1&lt;/TD&gt;
&lt;TD&gt;11/24/2019&lt;/TD&gt;
&lt;TD&gt;Kidney failure/disease&lt;/TD&gt;
&lt;TD&gt;Post&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;1&lt;/TD&gt;
&lt;TD&gt;12/12/2018&lt;/TD&gt;
&lt;TD&gt;Neuro&lt;/TD&gt;
&lt;TD&gt;Post&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;1&lt;/TD&gt;
&lt;TD&gt;5/20/2017&lt;/TD&gt;
&lt;TD&gt;Anemia&lt;/TD&gt;
&lt;TD&gt;Pre&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;1&lt;/TD&gt;
&lt;TD&gt;5/20/2017&lt;/TD&gt;
&lt;TD&gt;Diarrhea&lt;/TD&gt;
&lt;TD&gt;Pre&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;1&lt;/TD&gt;
&lt;TD&gt;9/14/2017&lt;/TD&gt;
&lt;TD&gt;Myositis&lt;/TD&gt;
&lt;TD&gt;Pre&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;1&lt;/TD&gt;
&lt;TD&gt;4/24/2017&lt;/TD&gt;
&lt;TD&gt;Polyneuropathy&lt;/TD&gt;
&lt;TD&gt;Pre&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;2&lt;/TD&gt;
&lt;TD&gt;8/19/2020&lt;/TD&gt;
&lt;TD&gt;Adrenal/Adrenocortical&lt;/TD&gt;
&lt;TD&gt;Post&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;2&lt;/TD&gt;
&lt;TD&gt;3/23/2020&lt;/TD&gt;
&lt;TD&gt;Colitis&lt;/TD&gt;
&lt;TD&gt;Post&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;2&lt;/TD&gt;
&lt;TD&gt;10/7/2019&lt;/TD&gt;
&lt;TD&gt;Neutropenia&lt;/TD&gt;
&lt;TD&gt;Post&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;3&lt;/TD&gt;
&lt;TD&gt;7/9/2017&lt;/TD&gt;
&lt;TD&gt;Dermatitis/Rash&lt;/TD&gt;
&lt;TD&gt;Post&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;3&lt;/TD&gt;
&lt;TD&gt;4/22/2018&lt;/TD&gt;
&lt;TD&gt;Liver failure/disease&lt;/TD&gt;
&lt;TD&gt;Post&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;3&lt;/TD&gt;
&lt;TD&gt;4/5/2015&lt;/TD&gt;
&lt;TD&gt;Myositis&lt;/TD&gt;
&lt;TD&gt;Post&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;3&lt;/TD&gt;
&lt;TD&gt;6/8/2015&lt;/TD&gt;
&lt;TD&gt;Neuro&lt;/TD&gt;
&lt;TD&gt;Post&lt;/TD&gt;
&lt;/TR&gt;
&lt;/TBODY&gt;
&lt;/TABLE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Data Want:&lt;/P&gt;
&lt;TABLE width="359"&gt;
&lt;TBODY&gt;
&lt;TR&gt;
&lt;TD width="64"&gt;ID&lt;/TD&gt;
&lt;TD width="75"&gt;DateX&lt;/TD&gt;
&lt;TD width="156"&gt;Conditions&lt;/TD&gt;
&lt;TD width="64"&gt;Type&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;1&lt;/TD&gt;
&lt;TD&gt;11/5/2018&lt;/TD&gt;
&lt;TD&gt;Colitis&lt;/TD&gt;
&lt;TD&gt;Post&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;1&lt;/TD&gt;
&lt;TD&gt;11/24/2019&lt;/TD&gt;
&lt;TD&gt;Kidney failure&lt;/TD&gt;
&lt;TD&gt;Post&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;1&lt;/TD&gt;
&lt;TD&gt;12/12/2018&lt;/TD&gt;
&lt;TD&gt;Neuro&lt;/TD&gt;
&lt;TD&gt;Post&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;1&lt;/TD&gt;
&lt;TD&gt;9/14/2017&lt;/TD&gt;
&lt;TD&gt;Myositis&lt;/TD&gt;
&lt;TD&gt;Pre&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;1&lt;/TD&gt;
&lt;TD&gt;4/24/2017&lt;/TD&gt;
&lt;TD&gt;Polyneuropathy&lt;/TD&gt;
&lt;TD&gt;Pre&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;2&lt;/TD&gt;
&lt;TD&gt;8/19/2020&lt;/TD&gt;
&lt;TD&gt;Adrenal&lt;/TD&gt;
&lt;TD&gt;Post&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;2&lt;/TD&gt;
&lt;TD&gt;3/23/2020&lt;/TD&gt;
&lt;TD&gt;Colitis&lt;/TD&gt;
&lt;TD&gt;Post&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;2&lt;/TD&gt;
&lt;TD&gt;10/7/2019&lt;/TD&gt;
&lt;TD&gt;Neutropenia&lt;/TD&gt;
&lt;TD&gt;Post&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;3&lt;/TD&gt;
&lt;TD&gt;7/9/2017&lt;/TD&gt;
&lt;TD&gt;Dermatitis/Rash&lt;/TD&gt;
&lt;TD&gt;Post&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;3&lt;/TD&gt;
&lt;TD&gt;4/22/2018&lt;/TD&gt;
&lt;TD&gt;Liver failure/disease&lt;/TD&gt;
&lt;TD&gt;Post&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;3&lt;/TD&gt;
&lt;TD&gt;4/5/2015&lt;/TD&gt;
&lt;TD&gt;Myositis&lt;/TD&gt;
&lt;TD&gt;Post&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;3&lt;/TD&gt;
&lt;TD&gt;6/8/2015&lt;/TD&gt;
&lt;TD&gt;Neuro&lt;/TD&gt;
&lt;TD&gt;Post&lt;/TD&gt;
&lt;/TR&gt;
&lt;/TBODY&gt;
&lt;/TABLE&gt;</description>
      <pubDate>Thu, 18 Mar 2021 01:18:15 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Data-Manipulation/m-p/727266#M226158</guid>
      <dc:creator>newsas007</dc:creator>
      <dc:date>2021-03-18T01:18:15Z</dc:date>
    </item>
    <item>
      <title>Re: Data Manipulation</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Data-Manipulation/m-p/727274#M226164</link>
      <description>&lt;P&gt;It seems to me that you did not delete the required observations from WANT.&lt;/P&gt;
&lt;P&gt;Check next code and adapt to the right requirements:&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data have;
  infile cards dlm='09'x truncover;
  input ID DateX :mmddyy10. Conditions $ Type $;
  format datex date9.;
cards;
1	12/25/2019	Anemia	Post
1	11/5/2018	Colitis	Post
1	11/5/2018	Diarrhea	Post
1	11/24/2019	Kidney failure/disease	Post
1	12/12/2018	Neuro	Post
1	5/20/2017	Anemia	Pre
1	5/20/2017	Diarrhea	Pre
1	9/14/2017	Myositis	Pre
1	4/24/2017	Polyneuropathy	Pre
2	8/19/2020	Adrenal/Adrenocortical	Post
2	3/23/2020	Colitis	Post
2	10/7/2019	Neutropenia	Post
3	7/9/2017	Dermatitis/Rash	Post
3	4/22/2018	Liver failure/disease	Post
3	4/5/2015	Myositis	Post
3	6/8/2015	Neuro	Post
; run;

proc sort data=have;
  by ID conditions type;
run;
data want;
 merge have(where=(type='Pre') in=in1)
       have(where=(type='Post') in=in2);
  by ID conditions type;
     if not (in1 and in2);  
run;
       
&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 17 Mar 2021 23:16:44 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Data-Manipulation/m-p/727274#M226164</guid>
      <dc:creator>Shmuel</dc:creator>
      <dc:date>2021-03-17T23:16:44Z</dc:date>
    </item>
    <item>
      <title>Re: Data Manipulation</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Data-Manipulation/m-p/727277#M226166</link>
      <description>&lt;BLOCKQUOTE&gt;&lt;HR /&gt;&lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/336862"&gt;@newsas007&lt;/a&gt;&amp;nbsp;wrote:&lt;BR /&gt;
&lt;P&gt;Hi there,&lt;/P&gt;
&lt;P&gt;I have data that has pre and post indo. I need a new data that should not include conditions that occurred in pre. For example, ID#1 has Anemia and Diarrhea in pre and post both. The new data needs to delete these observations.&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Data have:&lt;/P&gt;
&lt;TABLE width="359"&gt;
&lt;TBODY&gt;
&lt;TR&gt;
&lt;TD width="64"&gt;ID&lt;/TD&gt;
&lt;TD width="75"&gt;DateX&lt;/TD&gt;
&lt;TD width="156"&gt;Conditions&lt;/TD&gt;
&lt;TD width="64"&gt;Type&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;1&lt;/TD&gt;
&lt;TD&gt;12/25/2019&lt;/TD&gt;
&lt;TD&gt;Anemia&lt;/TD&gt;
&lt;TD&gt;Post&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;1&lt;/TD&gt;
&lt;TD&gt;11/5/2018&lt;/TD&gt;
&lt;TD&gt;Colitis&lt;/TD&gt;
&lt;TD&gt;Post&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;1&lt;/TD&gt;
&lt;TD&gt;11/5/2018&lt;/TD&gt;
&lt;TD&gt;Diarrhea&lt;/TD&gt;
&lt;TD&gt;Post&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;1&lt;/TD&gt;
&lt;TD&gt;11/24/2019&lt;/TD&gt;
&lt;TD&gt;Kidney failure/disease&lt;/TD&gt;
&lt;TD&gt;Post&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;1&lt;/TD&gt;
&lt;TD&gt;12/12/2018&lt;/TD&gt;
&lt;TD&gt;Neuro&lt;/TD&gt;
&lt;TD&gt;Post&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;1&lt;/TD&gt;
&lt;TD&gt;5/20/2017&lt;/TD&gt;
&lt;TD&gt;Anemia&lt;/TD&gt;
&lt;TD&gt;Pre&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;1&lt;/TD&gt;
&lt;TD&gt;5/20/2017&lt;/TD&gt;
&lt;TD&gt;Diarrhea&lt;/TD&gt;
&lt;TD&gt;Pre&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;1&lt;/TD&gt;
&lt;TD&gt;9/14/2017&lt;/TD&gt;
&lt;TD&gt;Myositis&lt;/TD&gt;
&lt;TD&gt;Pre&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;1&lt;/TD&gt;
&lt;TD&gt;4/24/2017&lt;/TD&gt;
&lt;TD&gt;Polyneuropathy&lt;/TD&gt;
&lt;TD&gt;Pre&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;2&lt;/TD&gt;
&lt;TD&gt;8/19/2020&lt;/TD&gt;
&lt;TD&gt;Adrenal/Adrenocortical&lt;/TD&gt;
&lt;TD&gt;Post&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;2&lt;/TD&gt;
&lt;TD&gt;3/23/2020&lt;/TD&gt;
&lt;TD&gt;Colitis&lt;/TD&gt;
&lt;TD&gt;Post&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;2&lt;/TD&gt;
&lt;TD&gt;10/7/2019&lt;/TD&gt;
&lt;TD&gt;Neutropenia&lt;/TD&gt;
&lt;TD&gt;Post&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;3&lt;/TD&gt;
&lt;TD&gt;7/9/2017&lt;/TD&gt;
&lt;TD&gt;Dermatitis/Rash&lt;/TD&gt;
&lt;TD&gt;Post&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;3&lt;/TD&gt;
&lt;TD&gt;4/22/2018&lt;/TD&gt;
&lt;TD&gt;Liver failure/disease&lt;/TD&gt;
&lt;TD&gt;Post&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;3&lt;/TD&gt;
&lt;TD&gt;4/5/2015&lt;/TD&gt;
&lt;TD&gt;Myositis&lt;/TD&gt;
&lt;TD&gt;Post&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;3&lt;/TD&gt;
&lt;TD&gt;6/8/2015&lt;/TD&gt;
&lt;TD&gt;Neuro&lt;/TD&gt;
&lt;TD&gt;Post&lt;/TD&gt;
&lt;/TR&gt;
&lt;/TBODY&gt;
&lt;/TABLE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Data Want:&lt;/P&gt;
&lt;TABLE width="359"&gt;
&lt;TBODY&gt;
&lt;TR&gt;
&lt;TD width="64"&gt;ID&lt;/TD&gt;
&lt;TD width="75"&gt;DateX&lt;/TD&gt;
&lt;TD width="156"&gt;Conditions&lt;/TD&gt;
&lt;TD width="64"&gt;Type&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;1&lt;/TD&gt;
&lt;TD&gt;12/25/2019&lt;/TD&gt;
&lt;TD&gt;Anemia&lt;/TD&gt;
&lt;TD&gt;Post&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;1&lt;/TD&gt;
&lt;TD&gt;11/5/2018&lt;/TD&gt;
&lt;TD&gt;Colitis&lt;/TD&gt;
&lt;TD&gt;Post&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;1&lt;/TD&gt;
&lt;TD&gt;11/5/2018&lt;/TD&gt;
&lt;TD&gt;Diarrhea&lt;/TD&gt;
&lt;TD&gt;Post&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;1&lt;/TD&gt;
&lt;TD&gt;11/24/2019&lt;/TD&gt;
&lt;TD&gt;Kidney failure/disease&lt;/TD&gt;
&lt;TD&gt;Post&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;1&lt;/TD&gt;
&lt;TD&gt;12/12/2018&lt;/TD&gt;
&lt;TD&gt;Neuro&lt;/TD&gt;
&lt;TD&gt;Post&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;1&lt;/TD&gt;
&lt;TD&gt;5/20/2017&lt;/TD&gt;
&lt;TD&gt;Anemia&lt;/TD&gt;
&lt;TD&gt;Pre&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;1&lt;/TD&gt;
&lt;TD&gt;5/20/2017&lt;/TD&gt;
&lt;TD&gt;Diarrhea&lt;/TD&gt;
&lt;TD&gt;Pre&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;1&lt;/TD&gt;
&lt;TD&gt;9/14/2017&lt;/TD&gt;
&lt;TD&gt;Myositis&lt;/TD&gt;
&lt;TD&gt;Pre&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;1&lt;/TD&gt;
&lt;TD&gt;4/24/2017&lt;/TD&gt;
&lt;TD&gt;Polyneuropathy&lt;/TD&gt;
&lt;TD&gt;Pre&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;2&lt;/TD&gt;
&lt;TD&gt;8/19/2020&lt;/TD&gt;
&lt;TD&gt;Adrenal/Adrenocortical&lt;/TD&gt;
&lt;TD&gt;Post&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;2&lt;/TD&gt;
&lt;TD&gt;3/23/2020&lt;/TD&gt;
&lt;TD&gt;Colitis&lt;/TD&gt;
&lt;TD&gt;Post&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;2&lt;/TD&gt;
&lt;TD&gt;10/7/2019&lt;/TD&gt;
&lt;TD&gt;Neutropenia&lt;/TD&gt;
&lt;TD&gt;Post&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;3&lt;/TD&gt;
&lt;TD&gt;7/9/2017&lt;/TD&gt;
&lt;TD&gt;Dermatitis/Rash&lt;/TD&gt;
&lt;TD&gt;Post&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;3&lt;/TD&gt;
&lt;TD&gt;4/22/2018&lt;/TD&gt;
&lt;TD&gt;Liver failure/disease&lt;/TD&gt;
&lt;TD&gt;Post&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;3&lt;/TD&gt;
&lt;TD&gt;4/5/2015&lt;/TD&gt;
&lt;TD&gt;Myositis&lt;/TD&gt;
&lt;TD&gt;Post&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD&gt;3&lt;/TD&gt;
&lt;TD&gt;6/8/2015&lt;/TD&gt;
&lt;TD&gt;Neuro&lt;/TD&gt;
&lt;TD&gt;Post&lt;/TD&gt;
&lt;/TR&gt;
&lt;/TBODY&gt;
&lt;/TABLE&gt;
&lt;HR /&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;Please double check your "want". It looks exactly like Have to me.&lt;/P&gt;
&lt;P&gt;Provide your data as data step code pasted into a text box using the &amp;lt;/&amp;gt; icon on the forum such as&lt;/P&gt;
&lt;PRE&gt;data have;
   infile datalines dlm=',';
   input ID $ DateX :mmddyy10. Conditions :$25. Type :$4.;
   format datex mmddyy10.;
datalines;
1,12/25/2019,Anemia,Post
1,11/5/2018,Colitis,Post
1,11/5/2018,Diarrhea,Post
1,11/24/2019,Kidney failure/disease,Post
1,12/12/2018,Neuro,Post
1,5/20/2017,Anemia,Pre
1,5/20/2017,Diarrhea,Pre
1,9/14/2017,Myositis,Pre
1,4/24/2017,Polyneuropathy,Pre
2,8/19/2020,Adrenal/Adrenocortical,Post
2,3/23/2020,Colitis,Post
2,10/7/2019,Neutropenia,Post
3,7/9/2017,Dermatitis/Rash,Post
3,4/22/2018,Liver failure/disease,Post
3,4/5/2015,Myositis,Post
3,6/8/2015,Neuro,Post
;
&lt;/PRE&gt;
&lt;P&gt;I can't tell if you want just the "pre" , just the "post" or both removed.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;The following code removes both.&lt;/P&gt;
&lt;PRE&gt;proc sort data=have;
   by id conditions datex;
run;

data want;
   set have;
   by id conditions;
   if type='Pre' and first.conditions and not (last.conditions) then delete;
   if type='Post' and not(first.conditions) and last.conditions then delete;
run;&lt;/PRE&gt;
&lt;P&gt;You can remove one of the "if" that you don't need.&lt;/P&gt;
&lt;P&gt;This works by getting like values of Conditions in chronological order for each ID. If your Datex is not a numeric date value then you need to make a date value, preferably with an appropriate format for legibility.&lt;/P&gt;
&lt;P&gt;The BY statement in the Want data step code creates automatic true/false variables for each of the variables on the By statement. So each record can tell whether the Condition is the first time that appears for each id. If a value is the only one then both First and Last are true.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Warning: If you have 3 values of the same condition for an ID this is likely to not do what you want.&lt;/P&gt;
&lt;P&gt;Also if the "Pre" and "Post" are incorrect for chronological order then this will fail.&lt;/P&gt;
&lt;P&gt;Both of the above would require a more complete example data, example results and likely additional actual description of rules involved.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 17 Mar 2021 23:33:52 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Data-Manipulation/m-p/727277#M226166</guid>
      <dc:creator>ballardw</dc:creator>
      <dc:date>2021-03-17T23:33:52Z</dc:date>
    </item>
    <item>
      <title>Re: Data Manipulation</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Data-Manipulation/m-p/727307#M226185</link>
      <description>&lt;P&gt;You apparently want conditions that appear exclusively in pre, or exclusively in post:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data have;
   infile datalines dlm=',';
   input ID $ DateX :mmddyy10. Conditions :$25. Type :$4.;
   format datex mmddyy10.;
datalines;
1,12/25/2019,Anemia,Post
1,11/5/2018,Colitis,Post
1,11/5/2018,Diarrhea,Post
1,11/24/2019,Kidney failure/disease,Post
1,12/12/2018,Neuro,Post
1,5/20/2017,Anemia,Pre
1,5/20/2017,Diarrhea,Pre
1,9/14/2017,Myositis,Pre
1,4/24/2017,Polyneuropathy,Pre
2,8/19/2020,Adrenal/Adrenocortical,Post
2,3/23/2020,Colitis,Post
2,10/7/2019,Neutropenia,Post
3,7/9/2017,Dermatitis/Rash,Post
3,4/22/2018,Liver failure/disease,Post
3,4/5/2015,Myositis,Post
3,6/8/2015,Neuro,Post
run;

data want;
  set have;
  if _n_=1 then do;
    declare hash pre_conditions (dataset:'have (where=(type="Pre")');
      pre_conditions.definekey('id','conditions');
      pre_conditions.definedone();
    declare hash post_conditions (dataset:'have (where=(type="Post")');
      post_conditions.definekey('id','conditions');
      post_conditions.definedone();
  end;
  if (type='Pre' and post_conditions.check()^=0)  or
     (type='Post' and pre_conditions.check()^=0);
run;
&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;This creates a hash object (think lookup table) for all the &lt;EM&gt;&lt;STRONG&gt;pre's&lt;/STRONG&gt;&lt;/EM&gt;, and a separate hash object for all the &lt;EM&gt;&lt;STRONG&gt;post's&lt;/STRONG&gt;&lt;/EM&gt;.&amp;nbsp; Then for each incoming pre record, keep it only if that id/condition doesn't appear in the post hash.&amp;nbsp; And vice versa.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;or, slightly more efficient, because it constructs one large hash object instead of two smaller ones:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data want;
  set have;
  if _n_=1 then do;
    declare hash all_conditions (dataset:'have');
      all_conditions.definekey('id','conditions','type');
      all_conditions.definedone();
  end;
  if (type='Pre' and all_conditions.check(key:id,key:conditions,key:'Post')^=0) or
     (type='Post' and all_conditions.check(key:id,key:conditions,key:'Pre')^=0) ;
run;
&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 18 Mar 2021 06:10:12 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Data-Manipulation/m-p/727307#M226185</guid>
      <dc:creator>mkeintz</dc:creator>
      <dc:date>2021-03-18T06:10:12Z</dc:date>
    </item>
  </channel>
</rss>

