<?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: Unconcatenate dose from variable in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/Unconcatenate-dose-from-variable/m-p/711274#M219083</link>
    <description>&lt;P&gt;Thanks! It worked but for some observations, as seen below, I am getting a missing value for the extracted dose.&lt;/P&gt;
&lt;P&gt;7 injections 25 units each, injected into spinal area&lt;/P&gt;
&lt;P&gt;quantity:155 units;other frequency:1 set of injection;?&lt;/P&gt;
&lt;P&gt;inject 200 unit every 3 mo intra-muscularly&lt;/P&gt;
&lt;P&gt;frequency - 155 units every 3 months i.m?recent&lt;/P&gt;
&lt;P&gt;dose quantity: 16, dose unit: units&lt;/P&gt;
&lt;P&gt;dose - 400u?frequency q90ds&lt;/P&gt;
&lt;P&gt;? quantity:155 iu international unit(s);other route:injection?&lt;/P&gt;</description>
    <pubDate>Wed, 13 Jan 2021 20:42:01 GMT</pubDate>
    <dc:creator>ama220</dc:creator>
    <dc:date>2021-01-13T20:42:01Z</dc:date>
    <item>
      <title>Unconcatenate dose from variable</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Unconcatenate-dose-from-variable/m-p/711174#M219023</link>
      <description>&lt;P&gt;Hello,&lt;/P&gt;&lt;P&gt;I am having trouble extracting the dose and unit information from the below character variable and appreciate any help.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;data have:&lt;/P&gt;&lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;dose_all&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;125 units, single&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;200 units&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;240 iu, single&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;25 units prn im&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;? other frequency:q 90 days;?&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;100 u&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;300 iu, single&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;400 units once im&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;between 100 to 200 units, single&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Data want (only dose, unit) are most important to extract.&amp;nbsp;&lt;/P&gt;&lt;TABLE&gt;&lt;TBODY&gt;&lt;TR&gt;&lt;TD&gt;dose_all&lt;/TD&gt;&lt;TD&gt;dose&lt;/TD&gt;&lt;TD&gt;unit&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;x1&lt;/TD&gt;&lt;TD&gt;x2&lt;/TD&gt;&lt;TD&gt;x3&lt;/TD&gt;&lt;TD&gt;x3&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;125 units, single&lt;/TD&gt;&lt;TD&gt;125&lt;/TD&gt;&lt;TD&gt;units&lt;/TD&gt;&lt;TD&gt;single&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;200 units&lt;/TD&gt;&lt;TD&gt;200&lt;/TD&gt;&lt;TD&gt;units&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;240 iu, single&lt;/TD&gt;&lt;TD&gt;240&lt;/TD&gt;&lt;TD&gt;iu&lt;/TD&gt;&lt;TD&gt;single&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;25 units prn im&lt;/TD&gt;&lt;TD&gt;25&lt;/TD&gt;&lt;TD&gt;units&lt;/TD&gt;&lt;TD&gt;prn&lt;/TD&gt;&lt;TD&gt;im&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;? other frequency:q 90 days;?&lt;/TD&gt;&lt;TD&gt;?&lt;/TD&gt;&lt;TD&gt;other&lt;/TD&gt;&lt;TD&gt;frequency:q&lt;/TD&gt;&lt;TD&gt;90&lt;/TD&gt;&lt;TD&gt;days;?&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;100 u&lt;/TD&gt;&lt;TD&gt;100&lt;/TD&gt;&lt;TD&gt;u&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;300 iu, single&lt;/TD&gt;&lt;TD&gt;300&lt;/TD&gt;&lt;TD&gt;iu&lt;/TD&gt;&lt;TD&gt;single&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;400 units once im&lt;/TD&gt;&lt;TD&gt;400&lt;/TD&gt;&lt;TD&gt;units&lt;/TD&gt;&lt;TD&gt;once&lt;/TD&gt;&lt;TD&gt;im&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;TR&gt;&lt;TD&gt;between 100 to 200 units, single&lt;/TD&gt;&lt;TD&gt;between&amp;nbsp;100 to 200&lt;/TD&gt;&lt;TD&gt;units&lt;/TD&gt;&lt;TD&gt;single&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;TD&gt;&amp;nbsp;&lt;/TD&gt;&lt;/TR&gt;&lt;/TBODY&gt;&lt;/TABLE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thanks&lt;/P&gt;</description>
      <pubDate>Wed, 13 Jan 2021 16:13:48 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Unconcatenate-dose-from-variable/m-p/711174#M219023</guid>
      <dc:creator>ama220</dc:creator>
      <dc:date>2021-01-13T16:13:48Z</dc:date>
    </item>
    <item>
      <title>Re: Unconcatenate dose from variable</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Unconcatenate-dose-from-variable/m-p/711179#M219025</link>
      <description>&lt;P&gt;If dose is the most important..&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data have;
