<?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: selecting unique cases in SAS Procedures</title>
    <link>https://communities.sas.com/t5/SAS-Procedures/selecting-unique-cases/m-p/343910#M63456</link>
    <description>&lt;P&gt;my datetime variables are not getting labeled as date_x and date_y, it is just showing as date_of_procedure.&lt;/P&gt;</description>
    <pubDate>Thu, 23 Mar 2017 22:59:06 GMT</pubDate>
    <dc:creator>smunigala</dc:creator>
    <dc:date>2017-03-23T22:59:06Z</dc:date>
    <item>
      <title>selecting unique cases</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/selecting-unique-cases/m-p/343871#M63448</link>
      <description>&lt;P&gt;Hi all,&lt;/P&gt;
&lt;P&gt;I have a data set with the following variables:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;ID&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Procedure&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Date_of_Procedure&lt;/P&gt;
&lt;P&gt;1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; X &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 10Mar2016&lt;/P&gt;
&lt;P&gt;1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; X &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 10Apr2016&lt;/P&gt;
&lt;P&gt;2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; X&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 12Jan2016&lt;/P&gt;
&lt;P&gt;2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; X&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 13Jan2016&lt;/P&gt;
&lt;P&gt;2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; X&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 24Feb2016&lt;/P&gt;
&lt;P&gt;&lt;FONT color="#FF0000"&gt;2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; X &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 10Mar2016&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT color="#FF0000"&gt;2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Y &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 10Mar2016&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;3&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Y &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; 11Dec2016&lt;/P&gt;
&lt;P&gt;3&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Y &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 12Dec2016&lt;/P&gt;
&lt;P&gt;&lt;FONT color="#FF0000"&gt;4&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; X&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 24Jul2016&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT color="#FF0000"&gt;4&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Y&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 25Jul2016&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;My goal is to identify only those IDs who have both procedures and then to find out the difference in days between the two procedures. I want to select only those patients (IDs) with both procedures within 2days only (highlighted in RED), which is my subset of interest.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Each ID can have only one procedure (either X or Y) or have multiple same procedures (an ID can have multiple X or multiple Y or a combination of multiple X with one Y or one X with multiple Ys). I am interested in only those patients (IDs) who have both procedures. If an ID has a series of X and just one Y then, I am interested in the closest X to the Y for that ID (eg. ID 2, selected in RED).&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Any help with the SAS code would be greatly appreciated!&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Thanks!&lt;/P&gt;
&lt;P&gt;Sat&lt;/P&gt;</description>
      <pubDate>Thu, 23 Mar 2017 20:48:10 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/selecting-unique-cases/m-p/343871#M63448</guid>
      <dc:creator>smunigala</dc:creator>
      <dc:date>2017-03-23T20:48:10Z</dc:date>
    </item>
    <item>
      <title>Re: selecting unique cases</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/selecting-unique-cases/m-p/343877#M63449</link>
      <description>&lt;BLOCKQUOTE&gt;&lt;HR /&gt;&lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/55310"&gt;@smunigala&lt;/a&gt; wrote:&lt;BR /&gt;
