Rで解析:アルファベットの操作にに便利です。「snakecase」パッケージ

Rの解析に役に立つ記事
スポンサーリンク

アルファベットの大文字、小文字の変換や前後へ文字を付与するのに便利なパッケージの紹介です。

参考までに文字列操作の記事を紹介します。

・Rで解析:文字列操作と検索「grep」と置換「gsub」コマンドの紹介
 https://www.karada-good.net/analyticsr/r-97

パッケージバージョンは0.11.1。実行コマンドはwindows 11のR version 4.1.2で確認しています。


スポンサーリンク

パッケージのインストール

下記コマンドを実行してください。

#パッケージのインストール
install.packages("snakecase")

コマンドの紹介

詳細はコマンド、パッケージのヘルプを確認してください。

#パッケージの読込み
library("snakecase")

###データ例の作成#####
#大文字,全て小文字空白,全て小文字アンダーバー
TestText <- c("KARADA-GOOD", "ka ra da.good", "karada_good")
########


#文字を文字列の前後に追加:to_any_caseコマンド;prefix,postfixオプション
to_any_case(TestText, prefix = "USER://", postfix = ".exe")
[1] "USER://karada_good.exe"   "USER://ka_ra_da_good.exe" "USER://karada_good.exe" 

#条件を指定して文字列を変換:to_any_caseコマンド;ToCaseオプション
#変換設定:以下が設定可能
ToCase <- c("snake", "small_camel", "big_camel", "screaming_snake",
            "parsed", "mixed", "lower_upper", "upper_lower",
            "all_caps", "lower_camel", "upper_camel", "none")
for(i in seq(ToCase)){
  
  cat(paste0(ToCase[i], ":",
             to_any_case(TestText, case = ToCase[i],
                         prefix = "https://", postfix = ".net"), "\n"))
  
}
#結果
snake:https://karada_good.net
snake:https://ka_ra_da_good.net
snake:https://karada_good.net
small_camel:https://karadaGood.net
small_camel:https://kaRaDaGood.net
small_camel:https://karadaGood.net
big_camel:https://KaradaGood.net
big_camel:https://KaRaDaGood.net
big_camel:https://KaradaGood.net
screaming_snake:https://KARADA_GOOD.net
screaming_snake:https://KA_RA_DA_GOOD.net
screaming_snake:https://KARADA_GOOD.net
parsed:https://KARADA_GOOD.net
parsed:https://ka_ra_da_good.net
parsed:https://karada_good.net
mixed:https://Karada_Good.net
mixed:https://ka_ra_da_good.net
mixed:https://karada_good.net
lower_upper:https://karadaGOOD.net
lower_upper:https://kaRAdaGOOD.net
lower_upper:https://karadaGOOD.net
upper_lower:https://KARADAgood.net
upper_lower:https://KAraDAgood.net
upper_lower:https://KARADAgood.net
all_caps:https://KARADA_GOOD.net
all_caps:https://KA_RA_DA_GOOD.net
all_caps:https://KARADA_GOOD.net
lower_camel:https://karadaGood.net
lower_camel:https://kaRaDaGood.net
lower_camel:https://karadaGood.net
upper_camel:https://KaradaGood.net
upper_camel:https://KaRaDaGood.net
upper_camel:https://KaradaGood.net
none:https://KARADA_GOOD.net
none:https://ka_ra_da_good.net
none:https://karada_good.net

#個別に適応コマンド一覧
to_snake_case(TestText)
[1] "karada_-_good"   "ka_ra_da_._good" "karada_good"
to_screaming_snake_case(TestText)
[1] "KARADA_-_GOOD"   "KA_RA_DA_._GOOD" "KARADA_GOOD"
to_parsed_case(TestText)
[1] "KARADA_-_GOOD"   "ka_ra_da_._good" "karada_good"
to_mixed_case(TestText)
[1] "Karada_-_Good"   "ka_ra_da_._good" "karada_good"
to_lower_upper_case(TestText)
[1] "karada-GOOD" "kaRAda.GOOD" "karadaGOOD"
to_upper_lower_case(TestText)
[1] "KARADA-good" "KAraDA.good" "KARADAgood"

少しでも、あなたの解析が楽になりますように!!

タイトルとURLをコピーしました