[[Rの備忘録]] RMeCabでファイルを読み込む関数,例えば RMeCabText() で,第一引数に file.exists() 関数を適用している.これだと,文字列をファイルと偽装して読み込ませるtextConnection()関数が使えない.readLines()風に実装を変える必要がある. > readLines function (con = stdin(), n = -1, ok = TRUE, warn = TRUE, encoding = "unknown") { if (is.character(con)) { con <- file(con, "r") on.exit(close(con)) } .Internal(readLines(con, n, ok, warn, encoding)) } <environment: namespace:base> 回避策としては,以下を提案できる td <- tempfile("tmp") write( "私は真面目な学生です。", file = td) # library(RMeCab) test <- RMeCabText(td) test dummy <- c ("私は真面目な学生です。", "彼女は数学専攻の学生です。", "すももももももものうち") dummyList <- list (length (dummy)) td <- tempfile("tmp") for (i in seq(dummy) ){ write( dummy [i] , file = td)# paste(td, "D1", sep="/") ) dummyList [[i]] <- RMeCabText(td) } dummyList unlink (td)