<?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 Step Help in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/Data-Step-Help/m-p/87114#M18594</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Are you sure the dates will always be in order for drug_dt?&lt;/P&gt;&lt;P&gt;Why for patient 3/4/5 are there dates in the drug rather than drug names?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I'm assuming you want to work with the data in this structure rather than transposing it?&lt;/P&gt;&lt;P&gt;Will you always know how many drug dates and tests you have?&amp;nbsp; What happens when drug dates or drugs are missing?&lt;/P&gt;&lt;P&gt;Is there a boundary on the date, ie if the drug is 1 year (6 months, 3 months) after the test is that still valid?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Can you provide the data in a data step, I'm guessing you have missing above and it isn't showing up? &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Yes it can be done and not relatively hard...nest a do loop for each test to go through the drug dates and find the first test after or on the date. &lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Fri, 30 Nov 2012 21:05:22 GMT</pubDate>
    <dc:creator>Reeza</dc:creator>
    <dc:date>2012-11-30T21:05:22Z</dc:date>
    <item>
      <title>Data Step Help</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Data-Step-Help/m-p/87113#M18593</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi, everybody, I have a dataset like the follwoing:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;TABLE border="0" cellpadding="0" cellspacing="0" style="WIDTH: 950px;"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD height="20" width="74"&gt;patient_id&lt;/TD&gt;&lt;TD width="72"&gt;drug1&lt;/TD&gt;&lt;TD width="72"&gt;drug2&lt;/TD&gt;&lt;TD width="72"&gt;drug3&lt;/TD&gt;&lt;TD width="68"&gt;drug1_dt&lt;/TD&gt;&lt;TD width="68"&gt;drug1_dt&lt;/TD&gt;&lt;TD width="68"&gt;drug1_dt&lt;/TD&gt;&lt;TD width="68"&gt;Test_dt1&lt;/TD&gt;&lt;TD width="64"&gt;Test_dt2&lt;/TD&gt;&lt;TD width="68"&gt;Test_dt3&lt;/TD&gt;&lt;TD width="64"&gt;Test_dt4&lt;/TD&gt;&lt;TD width="64"&gt;Test_dt5&lt;/TD&gt;&lt;TD width="64"&gt;Test_dt6&lt;/TD&gt;&lt;TD width="64"&gt;Test_dt7&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD align="right" height="20"&gt;1&lt;/TD&gt;&lt;TD&gt;aaa&lt;/TD&gt;&lt;TD&gt;bbb&lt;/TD&gt;&lt;TD align="right" class="xl63"&gt;1/2/2012&lt;/TD&gt;&lt;TD align="right" class="xl63"&gt;1/4/2012&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD align="right" height="20"&gt;2&lt;/TD&gt;&lt;TD&gt;ccc&lt;/TD&gt;&lt;TD&gt;aaa&lt;/TD&gt;&lt;TD&gt;bbb&lt;/TD&gt;&lt;TD align="right" class="xl63"&gt;3/4/2012&lt;/TD&gt;&lt;TD align="right" class="xl63"&gt;5/2/2012&lt;/TD&gt;&lt;TD align="right" class="xl63"&gt;6/1/2012&lt;/TD&gt;&lt;TD align="right" class="xl63"&gt;1/3/2012&lt;/TD&gt;&lt;TD align="right" class="xl63"&gt;2/2/3012&lt;/TD&gt;&lt;TD align="right" class="xl63"&gt;3/6/2012&lt;/TD&gt;&lt;TD align="right" class="xl63"&gt;4/1/2012&lt;/TD&gt;&lt;TD align="right" class="xl63"&gt;5/2/2012&lt;/TD&gt;&lt;TD align="right" class="xl63"&gt;5/6/2012&lt;/TD&gt;&lt;TD align="right" class="xl63"&gt;5/8/2012&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD align="right" height="20"&gt;3&lt;/TD&gt;&lt;TD&gt;aaa&lt;/TD&gt;&lt;TD align="right" class="xl63"&gt;1/5/2012&lt;/TD&gt;&lt;TD align="right" class="xl63"&gt;1/1/2012&lt;/TD&gt;&lt;TD align="right" class="xl63"&gt;1/5/2012&lt;/TD&gt;&lt;TD align="right" class="xl63"&gt;2/1/2012&lt;/TD&gt;&lt;TD align="right" class="xl63"&gt;3/1/2012&lt;/TD&gt;&lt;TD align="right" class="xl63"&gt;4/1/2012&lt;/TD&gt;&lt;TD align="right" class="xl63"&gt;5/1/2012&lt;/TD&gt;&lt;TD align="right" class="xl63"&gt;6/1/2012&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD align="right" height="20"&gt;4&lt;/TD&gt;&lt;TD&gt;bbb&lt;/TD&gt;&lt;TD align="right" class="xl63"&gt;2/1/2012&lt;/TD&gt;&lt;TD align="right" class="xl63"&gt;1/1/2012&lt;/TD&gt;&lt;TD align="right" class="xl63"&gt;1/5/2012&lt;/TD&gt;&lt;TD align="right" class="xl63"&gt;1/6/2012&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD align="right" height="20"&gt;5&lt;/TD&gt;&lt;TD&gt;bbb&lt;/TD&gt;&lt;TD&gt;ccc&lt;/TD&gt;&lt;TD align="right" class="xl63"&gt;3/1/2012&lt;/TD&gt;&lt;TD align="right" class="xl63"&gt;3/16/2012&lt;/TD&gt;&lt;TD align="right" class="xl63"&gt;1/1/2012&lt;/TD&gt;&lt;TD align="right" class="xl63"&gt;3/1/2012&lt;/TD&gt;&lt;TD align="right" class="xl63"&gt;3/16/2012&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD align="right" height="20"&gt;6&lt;/TD&gt;&lt;TD&gt;aaa&lt;/TD&gt;&lt;TD&gt;bbb&lt;/TD&gt;&lt;TD&gt;ccc&lt;/TD&gt;&lt;TD align="right" class="xl63"&gt;1/30/2012&lt;/TD&gt;&lt;TD align="right" class="xl63"&gt;3/1/2012&lt;/TD&gt;&lt;TD align="right" class="xl63"&gt;5/10/2012&lt;/TD&gt;&lt;TD align="right" class="xl63"&gt;1/30/2012&lt;/TD&gt;&lt;TD align="right" class="xl63"&gt;3/1/2012&lt;/TD&gt;&lt;TD align="right" class="xl63"&gt;5/10/2012&lt;/TD&gt;&lt;TD align="right" class="xl63"&gt;6/1/2012&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD align="right" height="20"&gt;7&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I want to create a new series of variables, reason code, by carrying over drug name based on the comparison of test date with drug taking date. If test date greater than or equal to drug taking date, then the reason code will be the drug used by the drug taking date. Somthing like this:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;TABLE border="0" cellpadding="0" cellspacing="0" width="1398"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD height="20" width="74"&gt;patient_id&lt;/TD&gt;&lt;TD width="72"&gt;drug1&lt;/TD&gt;&lt;TD width="72"&gt;drug2&lt;/TD&gt;&lt;TD width="72"&gt;drug3&lt;/TD&gt;&lt;TD width="68"&gt;drug1_dt&lt;/TD&gt;&lt;TD width="68"&gt;drug1_dt&lt;/TD&gt;&lt;TD width="68"&gt;drug1_dt&lt;/TD&gt;&lt;TD width="68"&gt;Test_dt1&lt;/TD&gt;&lt;TD width="64"&gt;Test_dt2&lt;/TD&gt;&lt;TD width="68"&gt;Test_dt3&lt;/TD&gt;&lt;TD width="64"&gt;Test_dt4&lt;/TD&gt;&lt;TD width="64"&gt;Test_dt5&lt;/TD&gt;&lt;TD width="64"&gt;Test_dt6&lt;/TD&gt;&lt;TD width="64"&gt;Test_dt7&lt;/TD&gt;&lt;TD width="64"&gt;reason1&lt;/TD&gt;&lt;TD width="64"&gt;reason2&lt;/TD&gt;&lt;TD width="64"&gt;reason3&lt;/TD&gt;&lt;TD width="64"&gt;reason4&lt;/TD&gt;&lt;TD width="64"&gt;reason5&lt;/TD&gt;&lt;TD width="64"&gt;reason6&lt;/TD&gt;&lt;TD width="64"&gt;reason7&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD align="right" height="20"&gt;1&lt;/TD&gt;&lt;TD&gt;aaa&lt;/TD&gt;&lt;TD&gt;bbb&lt;/TD&gt;&lt;TD align="right" class="xl65"&gt;1/2/2012&lt;/TD&gt;&lt;TD align="right" class="xl65"&gt;1/4/2012&lt;/TD&gt;&lt;TD&gt;bbb&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD align="right" height="20"&gt;2&lt;/TD&gt;&lt;TD&gt;ccc&lt;/TD&gt;&lt;TD&gt;aaa&lt;/TD&gt;&lt;TD&gt;bbb&lt;/TD&gt;&lt;TD align="right" class="xl65"&gt;3/4/2012&lt;/TD&gt;&lt;TD align="right" class="xl65"&gt;5/2/2012&lt;/TD&gt;&lt;TD align="right" class="xl65"&gt;6/1/2012&lt;/TD&gt;&lt;TD align="right" class="xl65"&gt;1/3/2012&lt;/TD&gt;&lt;TD align="right" class="xl65"&gt;2/2/3012&lt;/TD&gt;&lt;TD align="right" class="xl65"&gt;3/6/2012&lt;/TD&gt;&lt;TD align="right" class="xl65"&gt;4/1/2012&lt;/TD&gt;&lt;TD align="right" class="xl65"&gt;5/2/2012&lt;/TD&gt;&lt;TD align="right" class="xl65"&gt;5/6/2012&lt;/TD&gt;&lt;TD align="right" class="xl65"&gt;5/8/2012&lt;/TD&gt;&lt;TD&gt;unknown&lt;/TD&gt;&lt;TD&gt;unknown&lt;/TD&gt;&lt;TD&gt;ccc&lt;/TD&gt;&lt;TD&gt;ccc&lt;/TD&gt;&lt;TD&gt;aaa&lt;/TD&gt;&lt;TD&gt;aaa&lt;/TD&gt;&lt;TD&gt;aaa&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD align="right" height="20"&gt;3&lt;/TD&gt;&lt;TD&gt;aaa&lt;/TD&gt;&lt;TD align="right" class="xl65"&gt;1/5/2012&lt;/TD&gt;&lt;TD align="right" class="xl65"&gt;1/1/2012&lt;/TD&gt;&lt;TD align="right" class="xl65"&gt;1/5/2012&lt;/TD&gt;&lt;TD align="right" class="xl65"&gt;2/1/2012&lt;/TD&gt;&lt;TD align="right" class="xl65"&gt;3/1/2012&lt;/TD&gt;&lt;TD align="right" class="xl65"&gt;4/1/2012&lt;/TD&gt;&lt;TD align="right" class="xl65"&gt;5/1/2012&lt;/TD&gt;&lt;TD align="right" class="xl65"&gt;6/1/2012&lt;/TD&gt;&lt;TD&gt;unknown&lt;/TD&gt;&lt;TD&gt;aaa&lt;/TD&gt;&lt;TD&gt;aaa&lt;/TD&gt;&lt;TD&gt;aaa&lt;/TD&gt;&lt;TD&gt;aaa&lt;/TD&gt;&lt;TD&gt;aaa&lt;/TD&gt;&lt;TD&gt;aaa&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD align="right" height="20"&gt;4&lt;/TD&gt;&lt;TD&gt;bbb&lt;/TD&gt;&lt;TD align="right" class="xl65"&gt;2/1/2012&lt;/TD&gt;&lt;TD align="right" class="xl65"&gt;1/1/2012&lt;/TD&gt;&lt;TD align="right" class="xl65"&gt;1/5/2012&lt;/TD&gt;&lt;TD align="right" class="xl65"&gt;1/6/2012&lt;/TD&gt;&lt;TD&gt;unknown&lt;/TD&gt;&lt;TD&gt;unknown&lt;/TD&gt;&lt;TD&gt;unknown&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD align="right" height="20"&gt;5&lt;/TD&gt;&lt;TD&gt;bbb&lt;/TD&gt;&lt;TD&gt;ccc&lt;/TD&gt;&lt;TD align="right" class="xl65"&gt;3/1/2012&lt;/TD&gt;&lt;TD align="right" class="xl65"&gt;3/16/2012&lt;/TD&gt;&lt;TD align="right" class="xl65"&gt;1/1/2012&lt;/TD&gt;&lt;TD align="right" class="xl65"&gt;3/1/2012&lt;/TD&gt;&lt;TD align="right" class="xl65"&gt;3/16/2012&lt;/TD&gt;&lt;TD&gt;unknown&lt;/TD&gt;&lt;TD&gt;bbb&lt;/TD&gt;&lt;TD&gt;ccc&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD align="right" height="20"&gt;6&lt;/TD&gt;&lt;TD&gt;aaa&lt;/TD&gt;&lt;TD&gt;bbb&lt;/TD&gt;&lt;TD&gt;ccc&lt;/TD&gt;&lt;TD align="right" class="xl65"&gt;1/30/2012&lt;/TD&gt;&lt;TD align="right" class="xl65"&gt;3/1/2012&lt;/TD&gt;&lt;TD align="right" class="xl65"&gt;5/10/2012&lt;/TD&gt;&lt;TD align="right" class="xl65"&gt;1/30/2012&lt;/TD&gt;&lt;TD align="right" class="xl65"&gt;3/1/2012&lt;/TD&gt;&lt;TD align="right" class="xl65"&gt;5/10/2012&lt;/TD&gt;&lt;TD align="right" class="xl65"&gt;6/1/2012&lt;/TD&gt;&lt;TD&gt;aaa&lt;/TD&gt;&lt;TD&gt;bbb&lt;/TD&gt;&lt;TD&gt;ccc&lt;/TD&gt;&lt;TD&gt;ccc&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD align="right" height="20"&gt;&lt;P&gt;7&lt;/P&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Does anybody know how to make it happen in SAS?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 30 Nov 2012 20:47:12 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Data-Step-Help/m-p/87113#M18593</guid>
      <dc:creator>c8826024</dc:creator>
      <dc:date>2012-11-30T20:47:12Z</dc:date>
    </item>
    <item>
      <title>Re: Data Step Help</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Data-Step-Help/m-p/87114#M18594</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Are you sure the dates will always be in order for drug_dt?&lt;/P&gt;&lt;P&gt;Why for patient 3/4/5 are there dates in the drug rather than drug names?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I'm assuming you want to work with the data in this structure rather than transposing it?&lt;/P&gt;&lt;P&gt;Will you always know how many drug dates and tests you have?&amp;nbsp; What happens when drug dates or drugs are missing?&lt;/P&gt;&lt;P&gt;Is there a boundary on the date, ie if the drug is 1 year (6 months, 3 months) after the test is that still valid?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Can you provide the data in a data step, I'm guessing you have missing above and it isn't showing up? &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Yes it can be done and not relatively hard...nest a do loop for each test to go through the drug dates and find the first test after or on the date. &lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 30 Nov 2012 21:05:22 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Data-Step-Help/m-p/87114#M18594</guid>
      <dc:creator>Reeza</dc:creator>
      <dc:date>2012-11-30T21:05:22Z</dc:date>
    </item>
    <item>
      <title>Re: Data Step Help</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Data-Step-Help/m-p/87115#M18595</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Thank you for your response.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Yes, the drug date and test date will be always in order. If there is no drug name, then the drug date will be missing. When I cut/paste the data to this board, somehome the blanks have been shifted/overwrited by near non-blank values which is mess up my data. Here is the correct data:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;TABLE border="0" cellpadding="0" cellspacing="0" width="1398"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD height="20" width="74"&gt;patient_id&lt;/TD&gt;&lt;TD width="72"&gt;drug1&lt;/TD&gt;&lt;TD width="72"&gt;drug2&lt;/TD&gt;&lt;TD width="72"&gt;drug3&lt;/TD&gt;&lt;TD width="68"&gt;drug1_dt&lt;/TD&gt;&lt;TD width="68"&gt;drug1_dt&lt;/TD&gt;&lt;TD width="68"&gt;drug1_dt&lt;/TD&gt;&lt;TD width="68"&gt;Test_dt1&lt;/TD&gt;&lt;TD width="64"&gt;Test_dt2&lt;/TD&gt;&lt;TD width="68"&gt;Test_dt3&lt;/TD&gt;&lt;TD width="64"&gt;Test_dt4&lt;/TD&gt;&lt;TD width="64"&gt;Test_dt5&lt;/TD&gt;&lt;TD width="64"&gt;Test_dt6&lt;/TD&gt;&lt;TD width="64"&gt;Test_dt7&lt;/TD&gt;&lt;TD width="64"&gt;reason1&lt;/TD&gt;&lt;TD width="64"&gt;reason2&lt;/TD&gt;&lt;TD width="64"&gt;reason3&lt;/TD&gt;&lt;TD width="64"&gt;reason4&lt;/TD&gt;&lt;TD width="64"&gt;reason5&lt;/TD&gt;&lt;TD width="64"&gt;reason6&lt;/TD&gt;&lt;TD width="64"&gt;reason7&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD align="right" height="20"&gt;1&lt;/TD&gt;&lt;TD&gt;aaa&lt;/TD&gt;&lt;TD&gt;bbb&lt;/TD&gt;&lt;TD&gt;missing&lt;/TD&gt;&lt;TD align="right" class="xl63"&gt;1/2/2012&lt;/TD&gt;&lt;TD class="xl63"&gt;missing&lt;/TD&gt;&lt;TD class="xl63"&gt;missing&lt;/TD&gt;&lt;TD align="right" class="xl63"&gt;1/4/2012&lt;/TD&gt;&lt;TD class="xl63"&gt;missing&lt;/TD&gt;&lt;TD class="xl63"&gt;missing&lt;/TD&gt;&lt;TD class="xl63"&gt;missing&lt;/TD&gt;&lt;TD class="xl63"&gt;missing&lt;/TD&gt;&lt;TD class="xl63"&gt;missing&lt;/TD&gt;&lt;TD class="xl63"&gt;missing&lt;/TD&gt;&lt;TD&gt;bbb&lt;/TD&gt;&lt;TD class="xl63"&gt;missing&lt;/TD&gt;&lt;TD class="xl63"&gt;missing&lt;/TD&gt;&lt;TD class="xl63"&gt;missing&lt;/TD&gt;&lt;TD class="xl63"&gt;missing&lt;/TD&gt;&lt;TD class="xl63"&gt;missing&lt;/TD&gt;&lt;TD class="xl63"&gt;missing&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD align="right" height="20"&gt;2&lt;/TD&gt;&lt;TD&gt;ccc&lt;/TD&gt;&lt;TD&gt;aaa&lt;/TD&gt;&lt;TD&gt;bbb&lt;/TD&gt;&lt;TD align="right" class="xl63"&gt;3/4/2012&lt;/TD&gt;&lt;TD align="right" class="xl63"&gt;5/2/2012&lt;/TD&gt;&lt;TD align="right" class="xl63"&gt;6/1/2012&lt;/TD&gt;&lt;TD align="right" class="xl63"&gt;1/3/2012&lt;/TD&gt;&lt;TD align="right" class="xl63"&gt;2/2/3012&lt;/TD&gt;&lt;TD align="right" class="xl63"&gt;3/6/2012&lt;/TD&gt;&lt;TD align="right" class="xl63"&gt;4/1/2012&lt;/TD&gt;&lt;TD align="right" class="xl63"&gt;5/2/2012&lt;/TD&gt;&lt;TD align="right" class="xl63"&gt;5/6/2012&lt;/TD&gt;&lt;TD align="right" class="xl63"&gt;5/8/2012&lt;/TD&gt;&lt;TD&gt;unknown&lt;/TD&gt;&lt;TD&gt;unknown&lt;/TD&gt;&lt;TD&gt;ccc&lt;/TD&gt;&lt;TD&gt;ccc&lt;/TD&gt;&lt;TD&gt;aaa&lt;/TD&gt;&lt;TD&gt;aaa&lt;/TD&gt;&lt;TD&gt;aaa&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD align="right" height="20"&gt;3&lt;/TD&gt;&lt;TD&gt;aaa&lt;/TD&gt;&lt;TD&gt;missing&lt;/TD&gt;&lt;TD&gt;missing&lt;/TD&gt;&lt;TD align="right" class="xl63"&gt;1/5/2012&lt;/TD&gt;&lt;TD class="xl63"&gt;missing&lt;/TD&gt;&lt;TD class="xl63"&gt;missing&lt;/TD&gt;&lt;TD align="right" class="xl63"&gt;1/1/2012&lt;/TD&gt;&lt;TD align="right" class="xl63"&gt;1/5/2012&lt;/TD&gt;&lt;TD align="right" class="xl63"&gt;2/1/2012&lt;/TD&gt;&lt;TD align="right" class="xl63"&gt;3/1/2012&lt;/TD&gt;&lt;TD align="right" class="xl63"&gt;4/1/2012&lt;/TD&gt;&lt;TD align="right" class="xl63"&gt;5/1/2012&lt;/TD&gt;&lt;TD align="right" class="xl63"&gt;6/1/2012&lt;/TD&gt;&lt;TD&gt;unknown&lt;/TD&gt;&lt;TD&gt;aaa&lt;/TD&gt;&lt;TD&gt;aaa&lt;/TD&gt;&lt;TD&gt;aaa&lt;/TD&gt;&lt;TD&gt;aaa&lt;/TD&gt;&lt;TD&gt;aaa&lt;/TD&gt;&lt;TD&gt;aaa&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD align="right" height="20"&gt;4&lt;/TD&gt;&lt;TD&gt;bbb&lt;/TD&gt;&lt;TD&gt;missing&lt;/TD&gt;&lt;TD&gt;missing&lt;/TD&gt;&lt;TD align="right" class="xl63"&gt;2/1/2012&lt;/TD&gt;&lt;TD class="xl63"&gt;missing&lt;/TD&gt;&lt;TD class="xl63"&gt;missing&lt;/TD&gt;&lt;TD align="right" class="xl63"&gt;1/1/2012&lt;/TD&gt;&lt;TD align="right" class="xl63"&gt;1/5/2012&lt;/TD&gt;&lt;TD align="right" class="xl63"&gt;1/6/2012&lt;/TD&gt;&lt;TD class="xl63"&gt;missing&lt;/TD&gt;&lt;TD class="xl63"&gt;missing&lt;/TD&gt;&lt;TD class="xl63"&gt;missing&lt;/TD&gt;&lt;TD class="xl63"&gt;missing&lt;/TD&gt;&lt;TD&gt;unknown&lt;/TD&gt;&lt;TD&gt;unknown&lt;/TD&gt;&lt;TD&gt;unknown&lt;/TD&gt;&lt;TD&gt;missing&lt;/TD&gt;&lt;TD&gt;missing&lt;/TD&gt;&lt;TD&gt;missing&lt;/TD&gt;&lt;TD&gt;missing&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD align="right" height="20"&gt;5&lt;/TD&gt;&lt;TD&gt;bbb&lt;/TD&gt;&lt;TD&gt;ccc&lt;/TD&gt;&lt;TD&gt;missing&lt;/TD&gt;&lt;TD align="right" class="xl63"&gt;3/1/2012&lt;/TD&gt;&lt;TD align="right" class="xl63"&gt;3/16/2012&lt;/TD&gt;&lt;TD class="xl63"&gt;missing&lt;/TD&gt;&lt;TD align="right" class="xl63"&gt;1/1/2012&lt;/TD&gt;&lt;TD align="right" class="xl63"&gt;3/1/2012&lt;/TD&gt;&lt;TD align="right" class="xl63"&gt;3/16/2012&lt;/TD&gt;&lt;TD class="xl63"&gt;missing&lt;/TD&gt;&lt;TD class="xl63"&gt;missing&lt;/TD&gt;&lt;TD class="xl63"&gt;missing&lt;/TD&gt;&lt;TD class="xl63"&gt;missing&lt;/TD&gt;&lt;TD&gt;unknown&lt;/TD&gt;&lt;TD&gt;bbb&lt;/TD&gt;&lt;TD&gt;ccc&lt;/TD&gt;&lt;TD&gt;missing&lt;/TD&gt;&lt;TD&gt;missing&lt;/TD&gt;&lt;TD&gt;missing&lt;/TD&gt;&lt;TD&gt;missing&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD align="right" height="20"&gt;6&lt;/TD&gt;&lt;TD&gt;aaa&lt;/TD&gt;&lt;TD&gt;bbb&lt;/TD&gt;&lt;TD&gt;ccc&lt;/TD&gt;&lt;TD align="right" class="xl63"&gt;1/30/2012&lt;/TD&gt;&lt;TD align="right" class="xl63"&gt;3/1/2012&lt;/TD&gt;&lt;TD align="right" class="xl63"&gt;5/10/2012&lt;/TD&gt;&lt;TD align="right" class="xl63"&gt;1/30/2012&lt;/TD&gt;&lt;TD align="right" class="xl63"&gt;3/1/2012&lt;/TD&gt;&lt;TD align="right" class="xl63"&gt;5/10/2012&lt;/TD&gt;&lt;TD align="right" class="xl63"&gt;6/1/2012&lt;/TD&gt;&lt;TD class="xl63"&gt;missing&lt;/TD&gt;&lt;TD class="xl63"&gt;missing&lt;/TD&gt;&lt;TD class="xl63"&gt;missing&lt;/TD&gt;&lt;TD&gt;aaa&lt;/TD&gt;&lt;TD&gt;bbb&lt;/TD&gt;&lt;TD&gt;ccc&lt;/TD&gt;&lt;TD&gt;ccc&lt;/TD&gt;&lt;TD&gt;missing&lt;/TD&gt;&lt;TD&gt;missing&lt;/TD&gt;&lt;TD&gt;missing&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD align="right" height="20"&gt;7&lt;/TD&gt;&lt;TD&gt;missing&lt;/TD&gt;&lt;TD&gt;missing&lt;/TD&gt;&lt;TD&gt;missing&lt;/TD&gt;&lt;TD&gt;missing&lt;/TD&gt;&lt;TD&gt;missing&lt;/TD&gt;&lt;TD&gt;missing&lt;/TD&gt;&lt;TD&gt;missing&lt;/TD&gt;&lt;TD&gt;missing&lt;/TD&gt;&lt;TD&gt;missing&lt;/TD&gt;&lt;TD&gt;missing&lt;/TD&gt;&lt;TD&gt;missing&lt;/TD&gt;&lt;TD&gt;missing&lt;/TD&gt;&lt;TD&gt;missing&lt;/TD&gt;&lt;TD&gt;missing&lt;/TD&gt;&lt;TD&gt;missing&lt;/TD&gt;&lt;TD&gt;missing&lt;/TD&gt;&lt;TD&gt;missing&lt;/TD&gt;&lt;TD&gt;missing&lt;/TD&gt;&lt;TD&gt;missing&lt;/TD&gt;&lt;TD&gt;missing&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;You are right. I might not know exact how many drugs or tests will be taken. As a start, I made it 3 drugs and 7 tests.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 30 Nov 2012 21:48:58 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Data-Step-Help/m-p/87115#M18595</guid>
      <dc:creator>c8826024</dc:creator>
      <dc:date>2012-11-30T21:48:58Z</dc:date>
    </item>
    <item>
      <title>Re: Data Step Help</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Data-Step-Help/m-p/87116#M18596</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;There is no boundary on the date.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 30 Nov 2012 21:49:58 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Data-Step-Help/m-p/87116#M18596</guid>
      <dc:creator>c8826024</dc:creator>
      <dc:date>2012-11-30T21:49:58Z</dc:date>
    </item>
    <item>
      <title>Re: Data Step Help</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Data-Step-Help/m-p/87117#M18597</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Can we presume that the actual variable list was supposed to be:&lt;/P&gt;&lt;P&gt;patient_i drug1 drug2 drug3 drug1_dt drug2_dt drug3_dt Test_dt1 Test_dt2 Test_dt3&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;and that there wasn't supposed to be a Test_dt4?&amp;nbsp; And, if so, what would you like the resulting table to look like based on that data.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 30 Nov 2012 22:05:54 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Data-Step-Help/m-p/87117#M18597</guid>
      <dc:creator>art297</dc:creator>
      <dc:date>2012-11-30T22:05:54Z</dc:date>
    </item>
    <item>
      <title>Re: Data Step Help</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Data-Step-Help/m-p/87118#M18598</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Is the above how your data actually looks, since you don't know the # of drugs or tests?&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 30 Nov 2012 22:07:49 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Data-Step-Help/m-p/87118#M18598</guid>
      <dc:creator>Reeza</dc:creator>
      <dc:date>2012-11-30T22:07:49Z</dc:date>
    </item>
    <item>
      <title>Re: Data Step Help</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Data-Step-Help/m-p/87119#M18599</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;This gets you relatively close. I didn't do too much testing.&amp;nbsp; You have a 3012 on there I'm assuming should be 2012.&lt;/P&gt;&lt;P&gt;I also renamed drug1_dt to 3 unique names, drug_dt1-drug_dt3 because it was easier to use that way.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;You do need to know your array dimensions to work but since you have the variables that should be easy enough.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data want;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; set have;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; array tst(*) test_dt1-test_dt7;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; array drgs(*) drug1-drug3;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; array drgs_dt(*) drug_dt1-drug_dt3;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; array rsn(*) $ reason1-reason7;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; do i=1 to dim(tst) while (not missing(tst(i)));&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; do j=1 to dim(drgs_dt) while (not missing(drgs_dt(j)));&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; if drgs_dt(j)&amp;lt;= tst(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;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; rsn(i)=drgs(j);&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; end;&lt;/P&gt;&lt;P&gt;&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; if rsn(i)='' then rsn(i)='unknown';&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; end;&lt;/P&gt;&lt;P&gt;run;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 30 Nov 2012 22:29:40 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Data-Step-Help/m-p/87119#M18599</guid>
      <dc:creator>Reeza</dc:creator>
      <dc:date>2012-11-30T22:29:40Z</dc:date>
    </item>
    <item>
      <title>Re: Data Step Help</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Data-Step-Help/m-p/87120#M18600</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Easy.&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;PRE&gt;data have;
