2016-04-04 30 views
0

私は、ツイートが肯定的、否定的または中立的であるかどうかを知るためにSVM、NBおよびkNNを適用してツイートを分析しています。 80704件のツイートが、テスト目的のために、私は唯一の唯一の2847ツイートを分析しています、それは私が電車やテストデータにデータを分割する際の質問は、これは、SVMとNBのために動作しますが、ときにエラーを与えている機能r - エラーが発生しました。外部関数呼び出し(arg 6)

> str(total.tweets.score) 
'data.frame': 2847 obs. of 3 variables: 
$ score   : int 0 1 1 -2 0 0 1 2 -2 0 ... 
$ text   : Factor w/ 1790 levels " st century is the era of knowledge and information which will change the way countries develop says",..: 1717 129 996 1072 682 795 524 132 143 773 ... 
$ Negative  : Factor w/ 2 levels "FALSE","TRUE": 1 1 1 2 1 1 1 1 2 1 ... 

を以下ました私はkNNを適用します、ここでデータを分割する方法は、

total.tweets.score.train <- total.tweets.score[1:1993,] 
total.tweets.score.test <- total.tweets.score[1994:2847, ] 

SVMモデル:

model.SVm = svm(total.tweets.score.train$Negative~., data = total.tweets.score.train, kernel = "linear", epsilon = 0.1, probability = TRUE, type = "C") 

NBモデル​​:ここ

nb.classifier <- naiveBayes(twitter.train , total.tweets.score.train$Negative) 

twitter.trainは、ドキュメントの用語行列です。

k最近傍モデル:kn.train.data.targetが要因

私はk最近傍コードを実行すると、私は次のエラーを受け取り、

Error in knn(twitter.train, twitter.test, knn.train.data.target, k = 3, : 
    NA/NaN/Inf in foreign function call (arg 6) 
In addition: Warning messages: 
1: In knn(twitter.train, twitter.test, knn.train.data.target, k = 3, : 
    NAs introduced by coercion 
2: In knn(twitter.train, twitter.test, knn.train.data.target, k = 3, : 
    NAs introduced by coercion 

ありながら、ここで

model.knn <- knn(twitter.train, twitter.test , knn.train.data.target , k = 3, prob = TRUE) 

twitter.traintwitter.testの両方が、ドキュメントの用語行列ですどうしたらいいの?

+0

ドキュメントの用語行列の構造は何ですか?ですかあなたは構造体を投稿して、おそらくいくつかの行を投稿できますか? (これは、問題を再現可能にする唯一の方法です。 – lrnzcig

答えて

0

これは私のDTMの構造

> str(total.tweets.dtm) 
List of 6 
$ i  : int [1:22041] 1 1 1 1 1 1 1 1 1 1 ... 
$ j  : int [1:22041] 138 163 617 1417 1852 1899 2534 2727 2792 3234 ... 
$ v  : num [1:22041] 1 1 1 1 1 1 1 1 1 1 ... 
$ nrow : int 2847 
$ ncol : int 4232 
$ dimnames:List of 2 
    ..$ Docs : chr [1:2847] "character(0)" "character(0)" "character(0)" "character(0)" ... 
    ..$ Terms: chr [1:4232] "#cpec" "aabpara" "aaj" "aakhir" ... 
- attr(*, "class")= chr [1:2] "DocumentTermMatrix" "simple_triplet_matrix" 
- attr(*, "weighting")= chr [1:2] "term frequency" "tf" 
関連する問題