&lt;P&gt;Hi all,&lt;/P&gt;
&lt;P&gt;I have a data set with the following variables:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;ID&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Procedure&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Date_of_Procedure&lt;/P&gt;
&lt;P&gt;1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; X &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 10Mar2016&lt;/P&gt;
&lt;P&gt;1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; X &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 10Apr2016&lt;/P&gt;
&lt;P&gt;2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; X&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 12Jan2016&lt;/P&gt;
&lt;P&gt;2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; X&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 13Jan2016&lt;/P&gt;
&lt;P&gt;2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; X&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 24Feb2016&lt;/P&gt;
&lt;P&gt;&lt;FONT color="#FF0000"&gt;2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; X &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 10Mar2016&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT color="#FF0000"&gt;2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Y &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 10Mar2016&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;3&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Y &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; 11Dec2016&lt;/P&gt;
&lt;P&gt;3&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Y &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 12Dec2016&lt;/P&gt;
&lt;P&gt;&lt;FONT color="#FF0000"&gt;4&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; X&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 24Jul2016&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT color="#FF0000"&gt;4&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Y&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 25Jul2016&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;My goal is to identify only those IDs who have both procedures and then to find out the difference in days between the two procedures. I want to select only those patients (IDs) with both procedures within 2days only (highlighted in RED), which is my subset of interest.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Each ID can have only one procedure (either X or Y) or have multiple same procedures (an ID can have multiple X or multiple Y or a combination of multiple X with one Y or one X with multiple Ys). I am interested in only those patients (IDs) who have both procedures. If an ID has a series of X and just one Y then, I am interested in the closest X to the Y for that ID (eg. ID 2, selected in RED).&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Any help with the SAS code would be greatly appreciated!&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Thanks!&lt;/P&gt;
&lt;P&gt;Sat&lt;/P&gt;
&lt;HR /&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Here's one way...there are probably several others. In the future please post your data as a data step - like the first step in my program to create the HAVE data set.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;	data have;
	informat id $1. procedure $1. date_of_procedure date9.;
	format id $1. procedure $1. date_of_procedure date9.;
	
	input ID   $         Procedure  $    Date_of_Procedure ;
	cards;
	1                X                   10Mar2016
	1                X                   10Apr2016
	2                X                   12Jan2016
	2                X                   13Jan2016
	2                X                    24Feb2016
	2                X                   10Mar2016
	2                Y                   10Mar2016
	3                Y                   11Dec2016
	3                Y                   12Dec2016
	4                X                    24Jul2016
	4                Y                    25Jul2016
	;
	run;
	
	proc sql;
	create table both_procedures as
	select *
	from have
	group by id
	having count(distinct procedure)&amp;gt;1;
	quit;
	
	proc sql;
	create table both_procs_2day as
	select h1.id, h1.date_of_procedure as date_x,
	h2.id as record_id, h2.date_of_procedure as date_y
	from (select * from both_procedures where procedure='X') as h1 full join
	(select * from both_procedures where procedure='Y') as h2
	on h1.id=h2.id 
	where abs(date_x - date_y) &amp;lt;= 2;
	quit;
&lt;/CODE&gt;&lt;/PRE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 23 Mar 2017 21:07:54 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/selecting-unique-cases/m-p/343877#M63449</guid>
      <dc:creator>Reeza</dc:creator>
      <dc:date>2017-03-23T21:07:54Z</dc:date>
    </item>
    <item>
      <title>Re: selecting unique cases</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/selecting-unique-cases/m-p/343883#M63450</link>
      <description>&lt;P&gt;Hi Reeza,&lt;/P&gt;
&lt;P&gt;Thanks for the quick reply! Can I identify/ select cases which are close to each other (before I do the 2 day cutoff)? If an ID has a series of X and just one Y then, I am interested in the closest X to the Y for that ID (eg. ID 2, selected in RED).&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Sat&lt;/P&gt;</description>
      <pubDate>Thu, 23 Mar 2017 21:27:51 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/selecting-unique-cases/m-p/343883#M63450</guid>
      <dc:creator>smunigala</dc:creator>
      <dc:date>2017-03-23T21:27:51Z</dc:date>
    </item>
    <item>
      <title>Re: selecting unique cases</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/selecting-unique-cases/m-p/343885#M63451</link>
      <description>&lt;BLOCKQUOTE&gt;&lt;HR /&gt;&lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/55310"&gt;@smunigala&lt;/a&gt; wrote:&lt;BR /&gt;
