假设我有一个两个单词的字符串,我想将它们都大写。
name <- c("zip code", "state", "final count")
该Hmisc包具有capitalize将第一个单词大写的功能,但我不确定如何将第二个单词大写。的帮助页面capitalize不建议它可以执行该任务。
Hmisc
capitalize
library(Hmisc) capitalize(name) # [1] "Zip code" "State" "Final count"
我想得到:
c("Zip Code", "State", "Final Count")
三字串呢:
name2 <- c("I like pizza")
执行大写的基本 R 函数是toupper(x). 从帮助文件中?toupper有这个功能可以满足您的需求:
toupper(x)
?toupper
simpleCap <- function(x) { s <- strsplit(x, " ")[[1]] paste(toupper(substring(s, 1,1)), substring(s, 2), sep="", collapse=" ") } name <- c("zip code", "state", "final count") sapply(name, simpleCap) zip code state final count "Zip Code" "State" "Final Count"
编辑 这适用于任何字符串,无论字数如何:
simpleCap("I like pizza a lot") [1] "I Like Pizza A Lot"