Je veux tracer une courbe de régression logistique de mes données, mais chaque fois que j'essaie de faire mon tracé, je produit plusieurs courbes. Voici une photo de ma dernière tentative:
Voici le code pertinent que j'utilise:
fit = glm(output ~ maxhr, data=heart, family=binomial)
predicted = predict(fit, newdata=heart, type="response")
plot(output~maxhr, data=heart, col="red4")
lines(heart$maxhr, predicted, col="green4", lwd=2)
Mon professeur utilise le code suivant, mais lorsque j'essaie de l'exécuter, j'obtiens une erreur sur la dernière ligne disant que les longueurs x et y ne correspondent pas:
# fit logistic regression model
fit = glm(output ~ maxhr, data=heart, family=binomial)
# plot the result
hr = data.frame(maxhr=seq(80,200,10))
probs = predict(fit, newdata=dat, type="response")
plot(output ~ maxhr, data=heart, col="red4", xlab ="max HR", ylab="P(heart disease)")
lines(hr$maxhr, probs, col="green4", lwd=2)
Toute aide serait appréciée.
Modifier:
Comme demandé, code reproductible à l'aide du jeu de données mtcars:
fit = glm(vs ~ hp, data=mtcars, family=binomial)
predicted= predict(fit, newdata=mtcars, type="response")
plot(vs~hp, data=mtcars, col="red4")
lines(mtcars$hp, predicted, col="green4", lwd=2)