Не могу получить изогнутую линию в моей модели регрессии logisti c - PullRequest
0 голосов
/ 02 марта 2020

Я получаю прямую линию вместо изогнутой линии ..): Вот мой код (у меня есть 2 строки данных):

mymodel <- glm(row3 ~ row1 + row2, data=data, family="binomial")
confmatrix <- table(Actual_value=data$row3, Predicted_value = res > 0.5 )

Coefficients:
              Estimate Std. Error z value Pr(>|z|)    
(Intercept)  5.528e-05  8.096e-02   0.001    0.999    
row1         2.054e+00  1.601e-01  12.830   <2e-16 ***
row2        -2.357e+00  1.692e-01 -13.932   <2e-16 ***
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

plot(row3 ~ row1 + row2, data=data, col="red4")

> range(data$row1)
[1] -0.9950269  0.9970726
> range(data$row2)
[1] -0.9987826  0.9974060

> xv <- seq(min(data$row1), max(data$row1), 0.01)
> yv <- predict(mymodel, list(row1=xv, row2=xv), type="response")
> lines(xv, yv, col="blue")

это дает мне прямую линию в качестве вывода, но Я хочу, чтобы линия была изогнута, что я делаю не так?

data:
> dput(data[1:10, ])
structure(list(row1 = c(-0.228244850627602, -0.579118049124784, 
-0.83833242721105, 0.331746035028978, 0.265438414881288, -0.291282866857274, 
-0.217044905717291, 0.125016813138315, 0.965216795695969, 0.0659191928502751
), row2 = c(-0.857870264293455, -0.34716207447565, 0.865458604130724, 
0.447644706745721, -0.0719620361325586, 0.153072010992213, 
-0.677216788715359, 
-0.411643123725395, -0.697268680602617, -0.155335060339782), 
row3 = c(1, 1, 0, 1, 1, 0, 1, 1, 1, 0)), row.names = c(NA, 
10L), class = "data.frame")
...