2016-03-28 30 views
1

まず、私のお詫びは、8月1日に質問された質問を繰り返す。しかし私は私が持っていないコメントすることができるために50の評判を持たなければならないので私は元の質問にコメントできません。元の質問はR text mining documents from CSV file (one row per doc)から取得できます。CSVファイルからのRテキストマイニング文書

私はRのtmパッケージで作業しようとしていますが、それぞれの行が別の要約である記事抄録のCSVファイルを持っています。私は各行をコーパス内の別の文書にしたい。私のデータセットには2,000行あります。

以前ベンにより示唆されるように、私は以下のコードを実行します。私はクラスチェックすると

# 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

あなたの関数を 'DocumentTermMatrix'ではなく' Corpus'オブジェクトに適用する必要があります。 'corp < - Corpus(DataframeSource(x))'の後に、 'corp < - tm_map(corp、toSpace、"/")'を試してから 'DocumentTermMatrix'を作成してください。 – nicola

+0

@nicolaありがとうございました。あなたは絶対に正しいです。私はそれを走らせた。しかし、私のdtmを作成するまでは動作していたようです。最後のコードは 'docs Sahara

+0

本当にあなたのデータに依存します。彼らを見ずに何も言えない。何が起こっているかを見るためにあなたのコーパスの一歩一歩見てください。 – nicola

答えて

0

コード

docs <- tm_map(docs, toSpace, "/|@|nn|") 

はその後、それが正常に動作します

docs <- tm_map(docs, toSpace, "/|@|\\|"). 

に置き換える必要があります。

関連する問題