Я получаю прямую линию вместо изогнутой линии ..): Вот мой код (у меня есть 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")