input dose_all $50.;
datalines4;
125 units, single               
200 units                       
240 iu, single                  
25 units prn im                 
? other frequency:q 90 days;?   
100 u                           
300 iu, single                  
400 units once im               
between 100 to 200 units, single
;;;;

data want;
   set have;
   dose = substr(dose_all, 1, min(find(dose_all, "?"), prxmatch("/\d(?!.*\d)/", dose_all)));
run;&lt;/CODE&gt;&lt;/PRE&gt;</description>
      <pubDate>Wed, 13 Jan 2021 16:25:07 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Unconcatenate-dose-from-variable/m-p/711179#M219025</guid>
      <dc:creator>PeterClemmensen</dc:creator>
      <dc:date>2021-01-13T16:25:07Z</dc:date>
    </item>
    <item>
      <title>Re: Unconcatenate dose from variable</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Unconcatenate-dose-from-variable/m-p/711249#M219069</link>
      <description>&lt;P&gt;I would just take the beginning of the string up until you see a character that could not be part of a number.&lt;/P&gt;
&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;data have;
  input dose_all $50.;
cards4;
125 units, single
200 units
240 iu, single
25 units prn im
? other frequency:q 90 days;?
100 u
300 iu, single
400 units once im
between 100 to 200 units, single
1,200 mg
;;;;

data want ;
  set have;
  loc = verify(dose_all,'0123456789.,');
  if loc&amp;gt;1 then do;
     dose=input(substr(dose_all,1,loc-1),??comma32.);
     units=substr(dose_all,loc);
  end;
  drop loc;
run;
&lt;/CODE&gt;&lt;/PRE&gt;
&lt;PRE&gt;Obs    dose_all                            dose    units

  1    125 units, single                    125    units, single
  2    200 units                            200    units
  3    240 iu, single                       240    iu, single
  4    25 units prn im                       25    units prn im
  5    ? other frequency:q 90 days;?          .
  6    100 u                                100    u
  7    300 iu, single                       300    iu, single
  8    400 units once im                    400    units once im
  9    between 100 to 200 units, single       .
 10    1,200 mg                            1200    mg
&lt;/PRE&gt;</description>
      <pubDate>Wed, 13 Jan 2021 18:47:58 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Unconcatenate-dose-from-variable/m-p/711249#M219069</guid>
      <dc:creator>Tom</dc:creator>
      <dc:date>2021-01-13T18:47:58Z</dc:date>
    </item>
    <item>
      <title>Re: Unconcatenate dose from variable</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Unconcatenate-dose-from-variable/m-p/711274#M219083</link>
      <description>&lt;P&gt;Thanks! It worked but for some observations, as seen below, I am getting a missing value for the extracted dose.&lt;/P&gt;
&lt;P&gt;7 injections 25 units each, injected into spinal area&lt;/P&gt;
&lt;P&gt;quantity:155 units;other frequency:1 set of injection;?&lt;/P&gt;
&lt;P&gt;inject 200 unit every 3 mo intra-muscularly&lt;/P&gt;
&lt;P&gt;frequency - 155 units every 3 months i.m?recent&lt;/P&gt;
&lt;P&gt;dose quantity: 16, dose unit: units&lt;/P&gt;
&lt;P&gt;dose - 400u?frequency q90ds&lt;/P&gt;
&lt;P&gt;? quantity:155 iu international unit(s);other route:injection?&lt;/P&gt;</description>
      <pubDate>Wed, 13 Jan 2021 20:42:01 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Unconcatenate-dose-from-variable/m-p/711274#M219083</guid>
      <dc:creator>ama220</dc:creator>
      <dc:date>2021-01-13T20:42:01Z</dc:date>
    </item>
    <item>
      <title>Re: Unconcatenate dose from variable</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Unconcatenate-dose-from-variable/m-p/711276#M219085</link>
      <description>&lt;P&gt;Thanks for responding. There was an error in the log:&amp;nbsp;&lt;BR /&gt;NOTE: Invalid third argument to function SUBSTR at line 566 column 11.&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 13 Jan 2021 20:46:37 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Unconcatenate-dose-from-variable/m-p/711276#M219085</guid>
      <dc:creator>ama220</dc:creator>
      <dc:date>2021-01-13T20:46:37Z</dc:date>
    </item>
    <item>
      <title>Re: Unconcatenate dose from variable</title>
      <link>https://communities.sas.com/t5/SAS-Programming/Unconcatenate-dose-from-variable/m-p/711281#M219089</link>
      <description>&lt;P&gt;Welcome to the world of data cleaning.&lt;/P&gt;
&lt;P&gt;Short of getting into natural language processing I am not sure how much more effort you really want to go with trying to automate this.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;You might just want to build these special cases into a lookup file (or FORMAT).&lt;/P&gt;</description>
      <pubDate>Wed, 13 Jan 2021 20:53:48 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/Unconcatenate-dose-from-variable/m-p/711281#M219089</guid>
      <dc:creator>Tom</dc:creator>
      <dc:date>2021-01-13T20:53:48Z</dc:date>
    </item>
  </channel>
</rss>

