Hi Community,
Here I have a sample dataset, I want to extract the gram/milligram values from the string.
I tried up with compress method, but even I need more efficient step to extract in particular format.
data have;
input drug1$30.;
cards;
metformin 500MG
Glycopride 250mg
GLYCOMET 1GM
gLYCOMET 1GM
GLYCIPHAGE 850MG
GLYCIPHAGE 500mg
;
run;
data want;
set have;
d1 = compress(drug1,'1234567890mgMG','k');
run;
SAS Output
metformin 500MG | mm500MG |
Glycopride 250mg | G250mg |
GLYCOMET 1GM | GM1GM |
gLYCOMET 1GM | gM1GM |
GLYCIPHAGE 850MG | GG850MG |
GLYCIPHAGE 500mg | GG500mg |
Expected Output
500MG
250mg
1GM
850MG
500mg
Please suggest the code which extract the output in the given format.
NOTE : To more simpler, Atleast let me know how to remove the characters in front of numeric value.
Thanks in advance!
Hi,
data want(keep = unit);
set have;
unit = substr(drug1,anydigit(drug1));
run;
Regards,
Manoj
Hi,
data want(keep = unit);
set have;
unit = substr(drug1,anydigit(drug1));
run;
Regards,
Manoj
Don't miss out on SAS Innovate - Register now for the FREE Livestream!
Can't make it to Vegas? No problem! Watch our general sessions LIVE or on-demand starting April 17th. Hear from SAS execs, best-selling author Adam Grant, Hot Ones host Sean Evans, top tech journalist Kara Swisher, AI expert Cassie Kozyrkov, and the mind-blowing dance crew iLuminate! Plus, get access to over 20 breakout sessions.
Learn how use the CAT functions in SAS to join values from multiple variables into a single value.
Find more tutorials on the SAS Users YouTube channel.