使用计算的逻辑回归模型,基于R中合适的临界值创建分类器

时间:2019-12-29 10:34:10

标签: r classification logistic-regression

我已经使用R中的内置虹膜数据集创建了逻辑回归模型。

# Includes iris dataset.
library(datasets)

# Dummy variable to predict.
iris$dummy.virginica.iris <- 0
iris$dummy.virginica.iris[iris$Species == 'virginica'] <- 1
iris$dummy.virginica.iris

# Logistic regression model.
glmfit<-glm(dummy.virginica.iris ~ Petal.Width, 
        data = iris, 
        family = 'binomial') 
summary(glmfit)

如何基于此模型创建一个具有合适的截止值(例如0.5)的分类器?任何建议或帮助将不胜感激。

1 个答案:

答案 0 :(得分:2)

您想将predict函数与type=response一起使用,以获取每一行属于 virginica 物种的可能性:

glmfit.pred <- predict(glmfit, type="response")
virginica <- ifelse(glmfit.pred > .5, TRUE, FALSE)
table(iris$Species, virginica)
#             virginica
#              FALSE TRUE
#   setosa        50    0
#   versicolor    48    2
#   virginica      4   46

因此,在此示例中,正确分类了属于弗吉尼亚州的50个标本中的46个,而错误地将50种杂色的Versicolor标本中的2个正确地分类为维吉尼卡,而正确地将50个杂色的标本中的48个正确地分类为非维吉尼卡,并且全部50个Setosa标本都被正确分类。正确分类为非弗吉尼亚州。