<?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: concatenating all previous row in a new variable in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/concatenating-all-previous-row-in-a-new-variable/m-p/824239#M325488</link>
    <description>&lt;P&gt;Thank you! Sometimes people use the word "succulently" to describe the results of my cooking; I have never had anyone describe my SAS code as being written "succulently", but I accept the compliment!&lt;/P&gt;</description>
    <pubDate>Tue, 19 Jul 2022 21:08:08 GMT</pubDate>
    <dc:creator>PaigeMiller</dc:creator>
    <dc:date>2022-07-19T21:08:08Z</dc:date>
    <item>
      <title>concatenating all previous row in a new variable</title>
      <link>https://communities.sas.com/t5/SAS-Programming/concatenating-all-previous-row-in-a-new-variable/m-p/824219#M325472</link>
      <description>&lt;P&gt;I would like to create a method to check if a patient switch a medication (&lt;EM&gt;med_switch&lt;/EM&gt;) or start a new medication that he/she had never had before (&lt;EM&gt;new_med&lt;/EM&gt;) by comparing with the list of previous medication (any medication that the patient used before this current medication,&amp;nbsp;&lt;EM&gt;list_of_previous_med&lt;/EM&gt;).&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;TABLE border="1"&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;subjid&lt;/TD&gt;&lt;TD&gt;year&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;prescription&lt;/TD&gt;&lt;TD&gt;&lt;EM&gt;med_switch&lt;/EM&gt;&lt;/TD&gt;&lt;TD&gt;&lt;EM&gt;list_of_previous_med&lt;/EM&gt;&lt;/TD&gt;&lt;TD&gt;&lt;EM&gt;new_med&lt;/EM&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;a001&lt;/TD&gt;&lt;TD&gt;2001&lt;/TD&gt;&lt;TD&gt;med1&lt;/TD&gt;&lt;TD&gt;&lt;EM&gt;-&lt;/EM&gt;&lt;/TD&gt;&lt;TD&gt;&lt;EM&gt;&amp;nbsp;-&lt;/EM&gt;&lt;/TD&gt;&lt;TD&gt;&lt;EM&gt;yes&lt;/EM&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;a001&lt;/TD&gt;&lt;TD&gt;2002&lt;/TD&gt;&lt;TD&gt;med1&lt;/TD&gt;&lt;TD&gt;&lt;EM&gt;no&lt;/EM&gt;&lt;/TD&gt;&lt;TD&gt;&lt;EM&gt;med1&lt;/EM&gt;&lt;/TD&gt;&lt;TD&gt;&lt;EM&gt;no&lt;/EM&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;a001&lt;/TD&gt;&lt;TD&gt;2003&lt;/TD&gt;&lt;TD&gt;med2&lt;/TD&gt;&lt;TD&gt;&lt;EM&gt;yes&lt;/EM&gt;&lt;/TD&gt;&lt;TD&gt;&lt;EM&gt;med1&lt;/EM&gt;&lt;/TD&gt;&lt;TD&gt;&lt;EM&gt;yes&lt;/EM&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;a001&lt;/TD&gt;&lt;TD&gt;2003&lt;/TD&gt;&lt;TD&gt;med2&lt;/TD&gt;&lt;TD&gt;&lt;EM&gt;no&lt;/EM&gt;&lt;/TD&gt;&lt;TD&gt;&lt;EM&gt;med1,med2&lt;/EM&gt;&lt;/TD&gt;&lt;TD&gt;&lt;EM&gt;no&lt;/EM&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;a002&lt;/TD&gt;&lt;TD&gt;2001&lt;/TD&gt;&lt;TD&gt;med1&lt;/TD&gt;&lt;TD&gt;&lt;EM&gt;-&lt;/EM&gt;&lt;/TD&gt;&lt;TD&gt;&lt;EM&gt;-&lt;/EM&gt;&lt;/TD&gt;&lt;TD&gt;&lt;EM&gt;yes&lt;/EM&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;a002&lt;/TD&gt;&lt;TD&gt;2002&lt;/TD&gt;&lt;TD&gt;med2&lt;/TD&gt;&lt;TD&gt;&lt;EM&gt;yes&lt;/EM&gt;&lt;/TD&gt;&lt;TD&gt;&lt;EM&gt;med1&lt;/EM&gt;&lt;/TD&gt;&lt;TD&gt;&lt;EM&gt;yes&lt;/EM&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;a002&lt;/TD&gt;&lt;TD&gt;2003&lt;/TD&gt;&lt;TD&gt;med1&lt;/TD&gt;&lt;TD&gt;&lt;EM&gt;yes&lt;/EM&gt;&lt;/TD&gt;&lt;TD&gt;&lt;EM&gt;med1, med2&lt;/EM&gt;&lt;/TD&gt;&lt;TD&gt;&lt;EM&gt;no&lt;/EM&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;a002&lt;/TD&gt;&lt;TD&gt;2004&lt;/TD&gt;&lt;TD&gt;med3&lt;/TD&gt;&lt;TD&gt;&lt;EM&gt;yes&lt;/EM&gt;&lt;/TD&gt;&lt;TD&gt;&lt;EM&gt;med1, med2&lt;/EM&gt;&lt;/TD&gt;&lt;TD&gt;&lt;EM&gt;yes&lt;/EM&gt;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I want to create the new variables in &lt;EM&gt;italic,&amp;nbsp;&lt;/EM&gt;however, I have no idea on how to do that on SAS.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I have been playing around with lag() and retain() function to compare rows of variables, however, I kept getting errors when I try to do it by subjid.&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I hope the community can help.&amp;nbsp;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Tue, 19 Jul 2022 18:51:56 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/concatenating-all-previous-row-in-a-new-variable/m-p/824219#M325472</guid>
      <dc:creator>sasbee</dc:creator>
      <dc:date>2022-07-19T18:51:56Z</dc:date>
    </item>
    <item>
      <title>Re: concatenating all previous row in a new variable</title>
      <link>https://communities.sas.com/t5/SAS-Programming/concatenating-all-previous-row-in-a-new-variable/m-p/824226#M325478</link>
      <description>&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data want;
    set have;
    by subjid;
    length med_switch $ 3 commalist $ 256;
    retain commalist;
    prev_med=lag(prescription);
    if first.subjid then prev_med=' '; 
    if not first.subjid and prescription^=prev_med then  med_switch='yes';
    else med_switch='no';
    if first.subjid then commalist=' ';
    else commalist=cats(prev_med,',',commalist);
    if find(commalist,prescription,'it')&amp;gt;0 then new_med=0;
    else new_med=1;
    drop commalist prev_med;
