R:如何在数据框列中用分号分隔每个单词的大写首字母?

时间:2017-08-14 17:48:53

标签: r dataframe lowercase

假设我有一个数据框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

我如何操纵它,以便除了每个条目的第一个字母外,每个疾病条目都是小写的?即。

> df
                         Disease ID
1 Disease entry1; Disease entry2  1
2                 Disease entry4  2
3 Disease entry5; Disease entry6  3

我假设我会以某种方式使用tolower函数,但如何考虑分号?

1 个答案:

答案 0 :(得分:3)

您可以先将所有字母转换为小写字母,然后使用gsub将字母转换为BOS或;转换为大写字母后使用后引用\\1和{ {1}}:

\\U