Como traçar uma curva de regressão logística em r
Muitas vezes você pode querer traçar a curva de um modelo de regressão logística ajustado em R.
Felizmente, é muito fácil de fazer e este tutorial explica como fazê-lo tanto na base R quanto no ggplot2.
Exemplo: traçando uma curva de regressão logística na base R
O código a seguir mostra como ajustar um modelo de regressão logística usando variáveis do conjunto de dados integrado mtcars em R e, em seguida, como traçar a curva de regressão logística:
#fit logistic regression model model <- glm(vs ~ hp, data=mtcars, family=binomial) #define new data frame that contains predictor variable newdata <- data. frame (hp=seq(min(mtcars$hp), max(mtcars$hp),len= 500 )) #use fitted model to predict values of vs newdata$vs = predict(model, newdata, type=" response ") #plot logistic regression curve plot(vs ~hp, data=mtcars, col=" steelblue ") lines(vs ~ hp, newdata, lwd= 2 )
O eixo x exibe os valores da variável preditora hp e o eixo y exibe a probabilidade prevista da variável resposta am .
Podemos ver claramente que valores mais elevados da variável preditora hp estão associados a probabilidades mais baixas da variável resposta vs ser igual a 1.
Exemplo: traçando uma curva de regressão logística em ggplot2
O código a seguir mostra como ajustar o mesmo modelo de regressão logística e como traçar a curva de regressão logística usando a biblioteca de visualização de dados ggplot2 :
library (ggplot2) #plot logistic regression curve ggplot(mtcars, aes (x=hp, y=vs)) + geom_point(alpha=.5) + stat_smooth(method=" glm ", se=FALSE, method. args = list(family=binomial))
Observe que esta é exatamente a mesma curva produzida no exemplo anterior usando a base R.
Sinta-se à vontade para alterar o estilo da curva também. Por exemplo, poderíamos transformar a curva em uma linha pontilhada vermelha:
library (ggplot2) #plot logistic regression curve ggplot(mtcars, aes (x=hp, y=vs)) + geom_point(alpha=.5) + stat_smooth(method=" glm ", se=FALSE, method. args = list(family=binomial), col=" red ", lty= 2 )
Recursos adicionais
Introdução à regressão logística
Como realizar a regressão logística em R (passo a passo)
Como realizar regressão logística em Python (passo a passo)
Como usar a função seq em R