<?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: General SAS Question in SAS Procedures</title>
    <link>https://communities.sas.com/t5/SAS-Procedures/General-SAS-Question/m-p/124584#M34221</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Sort of .. kind of.&amp;nbsp; You would have to change some of the code. e.g.:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data have;&lt;/P&gt;&lt;P&gt;&amp;nbsp; input ID $&amp;nbsp; Diag&amp;nbsp;&amp;nbsp; ReadmitID $;&lt;/P&gt;&lt;P&gt;&amp;nbsp; cards;&lt;/P&gt;&lt;P&gt;101&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 4&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 111&lt;/P&gt;&lt;P&gt;102&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 3&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 222&lt;/P&gt;&lt;P&gt;103&amp;nbsp;&amp;nbsp;&amp;nbsp; 5&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 333&lt;/P&gt;&lt;P&gt;111&amp;nbsp;&amp;nbsp;&amp;nbsp; 4 .&lt;/P&gt;&lt;P&gt;222&amp;nbsp;&amp;nbsp;&amp;nbsp; 4 .&lt;/P&gt;&lt;P&gt;333&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 6 .&lt;/P&gt;&lt;P&gt;;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA fmtDataset (drop=ReadmitID);&lt;/P&gt;&lt;P&gt;&amp;nbsp; set have (rename=(id=start diag=label));&lt;/P&gt;&lt;P&gt;&amp;nbsp; if missing(ReadmitID);&lt;/P&gt;&lt;P&gt;&amp;nbsp; retain fmtname 'idcode' type 'C';&lt;/P&gt;&lt;P&gt;RUN;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PROC FORMAT CNTLIN=fmtDataset;&lt;/P&gt;&lt;P&gt;RUN;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA want;&lt;/P&gt;&lt;P&gt;&amp;nbsp; set have;&lt;/P&gt;&lt;P&gt;&amp;nbsp; if not missing(ReadmitID);&lt;/P&gt;&lt;P&gt;&amp;nbsp; if put(ReadmitID,$idcode.) eq diag then same='yes';&lt;/P&gt;&lt;P&gt;&amp;nbsp; else same='no';&lt;/P&gt;&lt;P&gt;RUN;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;P.S.&amp;nbsp; Isn't it about time that you marked some of the posts in this thread as being either helpful or correct or, minimally, at least indicate that the question has been answered.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Tue, 13 Nov 2012 16:16:57 GMT</pubDate>
    <dc:creator>art297</dc:creator>
    <dc:date>2012-11-13T16:16:57Z</dc:date>
    <item>
      <title>General SAS Question</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/General-SAS-Question/m-p/124564#M34201</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Team,&lt;/P&gt;&lt;P&gt;I have a dataset as shown below..&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ID&amp;nbsp;&amp;nbsp; Diag&amp;nbsp;&amp;nbsp; ReadmitID&lt;/P&gt;&lt;P&gt;A&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 4&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; A'&lt;/P&gt;&lt;P&gt;B&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 3&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; B'&lt;/P&gt;&lt;P&gt;C&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 5&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; C'&lt;/P&gt;&lt;P&gt;A'&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 4&lt;/P&gt;&lt;P&gt;B'&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 4&lt;/P&gt;&lt;P&gt;C'&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 6&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;where A B C are the id of the patient and A' B' and C' are the &lt;STRONG&gt;ID of the same patients during readmission.&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;Our goal is to identify if he has the same Diag code as that of admission (unprimed ID's) during readmission (primed ID's)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 12 Nov 2012 21:16:16 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/General-SAS-Question/m-p/124564#M34201</guid>
      <dc:creator>robertrao</dc:creator>
      <dc:date>2012-11-12T21:16:16Z</dc:date>
    </item>
    <item>
      <title>Re: General SAS Question</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/General-SAS-Question/m-p/124565#M34202</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Karun:&amp;nbsp; Someone else will have to show you how this can be stated as a single proc sql call, but I think that the following does what you want:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;proc sql;&lt;/P&gt;&lt;P&gt;&amp;nbsp; create table first as&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; select *&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; from have&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; where index(id,"'")=0&lt;/P&gt;&lt;P&gt;&amp;nbsp; ;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; create table second as&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; select id as ReadmitID, diag as diag2&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; from have&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; where index(id,"'") ne 0&lt;/P&gt;&lt;P&gt;&amp;nbsp; ;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; create table want as&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; select a.id,a.diag,a.ReadmitID,b.diag2,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; case&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; when diag=diag2 then "Yes"&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; else "No"&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; end as same&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; from first as a&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; left join&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; second as b&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; on a.ReadmitID=b.ReadmitID&lt;/P&gt;&lt;P&gt;&amp;nbsp; ;&lt;/P&gt;&lt;P&gt;quit;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 12 Nov 2012 21:53:37 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/General-SAS-Question/m-p/124565#M34202</guid>
      <dc:creator>art297</dc:creator>
      <dc:date>2012-11-12T21:53:37Z</dc:date>
    </item>
    <item>
      <title>Re: General SAS Question</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/General-SAS-Question/m-p/124566#M34203</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Thanks a ton.&lt;/P&gt;&lt;P&gt;I am not looking for a single SQL call. Simple datastep also could be of great help&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 12 Nov 2012 22:05:41 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/General-SAS-Question/m-p/124566#M34203</guid>
      <dc:creator>robertrao</dc:creator>
      <dc:date>2012-11-12T22:05:41Z</dc:date>
    </item>
    <item>
      <title>Re: General SAS Question</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/General-SAS-Question/m-p/124567#M34204</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;OK, a simple data step.&amp;nbsp; I'm not sure how efficient it will be, but it will work.&amp;nbsp; I added a few more variables that you might (or might not) want.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data want;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; set have (keep=ID Diag) nobs=_nobs_;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; do _i_=1 to _nobs_;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; set have (keep=ReAdmitID Diag rename=(Diag=ReAdmitDiag)) point=_i_;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (ID=ReAdmitID) and (_n_ ne _i_) then do;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; original_observation=_n_;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; matching_observation=_i_;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if Diag=ReadmitDiag then same_diagnosis='Y';&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; else same_diagnosis='N';&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; output;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; end;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; end;&lt;/P&gt;&lt;P&gt;run;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;OK, maybe it's not really that simple but it's not terrible either.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 12 Nov 2012 22:14:12 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/General-SAS-Question/m-p/124567#M34204</guid>
      <dc:creator>Astounding</dc:creator>
      <dc:date>2012-11-12T22:14:12Z</dc:date>
    </item>
    <item>
      <title>Re: General SAS Question</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/General-SAS-Question/m-p/124568#M34205</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;I got the logic but not clear enough.&lt;/P&gt;&lt;P&gt;Could you explain me how can we assign _i_ to a matching observation??&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 12 Nov 2012 22:25:04 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/General-SAS-Question/m-p/124568#M34205</guid>
      <dc:creator>robertrao</dc:creator>
      <dc:date>2012-11-12T22:25:04Z</dc:date>
    </item>
    <item>
      <title>Re: General SAS Question</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/General-SAS-Question/m-p/124569#M34206</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Maybe you would still consider this one simple:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data have;&lt;/P&gt;&lt;P&gt;&amp;nbsp; input ID $&amp;nbsp; Diag&amp;nbsp;&amp;nbsp; ReadmitID $;&lt;/P&gt;&lt;P&gt;&amp;nbsp; cards;&lt;/P&gt;&lt;P&gt;A&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 4&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; A'&lt;/P&gt;&lt;P&gt;B&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 3&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; B'&lt;/P&gt;&lt;P&gt;C&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 5&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; C'&lt;/P&gt;&lt;P&gt;A'&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 4 .&lt;/P&gt;&lt;P&gt;B'&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 4 .&lt;/P&gt;&lt;P&gt;C'&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 6 .&lt;/P&gt;&lt;P&gt;;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data first;&lt;/P&gt;&lt;P&gt;&amp;nbsp; set have (where=(index(id,"'")=0));&lt;/P&gt;&lt;P&gt;run;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;proc sort data=first;&lt;/P&gt;&lt;P&gt;&amp;nbsp; by ReadmitID;&lt;/P&gt;&lt;P&gt;run;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data second;&lt;/P&gt;&lt;P&gt;&amp;nbsp; set have (drop=ReadmitID&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; rename=(ID=ReadmitID&lt;/P&gt;&lt;P&gt;&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; diag=diag2)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; where=(index(ReadmitID,"'")));&lt;/P&gt;&lt;P&gt;run;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;proc sort data=second;&lt;/P&gt;&lt;P&gt;&amp;nbsp; by ReadmitID;&lt;/P&gt;&lt;P&gt;run;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data want;&lt;/P&gt;&lt;P&gt;&amp;nbsp; merge first second;&lt;/P&gt;&lt;P&gt;&amp;nbsp; by ReadmitID;&lt;/P&gt;&lt;P&gt;&amp;nbsp; if diag eq diag2 then same="Yes";&lt;/P&gt;&lt;P&gt;&amp;nbsp; else same="No";&lt;/P&gt;&lt;P&gt;run;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 12 Nov 2012 22:25:35 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/General-SAS-Question/m-p/124569#M34206</guid>
      <dc:creator>art297</dc:creator>
      <dc:date>2012-11-12T22:25:35Z</dc:date>
    </item>
    <item>
      <title>Re: General SAS Question</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/General-SAS-Question/m-p/124570#M34207</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;How about a little Hash() approach:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data have;&lt;/P&gt;&lt;P&gt;infile cards truncover;&lt;/P&gt;&lt;P&gt;input (ID&amp;nbsp;&amp;nbsp; Diag&amp;nbsp;&amp;nbsp; ReadmitID) (:$);&lt;/P&gt;&lt;P&gt;cards;&lt;/P&gt;&lt;P&gt;A&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 4&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; A'&lt;/P&gt;&lt;P&gt;B&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 3&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; B'&lt;/P&gt;&lt;P&gt;C&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 5&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; C'&lt;/P&gt;&lt;P&gt;A'&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 4&lt;/P&gt;&lt;P&gt;B'&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 4&lt;/P&gt;&lt;P&gt;C'&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 6&lt;/P&gt;&lt;P&gt;;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data want;&lt;/P&gt;&lt;P&gt;&amp;nbsp; if _n_=1 then do;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if 0 then set have (rename=(diag=_diag id=_id) keep=id diag);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; dcl hash h(dataset:"have(rename=(diag=_diag id=_id) keep=id diag)");&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; h.definekey('_ID');&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; h.definedata(all:'y');&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; h.definedone();&lt;/P&gt;&lt;P&gt;&amp;nbsp; end;&lt;/P&gt;&lt;P&gt;&amp;nbsp; set have;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if h.find(key:ReadmitID)=0 then flag=(diag=_diag);&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; drop _:;&lt;/P&gt;&lt;P&gt;&amp;nbsp; run;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp; proc print;run;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Haikuo&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 12 Nov 2012 22:37:29 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/General-SAS-Question/m-p/124570#M34207</guid>
      <dc:creator>Haikuo</dc:creator>
      <dc:date>2012-11-12T22:37:29Z</dc:date>
    </item>
    <item>
      <title>Re: General SAS Question</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/General-SAS-Question/m-p/124571#M34208</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;If you are only interested in readmissions, and there can only be a single readmission per patient, then this will do it in one pass&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Proc SQL ;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Create table readmit as&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Select&amp;nbsp;&amp;nbsp;&amp;nbsp; adm.ID&lt;/P&gt;&lt;P&gt;&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; adm.Diag&lt;/P&gt;&lt;P&gt;&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; adm.ReadmitID&lt;/P&gt;&lt;P&gt;&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; rad.Diag&amp;nbsp;&amp;nbsp;&amp;nbsp; As&amp;nbsp;&amp;nbsp;&amp;nbsp; ReadmitDiag&lt;/P&gt;&lt;P&gt;&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; case (rad.Diag)&lt;/P&gt;&lt;P&gt;&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; When (adm.Diag)&lt;/P&gt;&lt;P&gt;&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Then&amp;nbsp;&amp;nbsp;&amp;nbsp; 'Y'&lt;/P&gt;&lt;P&gt;&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Else&amp;nbsp;&amp;nbsp;&amp;nbsp; 'N'&lt;/P&gt;&lt;P&gt;&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; End&lt;/P&gt;&lt;P&gt;&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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; As&amp;nbsp;&amp;nbsp;&amp;nbsp; Match&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; From&amp;nbsp;&amp;nbsp;&amp;nbsp; admit&amp;nbsp;&amp;nbsp;&amp;nbsp; adm&lt;/P&gt;&lt;P&gt;&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; admit&amp;nbsp;&amp;nbsp;&amp;nbsp; rad&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Where&amp;nbsp;&amp;nbsp;&amp;nbsp; rad.ID&amp;nbsp;&amp;nbsp;&amp;nbsp; =&amp;nbsp;&amp;nbsp;&amp;nbsp; adm.ReadmitID&lt;/P&gt;&lt;P&gt;&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; ;&lt;/P&gt;&lt;P&gt;Quit ;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;However, if you want a more general solution where the possibility of multiple readmissions exists then it would be better to recode the readmission ID to match the original admission, then process the resulting dataset for non matches.&amp;nbsp; If this is the case, I could suggest some code.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Richard in Oz&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 12 Nov 2012 22:41:14 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/General-SAS-Question/m-p/124571#M34208</guid>
      <dc:creator>RichardinOz</dc:creator>
      <dc:date>2012-11-12T22:41:14Z</dc:date>
    </item>
    <item>
      <title>Re: General SAS Question</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/General-SAS-Question/m-p/124572#M34209</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;karun,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The second SET statement reads all the observations, and compares each to the observation read by the first SET statement. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The observation read by the first SET statement matches observation # _n_.&amp;nbsp; The observation read by the second SET statement matches observation # _i_, since that second SET statement uses POINT=_i_ to control which observation to read.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Lots of interesting solutions here.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Good luck.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 12 Nov 2012 23:38:00 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/General-SAS-Question/m-p/124572#M34209</guid>
      <dc:creator>Astounding</dc:creator>
      <dc:date>2012-11-12T23:38:00Z</dc:date>
    </item>
    <item>
      <title>Re: General SAS Question</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/General-SAS-Question/m-p/124573#M34210</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;HaiKuo's code maybe is the fastest way.Here is another SQL solution.&lt;/P&gt;&lt;P&gt;Data is from ArthurT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE&gt;data have;
&amp;nbsp; input ID $&amp;nbsp; Diag&amp;nbsp;&amp;nbsp; ReadmitID $;
&amp;nbsp; cards;
A&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 4&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; A'
B&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 3&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; B'
C&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 5&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; C'
A'&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 4 .
B'&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 4 .
C'&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 6 .
;
run;
proc sql;
 create table want as
 select h.*,case when h.diag eq (select diag from have where id eq h.ReadmitID) then 'Yes'
&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; when h.diag ne (select diag from have where id eq h.ReadmitID) then 'No'
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; else 'No matched' end as flag length=10
&amp;nbsp; from have as h
;
quit;


&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Ksharp&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 13 Nov 2012 05:39:44 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/General-SAS-Question/m-p/124573#M34210</guid>
      <dc:creator>Ksharp</dc:creator>
      <dc:date>2012-11-13T05:39:44Z</dc:date>
    </item>
    <item>
      <title>Re: General SAS Question</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/General-SAS-Question/m-p/124574#M34211</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Team,&lt;/P&gt;&lt;P&gt;I am trying to execte my problem with all the different solutions.&lt;/P&gt;&lt;P&gt;I understood Art,s logic.&lt;/P&gt;&lt;P&gt;Could you explain to me why&amp;nbsp; should we write (_n_ ne _i_) in the below if statement.....&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data want;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; set have (keep=ID Diag) nobs=_nobs_;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; do _i_=1 to _nobs_;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; set have (keep=ReAdmitID Diag rename=(Diag=ReAdmitDiag)) point=_i_;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (ID=ReAdmitID) and &lt;STRONG&gt;(_n_ ne _i_)&lt;/STRONG&gt; then do;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; original_observation=_n_;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; matching_observation=_i_;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if Diag=ReadmitDiag then same_diagnosis='Y';&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; else same_diagnosis='N';&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; output;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; end;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp; end;&lt;/P&gt;&lt;P&gt;run;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Also if someone could explain me HAi's Hash logic..that would be great tooo..&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;For example..&lt;/P&gt;&lt;P&gt;h.definekey('_ID');&lt;/P&gt;&lt;P&gt;what is h.&lt;/P&gt;&lt;P&gt;is it a library&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 13 Nov 2012 14:45:32 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/General-SAS-Question/m-p/124574#M34211</guid>
      <dc:creator>robertrao</dc:creator>
      <dc:date>2012-11-13T14:45:32Z</dc:date>
    </item>
    <item>
      <title>Re: General SAS Question</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/General-SAS-Question/m-p/124575#M34212</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;For this particular problem, it's overkill to check:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;(_n_ ne _i_)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Basically, it prevents an observation from matching itself.&amp;nbsp; For some applications that's important, but for this one it won't make a difference.&amp;nbsp; The readmission ID would never match the original ID on the same observation.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 13 Nov 2012 14:55:25 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/General-SAS-Question/m-p/124575#M34212</guid>
      <dc:creator>Astounding</dc:creator>
      <dc:date>2012-11-13T14:55:25Z</dc:date>
    </item>
    <item>
      <title>Re: General SAS Question</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/General-SAS-Question/m-p/124576#M34213</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Exactly,&lt;/P&gt;&lt;P&gt;Thats the reason I was double checking.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Also I was wondering this could be done using&amp;nbsp; PRoc Format CNTLIN??&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 13 Nov 2012 14:58:27 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/General-SAS-Question/m-p/124576#M34213</guid>
      <dc:creator>robertrao</dc:creator>
      <dc:date>2012-11-13T14:58:27Z</dc:date>
    </item>
    <item>
      <title>Re: General SAS Question</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/General-SAS-Question/m-p/124577#M34214</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;If the ID variable never has duplicates, it would be relatively straightforward to use PROC FORMAT.&amp;nbsp; But that wasn't clear from the limited amount of data.&amp;nbsp; Must ID take on unique values?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 13 Nov 2012 15:09:41 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/General-SAS-Question/m-p/124577#M34214</guid>
      <dc:creator>Astounding</dc:creator>
      <dc:date>2012-11-13T15:09:41Z</dc:date>
    </item>
    <item>
      <title>Re: General SAS Question</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/General-SAS-Question/m-p/124578#M34215</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;YES....The ID variable is Unique.&lt;/P&gt;&lt;P&gt;But using PROC FORMAT i only know until extractling ReadmitIds from the ID variable using CNTLIN.&lt;/P&gt;&lt;P&gt;But I am not sure of the second part...checking to see if the readmits have the same DIAG as the beginning of admission&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 13 Nov 2012 15:22:40 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/General-SAS-Question/m-p/124578#M34215</guid>
      <dc:creator>robertrao</dc:creator>
      <dc:date>2012-11-13T15:22:40Z</dc:date>
    </item>
    <item>
      <title>Re: General SAS Question</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/General-SAS-Question/m-p/124579#M34216</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;OK.&amp;nbsp; I won't be able to work on this for a few hours, but I'd be happy to see anyone else code it.&amp;nbsp; The basic idea is that the CNTLIN data set translates ID into the observation number where that ID occurs.&amp;nbsp; Then march through the observations, and check in a DATA step whether the readmission ID appears in the format.&amp;nbsp; If so, use SET with POINT= to retrieve the matching observation.&amp;nbsp; Along the way, KEEP/RENAME variables as appropriate.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;If nobody attempts this, I can get to it this afternoon.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Good luck.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 13 Nov 2012 15:31:20 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/General-SAS-Question/m-p/124579#M34216</guid>
      <dc:creator>Astounding</dc:creator>
      <dc:date>2012-11-13T15:31:20Z</dc:date>
    </item>
    <item>
      <title>Re: General SAS Question</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/General-SAS-Question/m-p/124580#M34217</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Great Help,&lt;/P&gt;&lt;P&gt;Thanks a ton&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 13 Nov 2012 15:35:25 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/General-SAS-Question/m-p/124580#M34217</guid>
      <dc:creator>robertrao</dc:creator>
      <dc:date>2012-11-13T15:35:25Z</dc:date>
    </item>
    <item>
      <title>Re: General SAS Question</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/General-SAS-Question/m-p/124581#M34218</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;data have;&lt;/P&gt;&lt;P&gt;&amp;nbsp; input ID $&amp;nbsp; Diag&amp;nbsp;&amp;nbsp; ReadmitID $;&lt;/P&gt;&lt;P&gt;&amp;nbsp; cards;&lt;/P&gt;&lt;P&gt;A&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 4&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; A'&lt;/P&gt;&lt;P&gt;B&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 3&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; B'&lt;/P&gt;&lt;P&gt;C&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 5&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; C'&lt;/P&gt;&lt;P&gt;A'&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 4 .&lt;/P&gt;&lt;P&gt;B'&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 4 .&lt;/P&gt;&lt;P&gt;C'&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 6 .&lt;/P&gt;&lt;P&gt;;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA fmtDataset;&lt;/P&gt;&lt;P&gt;&amp;nbsp; set have (drop=ReadmitID rename=(id=start diag=label));&lt;/P&gt;&lt;P&gt;&amp;nbsp; if index(start,"'");&lt;/P&gt;&lt;P&gt;&amp;nbsp; retain fmtname '$idcode' type 'C';&lt;/P&gt;&lt;P&gt;RUN;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PROC FORMAT CNTLIN=fmtDataset;&lt;/P&gt;&lt;P&gt;RUN;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA want;&lt;/P&gt;&lt;P&gt;&amp;nbsp; set have;&lt;/P&gt;&lt;P&gt;&amp;nbsp; if not index(id,"'");&lt;/P&gt;&lt;P&gt;&amp;nbsp; if put(ReadmitID,$idcode.) eq diag then same='yes';&lt;/P&gt;&lt;P&gt;&amp;nbsp; else same='no';&lt;/P&gt;&lt;P&gt;RUN;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 13 Nov 2012 15:44:47 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/General-SAS-Question/m-p/124581#M34218</guid>
      <dc:creator>art297</dc:creator>
      <dc:date>2012-11-13T15:44:47Z</dc:date>
    </item>
    <item>
      <title>Re: General SAS Question</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/General-SAS-Question/m-p/124582#M34219</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Art,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;That's a much better idea ... just use the format to translate from ID into Diag.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 13 Nov 2012 15:47:36 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/General-SAS-Question/m-p/124582#M34219</guid>
      <dc:creator>Astounding</dc:creator>
      <dc:date>2012-11-13T15:47:36Z</dc:date>
    </item>
    <item>
      <title>Re: General SAS Question</title>
      <link>https://communities.sas.com/t5/SAS-Procedures/General-SAS-Question/m-p/124583#M34220</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Thans a ton for your valuable time and effort.&lt;/P&gt;&lt;P&gt;I am curious. In the future if the alphabets are replaced by numbers&amp;nbsp; i can use the same code without the below if conditions in the code&lt;/P&gt;&lt;P&gt;IT STILL WORKS RIGHT???&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;if index(start,"'");&lt;/P&gt;&lt;P&gt;if not index(id,"'");&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data have;&lt;/P&gt;&lt;P&gt;&amp;nbsp; input ID $&amp;nbsp; Diag&amp;nbsp;&amp;nbsp; ReadmitID $;&lt;/P&gt;&lt;P&gt;&amp;nbsp; cards;&lt;/P&gt;&lt;P&gt;101&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 4&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 111&lt;/P&gt;&lt;P&gt;102&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 3&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 222&lt;/P&gt;&lt;P&gt;103&amp;nbsp;&amp;nbsp;&amp;nbsp; 5&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 333&lt;/P&gt;&lt;P&gt;111&amp;nbsp;&amp;nbsp;&amp;nbsp; 4 .&lt;/P&gt;&lt;P&gt;222&amp;nbsp;&amp;nbsp;&amp;nbsp; 4 .&lt;/P&gt;&lt;P&gt;333&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 6 .&lt;/P&gt;&lt;P&gt;;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 13 Nov 2012 15:59:06 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Procedures/General-SAS-Question/m-p/124583#M34220</guid>
      <dc:creator>robertrao</dc:creator>
      <dc:date>2012-11-13T15:59:06Z</dc:date>
    </item>
  </channel>
</rss>

