我一直在使用 tm 包来运行一些文本分析。我的问题是创建一个包含单词及其频率的列表
library(tm)
library(RWeka)
txt <- read.csv("HW.csv",header=T)
df <- do.call("rbind", lapply(txt, as.data.frame))
names(df) <- "text"
myCorpus <- Corpus(VectorSource(df$text))
myStopwords <- c(stopwords('english'),"originally", "posted")
myCorpus <- tm_map(myCorpus, removeWords, myStopwords)
#building the TDM
btm <- function(x) NGramTokenizer(x, Weka_control(min = 3, max = 3))
myTdm <- TermDocumentMatrix(myCorpus, control = list(tokenize = btm))
我通常使用以下代码生成频率范围内的单词列表
frq1 <- findFreqTerms(myTdm, lowfreq=50)
有什么方法可以自动执行此操作,以便我们获得包含所有单词及其频率的数据框?
我面临的另一个问题是将术语文档矩阵转换为数据框。当我处理大量数据样本时,我遇到了内存错误。有一个简单的解决方案吗?