dataframe - R: How to uppercase first letter of each word split by semicolon in data frame column? -


suppose have dataframe df.

> df <- data.frame(disease = c('disease entry1; disease entry2', 'disease entry4','disease entry5; disease entry6'), id = c(1,2,3)) > df                          disease id 1 disease entry1; disease entry2  1 2                 disease entry4  2 3 disease entry5; disease entry6  3 

how can manipulate each disease entry lowercase except first letter each entry? i.e.

> df                          disease id 1 disease entry1; disease entry2  1 2                 disease entry4  2 3 disease entry5; disease entry6  3 

i assume take use of tolower function somehow, how take account semicolons?

you can firstly convert letters lower case, , use gsub convert letters @ bos or after ; upper case using reference \\1 \\u:

df$disease <- gsub("(?<=^|; )([a-z])", "\\u\\1", tolower(df$disease), perl = t)  df #                         disease id #1 disease entry1; disease entry2  1 #2                 disease entry4  2 #3 disease entry5; disease entry6  3 

Comments

Popular posts from this blog

android - InAppBilling registering BroadcastReceiver in AndroidManifest -

python Tkinter Capturing keyboard events save as one single string -

sql server - Why does Linq-to-SQL add unnecessary COUNT()? -