Rでコマンド:「stringi」パッケージを利用したランダムな文字列を生成する一例


たまにランダムな文字列を生成する必要があります。そんな時は「stringi」パッケージのstri_rand_stringsコマンドがオススメです。参考までにデータセットの作成方法例を合わせて紹介します。

windows 10のR version 3.4.2で動作を確認しています。





コマンド例

下記コマンドを実行してください。詳細は各パッケージのヘルプを確認してください。データの作成は「データ例の作成方法1」が早いです。

#パッケージの読込み
#install.packages("stringi")
library("stringi")
#install.packages("tidyverse")
library("tidyverse")

#指定パターンから指定の長さで文字列を作成:stri_rand_stringsコマンド
#生成数を指定:nオプション
#文字列の長さを指定:lengthオプション
#パターンを指定:patternオプション
stri_rand_strings(n = 3, length = 4, pattern = "[a-zあ-んア-ンA-Z0-9]")
[1] "るばGガ" "iニョあ" "tVヲっ"

###データ例の作成#####
n <- 300 #データ例の作成方法1 #tidyr,stringiパッケージとreplaceコマンドを利用 TestData1 <- data_frame(Time = paste0("Group", formatC(1:n, width = 2, flag = "0")), Word = paste0("Word", formatC(1:n, width = 2, flag = "0")), Strings = NA) %>% group_by(Time) %>% spread(key = Word, Strings) %>% replace(is.na(.), stri_rand_strings(n = sum(is.na(.)), length = 4, pattern = "[a-zあ-んア-ンA-Z0-9]")) #データ例の作成方法2 #stringiパッケージとbaseコマンドを利用 TestData2 <- data.frame(paste0("Group", formatC(1:n, width = 2, flag = "0")), matrix(stri_rand_strings(n = n^2, length = 4, pattern = "[a-zあ-んア-ンA-Z0-9]"), n, n)) colnames(TestData2) <- c("Time", paste0("Word", formatC(1:n, width = 2, flag = "0"))) ######## [/code]





作成例


少しでも、あなたのウェブや実験の解析が楽になりますように!!

スポンサードリンク

関連コンテンツ


スポンサードリンク