run;&lt;/CODE&gt;&lt;/PRE&gt;</description>
      <pubDate>Tue, 19 Jul 2022 19:29:57 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/concatenating-all-previous-row-in-a-new-variable/m-p/824226#M325478</guid>
      <dc:creator>PaigeMiller</dc:creator>
      <dc:date>2022-07-19T19:29:57Z</dc:date>
    </item>
    <item>
      <title>Re: concatenating all previous row in a new variable</title>
      <link>https://communities.sas.com/t5/SAS-Programming/concatenating-all-previous-row-in-a-new-variable/m-p/824230#M325481</link>
      <description>&lt;P&gt;&lt;a href="https://communities.sas.com/t5/user/viewprofilepage/user-id/10892"&gt;@PaigeMiller&lt;/a&gt;&amp;nbsp; THANK YOU SO MUCH!!!!! This does exactly what I was hoping for. You put together the code so beautifully and succulently. I learned so much from the code.&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Tue, 19 Jul 2022 20:09:55 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/concatenating-all-previous-row-in-a-new-variable/m-p/824230#M325481</guid>
      <dc:creator>sasbee</dc:creator>
      <dc:date>2022-07-19T20:09:55Z</dc:date>
    </item>
    <item>
      <title>Re: concatenating all previous row in a new variable</title>
      <link>https://communities.sas.com/t5/SAS-Programming/concatenating-all-previous-row-in-a-new-variable/m-p/824239#M325488</link>
      <description>&lt;P&gt;Thank you! Sometimes people use the word "succulently" to describe the results of my cooking; I have never had anyone describe my SAS code as being written "succulently", but I accept the compliment!&lt;/P&gt;</description>
      <pubDate>Tue, 19 Jul 2022 21:08:08 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/concatenating-all-previous-row-in-a-new-variable/m-p/824239#M325488</guid>
      <dc:creator>PaigeMiller</dc:creator>
      <dc:date>2022-07-19T21:08:08Z</dc:date>
    </item>
  </channel>
</rss>