&lt;P&gt;Hi Reeza,&lt;/P&gt;
&lt;P&gt;Thanks for the quick reply! Can I identify/ select cases which are close to each other (before I do the 2 day cutoff)? If an ID has a series of X and just one Y then, I am interested in the closest X to the Y for that ID (eg. ID 2, selected in RED).&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Sat&lt;/P&gt;
&lt;HR /&gt;&lt;/BLOCKQUOTE&gt;
&lt;P&gt;I don't understand what you mean.&lt;/P&gt;
&lt;P&gt;You can remove the filter then you'll have all the differences and you can compare them.&amp;nbsp;&lt;/P&gt;
&lt;P&gt;If there are more than 2 records that match, I think both would be selected right now.&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 23 Mar 2017 21:31:43 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/selecting-unique-cases/m-p/343885#M63451</guid>
      <dc:creator>Reeza</dc:creator>
      <dc:date>2017-03-23T21:31:43Z</dc:date>
    </item>
    <item>
      <title>Re: selecting unique cases</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/selecting-unique-cases/m-p/343903#M63452</link>
      <description>&lt;P&gt;Hi Reeza,&lt;/P&gt;
&lt;P&gt;Sorry, I got the code, but can you help me with the datetime variable rather than date variable? I am looking at 2 hours difference. can&lt;/P&gt;
&lt;P&gt;where abs(date_x- date_y) work if my date variables are datetime variables and I need two hours difference rather than two days? I tried but I am not getting the date_of_procedure as date_x and date_y.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Thanks!&lt;/P&gt;</description>
      <pubDate>Thu, 23 Mar 2017 22:27:04 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/selecting-unique-cases/m-p/343903#M63452</guid>
      <dc:creator>smunigala</dc:creator>
      <dc:date>2017-03-23T22:27:04Z</dc:date>
    </item>
    <item>
      <title>Re: selecting unique cases</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/selecting-unique-cases/m-p/343906#M63454</link>
      <description>&lt;P&gt;My datevariable is DATETIME20.&lt;/P&gt;</description>
      <pubDate>Thu, 23 Mar 2017 22:34:57 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/selecting-unique-cases/m-p/343906#M63454</guid>
      <dc:creator>smunigala</dc:creator>
      <dc:date>2017-03-23T22:34:57Z</dc:date>
    </item>
    <item>
      <title>Re: selecting unique cases</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/selecting-unique-cases/m-p/343909#M63455</link>
      <description>&lt;P&gt;DATEPART will convert to date.&lt;/P&gt;
&lt;P&gt;Datetimes are number of seconds from Jan 1, 1960.&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;If you need to account for time then change '2' days to represent the equivalent number of seconds.&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 23 Mar 2017 22:54:59 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/selecting-unique-cases/m-p/343909#M63455</guid>
      <dc:creator>Reeza</dc:creator>
      <dc:date>2017-03-23T22:54:59Z</dc:date>
    </item>
    <item>
      <title>Re: selecting unique cases</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/selecting-unique-cases/m-p/343910#M63456</link>
      <description>&lt;P&gt;my datetime variables are not getting labeled as date_x and date_y, it is just showing as date_of_procedure.&lt;/P&gt;</description>
      <pubDate>Thu, 23 Mar 2017 22:59:06 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/selecting-unique-cases/m-p/343910#M63456</guid>
      <dc:creator>smunigala</dc:creator>
      <dc:date>2017-03-23T22:59:06Z</dc:date>
    </item>
    <item>
      <title>Re: selecting unique cases</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/selecting-unique-cases/m-p/343917#M63458</link>
      <description>&lt;P&gt;I'm assuming you've made changes to the code?&lt;/P&gt;
&lt;P&gt;Post the code please.&lt;/P&gt;</description>
      <pubDate>Fri, 24 Mar 2017 00:26:11 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/selecting-unique-cases/m-p/343917#M63458</guid>
      <dc:creator>Reeza</dc:creator>
      <dc:date>2017-03-24T00:26:11Z</dc:date>
    </item>
    <item>
      <title>Re: selecting unique cases</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/selecting-unique-cases/m-p/343928#M63461</link>
      <description>&lt;P&gt;I find the explanations a bit unclear, but maybe this does the job in&amp;nbsp;a simple manner.&lt;/P&gt;
&lt;P&gt;Uncomment&amp;nbsp;the 2-day filter if needed.&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data HAVE;
  informat ID $1. PROCEDURE $1. DATE date9.;
  format   ID $1. PROCEDURE $1. DATE date9.;
  input ID $ PROCEDURE  $  DATE ;
cards;
1 X 10Mar2016
1 X 10Apr2016
2 X 12Jan2016
2 X 13Jan2016
2 X 24Feb2016
2 X 10Mar2016
2 Y 10Mar2016
3 Y 11Dec2016
3 Y 12Dec2016
4 X 24Jul2016
4 Y 25Jul2016
4 Y 28Jul2016
run;

proc sql;
  select unique a.ID
  , a.DATE as DATE1
  , b.DATE as DATE2
  , b.DATE - a.DATE as DIF
  from HAVE a
     , HAVE b
  where A.ID        eq b.ID
    and a.PROCEDURE ne b.PROCEDURE
    and a.DATE      le b.DATE 
  /*  and calculated DIF le 2*/
  group by a.ID
  having DIF=min(DIF);
quit;
&lt;/CODE&gt;&lt;/PRE&gt;
&lt;DIV class="branch"&gt;
&lt;DIV&gt;
&lt;DIV align="center"&gt;
&lt;TABLE class="table" rules="all" frame="box" cellspacing="0" cellpadding="5" summary="Procedure SQL: Query Results"&gt;&lt;COLGROUP&gt; &lt;COL /&gt; &lt;COL /&gt; &lt;COL /&gt; &lt;COL /&gt;&lt;/COLGROUP&gt;
&lt;THEAD&gt;
&lt;TR&gt;
&lt;TH class="l b header" scope="col"&gt;ID&lt;/TH&gt;
&lt;TH class="r b header" scope="col"&gt;DATE1&lt;/TH&gt;
&lt;TH class="r b header" scope="col"&gt;DATE2&lt;/TH&gt;
&lt;TH class="r b header" scope="col"&gt;DIF&lt;/TH&gt;
&lt;/TR&gt;
&lt;/THEAD&gt;
&lt;TBODY&gt;
&lt;TR&gt;
&lt;TD class="l data"&gt;2&lt;/TD&gt;
&lt;TD class="r data"&gt;10MAR2016&lt;/TD&gt;
&lt;TD class="r data"&gt;10MAR2016&lt;/TD&gt;
&lt;TD class="r data"&gt;0&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class="l data"&gt;4&lt;/TD&gt;
&lt;TD class="r data"&gt;24JUL2016&lt;/TD&gt;
&lt;TD class="r data"&gt;25JUL2016&lt;/TD&gt;
&lt;TD class="r data"&gt;1&lt;/TD&gt;
&lt;/TR&gt;
&lt;/TBODY&gt;
&lt;/TABLE&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;/DIV&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Fri, 24 Mar 2017 02:12:20 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/selecting-unique-cases/m-p/343928#M63461</guid>
      <dc:creator>ChrisNZ</dc:creator>
      <dc:date>2017-03-24T02:12:20Z</dc:date>
    </item>
    <item>
      <title>Re: selecting unique cases</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/selecting-unique-cases/m-p/343932#M63464</link>
      <description>&lt;P&gt;If you want step by step control, this should help:&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data HAVE (index=(A=(ID DATE PROCEDURE)));
  informat ID $1. PROCEDURE $1. DATE date9.;
  format   ID $1. PROCEDURE $1. DATE date9.;
  input ID $ PROCEDURE  $  DATE ;
cards;
1 X 10Mar2016
1 X 10Apr2016
2 X 12Jan2016
2 X 13Jan2016
2 X 24Feb2016
2 X 10Mar2016
2 Y 10Mar2016
3 Y 11Dec2016
3 Y 12Dec2016
4 X 24Jul2016
4 Y 25Jul2016
4 Y 28Jul2016
run;

data XY_EVENTS;
  set HAVE;
  by ID DATE PROCEDURE;
  LAST_ID        = lag(ID);
  LAST_PROCEDURE = lag(PROCEDURE);
  LAST_DATE      = lag(DATE);
  if ID = LAST_ID and PROCEDURE ne LAST_PROCEDURE then do;
    N   =_N_;
    DIF =DATE-LAST_DATE;   
    output;
  end;
  keep ID N DIF;
