簡體   English   中英

如何為決策樹模型創建混淆矩陣

[英]How to create a confusion matrix for a decision tree model

我在創建混淆矩陣以將模型預測與實際值進行比較時遇到一些困難。 我的數據集包含159個解釋變量,我的目標稱為“分類”。

#Load Data
df <- read.csv("https://d396qusza40orc.cloudfront.net/predmachlearn/pml-training.csv", na.strings=c("NA","#DIV/0!",""))

#Split into training and validation
index <- createDataPartition(df$classe, times=1, p=0.5)[[1]]
training <- df[index, ]
validation <- df[-index, ]

#Model
decisionTreeModel <- rpart(classe ~ ., data=training, method="class", cp =0.5)

#Predict
pred1 <- predict(decisionTreeModel, validation)

#Check model performance
confusionMatrix(validation$classe, pred1)

從上面的代碼生成以下錯誤信息:

Error in confusionMatrix.default(validation$classe, pred1) : 
  The data must contain some levels that overlap the reference.

我認為這可能與預測函數生成的pred1變量有關,它是一個包含5列的矩陣,而validation $ classe是一個包含5個級別的因子。 關於如何解決這個問題的任何想法?

提前致謝

您的預測為您提供了每個班級的概率矩陣。 如果您希望返回“優勝者”(預測類),請用以下代碼替換預測行:

pred1 <- predict(decisionTreeModel, validation, type="class")

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM