2016-07-28 2 views
-1

Я изо всех сил пытаюсь построить коэффициенты модели glm, используя abline. Давайте рассмотрим этот простой 2D пример:Как построить коэффициенты модели glm с abline в R?

d <- iris[51:150, c(3:4,5)] 
d[,3] <- factor(d[,3]) 
plot(d[,1:2], col=d[,3]) 

The data

GLM модель урожайности 4 коэффициенты:

m <- glm(formula = Species~Petal.Length*Petal.Width, data = d, family = "binomial") 
m$coefficients 
# (Intercept)    Petal.Length    Petal.Width Petal.Length:Petal.Width 
# -131.23813     22.93553     63.63527    -10.63606 

Как построить те, с помощью простого abline?

+0

Что вы ожидаете от 'abline'? – Roland

+1

Две проблемы: 'abline' полезен только тогда, когда есть два коэффициента, наклон и перехват, а с GLM будет отображаться соответствие преобразованной шкале, а не масштаб ответа, который вам интересен. Решение состоит в том, чтобы делать прогнозы и строить график этих , –

+0

@ Роланд I нацелился на построение границы решения непосредственно из коэффициентов. @ RichardTelford OK, это объясняет, почему использование коэффициентов напрямую невозможно - thx для указания! – geekoverdose

ответ

0

Биномиальные модели обычно не настроены таким образом. Обычно вы будете иметь одну переменную ответа 0 | 1 (т. Е. Предсказывать, является ли образец одним видом). Может быть, потому, что у вас есть только 2 вида, включенных в вашу модель, все еще кажется, что они работают (это не тот случай, когда включены все 3 spp). Второй Хитрость заключается в том, чтобы предсказать type="response" и вокруг этих значений, чтобы получить дискретные предсказания:

d$pred <- factor(levels(d[,3])[round(predict(m, type="response"))+1]) 
plot(d[,1:2], col=d[,3]) 
points(d[,1:2], col=d$pred, pch=4) 

enter image description here

здесь я добавил «X» для предсказаний. Если цвет один и тот же, то прогноз был правильным. Я считаю 5 образцов, где предсказание было неправильным.

Смежные вопросы