infile cards truncover;
input patient_id&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;drug1 $&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;drug2 $&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;drug3 $&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;(drug1_dt&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;drug2_dt&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;drug3_dt&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Test_dt1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Test_dt2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Test_dt3&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Test_dt4&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Test_dt5&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Test_dt6&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Test_dt7) (: mmddyy10.);
format drug1_dt&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;drug2_dt&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;drug3_dt&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Test: mmddyy10.;
cards;
1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;aaa&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;bbb&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;1/2/2012&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;1/4/2012&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;bbb&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.
2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;ccc&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;aaa&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;bbb&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;3/4/2012&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;5/2/2012&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;6/1/2012&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;1/3/2012&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;2/2/3012&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;3/6/2012&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;4/1/2012&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;5/2/2012&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;5/6/2012&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;5/8/2012&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
3&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;aaa&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;1/5/2012&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;1/1/2012&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;1/5/2012&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;2/1/2012&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;3/1/2012&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;4/1/2012&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;5/1/2012&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;6/1/2012
4&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;bbb&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;2/1/2012&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;1/1/2012&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;1/5/2012&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;1/6/2012&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;
5&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;bbb&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;ccc&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;3/1/2012&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;3/16/2012&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;1/1/2012&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;3/1/2012&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;3/16/2012
6&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;aaa&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;bbb&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;ccc&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;1/30/2012&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;3/1/2012&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;5/10/2012&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;1/30/2012&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;3/1/2012&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;5/10/2012&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;6/1/2012
;
run;