run;

proc sql;
  create table XY_MIN as
  select * from XY_EVENTS
  group by ID
  having DIF=min(DIF);
quit;

data WANT; 
  set XY_MIN;
  POINT=N-1; 
  set HAVE point=POINT;
  output;
  POINT=N;                                       
  set HAVE point=POINT;
  output;
  drop N;
run;

proc print noobs;
run;&lt;/CODE&gt;&lt;/PRE&gt;
&lt;TABLE class="table" rules="all" frame="box" cellspacing="0" cellpadding="5" summary="Procedure Print: Data Set WORK.WANT"&gt;
&lt;THEAD&gt;
&lt;TR&gt;
&lt;TH class="l header" scope="col"&gt;ID&lt;/TH&gt;
&lt;TH class="r header" scope="col"&gt;DIF&lt;/TH&gt;
&lt;TH class="l header" scope="col"&gt;PROCEDURE&lt;/TH&gt;
&lt;TH class="r header" scope="col"&gt;DATE&lt;/TH&gt;
&lt;/TR&gt;
&lt;/THEAD&gt;
&lt;TBODY&gt;
&lt;TR&gt;
&lt;TD class="l data"&gt;2&lt;/TD&gt;
&lt;TD class="r data"&gt;0&lt;/TD&gt;
&lt;TD class="l data"&gt;X&lt;/TD&gt;
&lt;TD class="r data"&gt;10MAR2016&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class="l data"&gt;2&lt;/TD&gt;
&lt;TD class="r data"&gt;0&lt;/TD&gt;
&lt;TD class="l data"&gt;Y&lt;/TD&gt;
&lt;TD class="r data"&gt;10MAR2016&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class="l data"&gt;4&lt;/TD&gt;
&lt;TD class="r data"&gt;1&lt;/TD&gt;
&lt;TD class="l data"&gt;X&lt;/TD&gt;
&lt;TD class="r data"&gt;24JUL2016&lt;/TD&gt;
&lt;/TR&gt;
&lt;TR&gt;
&lt;TD class="l data"&gt;4&lt;/TD&gt;
&lt;TD class="r data"&gt;1&lt;/TD&gt;
&lt;TD class="l data"&gt;Y&lt;/TD&gt;
&lt;TD class="r data"&gt;25JUL2016&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>Fri, 24 Mar 2017 02:28:07 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/selecting-unique-cases/m-p/343932#M63464</guid>
      <dc:creator>ChrisNZ</dc:creator>
      <dc:date>2017-03-24T02:28:07Z</dc:date>
    </item>
    <item>
      <title>Re: selecting unique cases</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/selecting-unique-cases/m-p/343943#M63466</link>
      <description>&lt;P&gt;What if there are multiple X and Y within 2 days, what you gonna do ?&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data have;
	informat id $1. procedure $1. date_of_procedure date9.;
	format id $1. procedure $1. date_of_procedure date9.;
	
	input ID   $         Procedure  $    Date_of_Procedure ;
	cards;
	1                X                   10Mar2016
	1                X                   10Apr2016
	2                X                   12Jan2016
	2                X                   13Jan2016
	2                X                    24Feb2016
	2                X                   10Mar2016
	2                Y                   10Mar2016
	3                Y                   11Dec2016
	3                Y                   12Dec2016
	4                X                    24Jul2016
	4                Y                    25Jul2016
	;
	run;
proc sort data=have;
by id date_of_procedure procedure;
run;
data want;
 set have;
 if id=lag(id) and procedure ne lag(procedure) and
    dif(date_of_procedure) lt 3 then do;
  output;n=_n_-1;
  set have point=n;
  output;
 end;
 drop n;
run;&lt;/CODE&gt;&lt;/PRE&gt;</description>
      <pubDate>Fri, 24 Mar 2017 03:03:53 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/selecting-unique-cases/m-p/343943#M63466</guid>
      <dc:creator>Ksharp</dc:creator>
      <dc:date>2017-03-24T03:03:53Z</dc:date>
    </item>
  </channel>
</rss>

