tm Corpus: tm_map 函数不改变语料库
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]]))
我是 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]]))