data temp;
 set have(keep=patient_id drug1 drug2 &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;drug3 drug1_dt&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;drug2_dt&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;drug3_dt) ;
 do i=coalesce(drug1_dt,'01dec2012'd) to coalesce(drug2_dt,'01dec2012'd)-1 ;
 key=i;
 reason=drug1;
 output;
 end;
 do i=coalesce(drug2_dt,'01dec2012'd) to coalesce(drug3_dt,'01dec2012'd)-1 ;
 key=i;
 reason=drug2;
 output;
 end;
 do i=coalesce(drug3_dt,'01dec2012'd) to '01dec2012'd ;
 key=i;
 reason=drug3;
 output;
 end;
 keep patient_id key reason;
 run;
data want;
if _n_ =1 then do;
 if 0 then set temp;
 declare hash ha(dataset:'temp');
&amp;nbsp; ha.definekey('patient_id','key');
&amp;nbsp; ha.definedata('reason');
&amp;nbsp; ha.definedone();
end;
 set have;
 array t{7} Test_: ;
 array r{7} $ reason1-reason7 ;
 do i=1 to dim(t);
&amp;nbsp; key=t{i};
&amp;nbsp; call missing(reason);
&amp;nbsp;&amp;nbsp; rc=ha.find();
&amp;nbsp; r{i}=reason;
 end;
 drop i key rc reason;
run;
 
&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;Ksharp&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 03 Dec 2012 07:05:03 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Data-Step-Help/m-p/87120#M18600</guid>
      <dc:creator>Ksharp</dc:creator>
      <dc:date>2012-12-03T07:05:03Z</dc:date>
    </item>
    <item>
      <title>Re: Data Step Help</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Data-Step-Help/m-p/87121#M18601</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Work something out based on Fareeza's code:&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 patient_id&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; drug1 $&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; drug2 $&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; drug3 $&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; (drug1_dt&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; drug2_dt&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; drug3_dt&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Test_dt1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Test_dt2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Test_dt3&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Test_dt4&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Test_dt5&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Test_dt6&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Test_dt7) (: mmddyy10.);&lt;/P&gt;&lt;P&gt;format drug1_dt&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; drug2_dt&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; drug3_dt&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Test: mmddyy10.;&lt;/P&gt;&lt;P&gt;cards;&lt;/P&gt;&lt;P&gt;1&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; aaa&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; bbb&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1/2/2012&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1/4/2012&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; bbb&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .&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;2&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ccc&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; aaa&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; bbb&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 3/4/2012&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 5/2/2012&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 6/1/2012&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1/3/2012&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 2/2/2012&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 3/6/2012&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 4/1/2012&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 5/2/2012&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 5/6/2012&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 5/8/2012&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/P&gt;&lt;P&gt;3&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; aaa&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1/5/2012&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1/1/2012&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1/5/2012&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 2/1/2012&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 3/1/2012&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 4/1/2012&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 5/1/2012&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 6/1/2012&lt;/P&gt;&lt;P&gt;4&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; bbb&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 2/1/2012&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1/1/2012&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1/5/2012&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1/6/2012&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/P&gt;&lt;P&gt;5&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; bbb&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ccc&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 3/1/2012&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 3/16/2012&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; .&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1/1/2012&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 3/1/2012&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 3/16/2012&lt;/P&gt;&lt;P&gt;6&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; aaa&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; bbb&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ccc&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1/30/2012&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 3/1/2012&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 5/10/2012&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1/30/2012&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 3/1/2012&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 5/10/2012&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 6/1/2012&lt;/P&gt;&lt;P&gt;7 . . . . . . . . . . . . . . &lt;/P&gt;&lt;P&gt;;&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;&amp;nbsp;&amp;nbsp; set have;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; array tst(*) test_dt1-test_dt7;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; array drgs(*) $ drug1-drug3;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; array drgs_dt(*) drug1_dt drug2_dt drug3_dt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; array rsn(*) $8. reason1-reason7;&lt;/P&gt;&lt;P&gt;do _i=1 to dim(tst);&lt;/P&gt;&lt;P&gt;&amp;nbsp; if missing(tst(_i)) then rsn(_i)='';&lt;/P&gt;&lt;P&gt;&amp;nbsp; else do;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if tst(_i)&amp;lt;min(of drgs_dt(*)) then rsn(_i)='unknown';&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; else do _d=1 to dim(drgs_dt) while (not missing(drgs_dt(_d)));&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; if tst(_i)&amp;lt;drgs_dt(_d) then do;&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; do _k=_d-1 by -1 to 0 while (missing(drgs(_k)));&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; 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; rsn(_i)=drgs(_k); &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; leave;&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; 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; else rsn(_i)=drgs(_d);&lt;/P&gt;&lt;P&gt;&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; &lt;/P&gt;&lt;P&gt;&amp;nbsp; end;&lt;/P&gt;&lt;P&gt;end;&lt;/P&gt;&lt;P&gt;&amp;nbsp; drop _:;&lt;/P&gt;&lt;P&gt;run;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;H6&gt;Haikuo &lt;/H6&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 04 Dec 2012 06:09:18 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Data-Step-Help/m-p/87121#M18601</guid>
      <dc:creator>Haikuo</dc:creator>
      <dc:date>2012-12-04T06:09:18Z</dc:date>
    </item>
    <item>
      <title>Re: Data Step Help</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Data-Step-Help/m-p/87122#M18602</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;&lt;BR /&gt;Thank you very much. I was sick for a couple of days and would test each code.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 04 Dec 2012 20:08:42 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Data-Step-Help/m-p/87122#M18602</guid>
      <dc:creator>c8826024</dc:creator>
      <dc:date>2012-12-04T20:08:42Z</dc:date>
    </item>
    <item>
      <title>Re: Data Step Help</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Data-Step-Help/m-p/87123#M18603</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;My dataset has 7 million records. So Ksharp's solution is not working since the memory is full. Trying Reeza &amp;amp; Hai's solution.....&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 05 Dec 2012 19:10:48 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Data-Step-Help/m-p/87123#M18603</guid>
      <dc:creator>c8826024</dc:creator>
      <dc:date>2012-12-05T19:10:48Z</dc:date>
    </item>
  </channel>
</rss>

