Я управлял glm()
моделью;но теперь я хотел бы измерить точность модели с помощью PPV, NPV, чувствительности и специфичности.Тем не менее, я продолжаю получать запутанные результаты.
Мой результат - фактор-переменная, которая выглядит следующим образом:
table(mydata$outcome)
0 1
6824 359
Предикторы - это комбинация непрерывных переменных с 1 категориальной (пол).
Мой код:
# To run the logistic model
mod <- glm(outcome~predictor1+predictor2+predictor3,data=mydata,family=binomial("logit"))
summary(mod)
# To run predict() to get the predicted values of the outcome
predicted = predict(object = mod, newdata=mydata, type = "response")
Результаты для этого выглядят так:
head(predicted)
1 2 3 4 5 6
0.02568802 0.02979873 0.01920584 0.01077031 0.01279325 0.09725329
Это очень удивительно, так как я ожидал увидеть предсказанный «1»(случаи) против '0' (элементы управления), которые я мог бы использовать для получения показателей точности моделей либо с confusionMatrix(predicted, mydata$outcome)
, либо с использованием библиотеки ModelMetrics
.
Итак, мой вопрос: как я могу получить результаты таблицы 4х4 (прогнозируемые или наблюдаемые), которые я могу использовать для измерения точности моей glm()
модели при прогнозировании результата?Я буду благодарен за любой совет, или, пожалуйста, дайте мне знать, если есть лучшие способы получить PPV, NPV, чувствительность и специфичность.Спасибо.