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")
########


#&#25991;&#23383;&#12434;&#25991;&#23383;&#21015;&#12398;&#21069;&#24460;&#12395;&#36861;&#21152;:to_any_case&#12467;&#12510;&#12531;&#12489;;prefix,postfix&#12458;&#12503;&#12471;&#12519;&#12531;
to_any_case(TestText, prefix = "USER://", postfix = ".exe")
[1] "USER://karada_good.exe"   "USER://ka_ra_da_good.exe" "USER://karada_good.exe" 

#&#26465;&#20214;&#12434;&#25351;&#23450;&#12375;&#12390;&#25991;&#23383;&#21015;&#12434;&#22793;&#25563;:to_any_case&#12467;&#12510;&#12531;&#12489;;ToCase&#12458;&#12503;&#12471;&#12519;&#12531;
#&#22793;&#25563;&#35373;&#23450;:&#20197;&#19979;&#12364;&#35373;&#23450;&#21487;&#33021;
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"))
  
}
#&#32080;&#26524;
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

#&#20491;&#21029;&#12395;&#36969;&#24540;&#12467;&#12510;&#12531;&#12489;&#19968;&#35239;
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をコピーしました