簡體   English   中英

R lang:首字母大寫

[英]R lang: First letter to upper case

我正在嘗試將列中的所有數據轉換為“首字母大寫”以下代碼將所有數據替換為第一行,

simpleCap <- function(x) {
  s <- strsplit(x, " ")[[1]]
  paste(toupper(substring(s, 1,1)), substring(s, 2),
        sep="", collapse=" ")
}
allDestination$Categories <- simpleCap(allDestination$Categories)

樣本數據

japan/okinawa/okinawa-other-islands
japan/hokkaido/hokkaido-north/furano-biei-tomamu
japan/hokkaido/hokkaido-north/asahikawa-sounkyo
japan/hokkaido/hokkaido-north/wakkanai-rishiri-rebun
japan/hokkaido/hokkaido-east/kushiro-akan-nemuro

功能代碼示例從大寫字母到大寫字母

如何使函數成為“列兼容”而不是僅替換單個值?

您可以在后面使用否定的外觀,以大寫每個以非字母開頭或在句子開頭的字母,例如(?:^|(?<=\\\\W))(.)或也可以認為將其大寫而不是字母開頭的字母,即(?<!\\\\w)(.)

gsub("(?<!\\w)(.)","\\U\\1",dat1$V1,perl = TRUE) 

[1] "Japan/Okinawa/Okinawa-Other-Islands"                 
[2] "Japan/Hokkaido/Hokkaido-North/Furano-Biei-Tomamu"    
[3] "Japan/Hokkaido/Hokkaido-North/Asahikawa-Sounkyo"     
[4] "Japan/Hokkaido/Hokkaido-North/Wakkanai-Rishiri-Rebun"
[5] "Japan/Hokkaido/Hokkaido-East/Kushiro-Akan-Nemuro"    

數據:

 dat1=read.table(strip=T,text="japan/okinawa/okinawa-other-islands
       japan/hokkaido/hokkaido-north/furano-biei-tomamu
       japan/hokkaido/hokkaido-north/asahikawa-sounkyo
       japan/hokkaido/hokkaido-north/wakkanai-rishiri-rebun
       japan/hokkaido/hokkaido-east/kushiro-akan-nemuro")

Tidyverse答案-此stringr :: str_to_title有一個專門的功能

library(tidyverse)

數據示例:

data_1 <- 
  data.frame("japan/okinawa/okinawa-other-islands",
             "japan/hokkaido/hokkaido-north/furano-biei-tomamu",
             "japan/hokkaido/hokkaido-north/asahikawa-sounkyo",
             "japan/hokkaido/hokkaido-north/wakkanai-rishiri-rebun",
             "japan/hokkaido/hokkaido-east/kushiro-akan-nemuro",
             stringsAsFactors=FALSE)

工作功能:

> str_to_title(data_1)

[1] "Japan/Okinawa/Okinawa-Other-Islands"                 
[2] "Japan/Hokkaido/Hokkaido-North/Furano-Biei-Tomamu"    
[3] "Japan/Hokkaido/Hokkaido-North/Asahikawa-Sounkyo"     
[4] "Japan/Hokkaido/Hokkaido-North/Wakkanai-Rishiri-Rebun"
[5] "Japan/Hokkaido/Hokkaido-East/Kushiro-Akan-Nemuro"  

https://stringr.tidyverse.org/reference/case.html

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM