0

データセットの分類に使用naiveBayes e1071します (分類クラス: "V32" 0/1)。

これが私がすることです:

    d <- read.table("Modeling_Data.txt",header=FALSE,sep="\t",
                    comment.char="",quote="")
    #divide into training and test data 70:30
    trainingIndex <- createDataPartition(d$V32, p=.7, list=F)
    d.training <- d[trainingIndex,]
    d.testing <- d[-trainingIndex,]
    nb.classifier <- naiveBayes(as.factor(d$V32) ~ ., data = d.training)

しかし、私はこのエラーが発生します:

    Error in names(dimnames(tables[[i]])) <- c(Yname, colnames(x)[i]) : 
    attempt to set an attribute on NULL
    predict(nb.classifier,d.testing[,-50000])
    Error in predict(nb.classifier, d.testing[, -50000]) : 
    object 'nb.classifier' not found

含まれているデータ セット (虹彩) を使用しようとしましたが、すべて正常に動作します。私のアプローチの何が問題になっていますか?

4

1 に答える 1

0

モデルの構築が失敗しているようです (その結果、分類器が構築されません)。あなたのデータを見なければ、私の最善の推測では、不完全なケースがあると思います。

次のように使用して、データが欠落しているケースを削除してみてくださいcomplete.cases

d <- read.table("Modeling_Data.txt",header=FALSE,sep="\t",comment.char="",quote="")

# remove incomplete cases
d[complete.cases(d),]

# divide into training and test data 70:30
trainingIndex <- createDataPartition(d$V32, p=.7, list=F)
于 2013-06-26T15:20:08.763 に答える