首先,我道歉要重复2013年8月1日提出的问题。但是我不能对最初的问题发表评论,因为我必须有50个声誉才能评论我没有。可以从R text mining documents from CSV file (one row per doc)检索原始问题。
我正在尝试使用R中的tm包,并且有一个文件摘要的CSV文件,每行都是不同的摘要。我希望每一行都是语料库中的不同文档。我的数据集中有2,000行。
我按照Ben先前的建议运行以下代码:
# change this file location to suit your machine
file_loc <- "C:/Users/.../docs.csv"
# change TRUE to FALSE if you have no column headings in the CSV
x <- read.csv(file_loc, header = TRUE)
require(tm)
corp <- Corpus(DataframeSource(x))
docs <- DocumentTermMatrix(corp)
当我上课时:
# checking class
class(docs)
[1] "DocumentTermMatrix" "simple_triplet_matrix"
问题是tm转换在这个类上不起作用:
# Preparing the Corpus
# Simple Transforms
toSpace <- content_transformer(function(x, pattern) gsub(pattern, " ", x))
docs <- tm_map(docs, toSpace, "/")
我收到此错误:
Error in UseMethod("tm_map", x) :
no applicable method for 'tm_map' applied to an object of class "c('DocumentTermMatrix', 'simple_triplet_matrix')"
或其他代码:
docs <- tm_map(docs, toSpace, "/|@|nn|")
我得到同样的错误:
Error in UseMethod("tm_map", x) :
no applicable method for 'tm_map' applied to an object of class "c('DocumentTermMatrix', 'simple_triplet_matrix')"
非常感谢您的帮助。
答案 0 :(得分:0)
代码
docs <- tm_map(docs, toSpace, "/|@|nn|")
必须替换为
docs <- tm_map(docs, toSpace, "/|@|\\|").
然后它会正常工作。