[英]tm Corpus: tm_map function does not change the corpus
我是R语言中tm包的新手。我试图使用tm_map
函数创建文档项矩阵,但是显然传递给tm_map(Corpus, function, lazy=TRUE)
函数不适用于语料库。 具体而言,文档不会转换为小写。 R Studio不显示任何错误或警告。 我在这里弄乱了吗? 这可能是一个必然的问题吗?
library(tm)
setwd("...")
filenames <- list.files(getwd(), pattern="*.txt")
files <- lapply(filenames, readLines)
docs <- Corpus(VectorSource(files))
writeLines(as.character(docs[[30]]))
docs <- tm_map(docs, function(x) iconv(enc2utf8(x$content), sub = ""), lazy=TRUE)
#to lower case
docs <- tm_map(docs, content_transformer(tolower), lazy=TRUE)
writeLines(as.character(docs[[30]]))
感谢您的任何建议!
这是一个简单的修复。 在iconv(...)之前将代码转换为小写。
这有效:
library(tm)
setwd("")
# Read in Files
filenames <- list.files(getwd(), pattern="*.txt")
files <- lapply(filenames, readLines)
docs <- Corpus(VectorSource(files))
writeLines(as.character(docs[[30]]))
# Lower Case
docs <- tm_map(docs, content_transformer(tolower), lazy=TRUE)
# Convert
docs <- tm_map(docs, function(x) iconv(enc2utf8(x$content), sub = ""))
writeLines(as.character(docs[[30]]))
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.