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 😄
Are you ready for the spotlight? We're accepting content ideas for SAS Innovate 2025 to be held May 6-9 in Orlando, FL. The call is open until September 25. Read more here about why you should contribute and what is in it for you!
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.