I am trying to find "Paclitaxel" in the string, however I could not find it using index , and , findw , function even I only keep aplphbet and "," . However, I can find "carboplatin" . Any solution ? Thank you very much!
test = compress(lowcase(regimen),'abcdefghijklmnopqrstuvwxyz,','k') ;
if index(test, 'paclitaxel') = 1 then pre_TAXANE = 1 ;
regimen
Afatinib,Carboplatin,Paclitaxel | 1 | . | . |
Afatinib,Carboplatin,Paclitaxel Protein-Bound | 1 | . | . |
@Astounding doesn't the previous statement lowcase everything?
@Ivy review the modifiers so that you can avoid listing all the alphabet in your list. I think its 'ka' to keep all alphabetic values.
INDEX returns the position, not a 0/1. Therefore your test of =1 will only be true if the word is at the exact beginning. Change your condition to test if it’s >0 instead.
@Ivy wrote:
I am trying to find "Paclitaxel" in the string, however I could not find it using index , and , findw , function even I only keep aplphbet and "," . However, I can find "carboplatin" . Any solution ? Thank you very much!
test = compress(lowcase(regimen),'abcdefghijklmnopqrstuvwxyz,','k') ;
if index(test, 'paclitaxel') = 1 then pre_TAXANE = 1 ;
regimen
Afatinib,Carboplatin,Paclitaxel 1 . . Afatinib,Carboplatin,Paclitaxel Protein-Bound 1 . .
There's another good reason that SAS can't find the string ... it isn't there. Character strings in SAS are case-sensitive. So you should be checking:
if index(lowcase(test), 'paclitaxel') then pre_TAXANE = 1 ;
The IF condition will be true for values that are neither 0 nor missing.
***************** EDITED:
@Reeza you're right. My bad. LOWCASE is already built into the logic. Where's that coffee?
@Astounding doesn't the previous statement lowcase everything?
@Ivy review the modifiers so that you can avoid listing all the alphabet in your list. I think its 'ka' to keep all alphabetic values.
Thank you both very much for the quick response!
It is a bless that your guys here. 🙂
Have a great day !
Coffee? I'm about to go to bed and I'm on the West Coast 😄
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.