Como traçar uma curva de regressão logística em python
Você pode usar a função regplot() da biblioteca de visualização de dados marítimos para traçar uma curva de regressão logística em Python:
import seaborn as sns sns. regplot (x=x, y=y, data=df, logistic= True , ci= None )
O exemplo a seguir mostra como usar essa sintaxe na prática.
Exemplo: traçando uma curva de regressão logística em Python
Para este exemplo, usaremos o conjunto de dados padrão do livro Introdução ao Aprendizado Estatístico . Podemos usar o seguinte código para carregar e exibir um resumo do conjunto de dados:
#import dataset from CSV file on Github url = "https://raw.githubusercontent.com/Statorials/Python-Guides/main/default.csv" data = pd. read_csv (url) #view first six rows of dataset data[0:6] default student balance income 0 0 0 729.526495 44361.625074 1 0 1 817.180407 12106.134700 2 0 0 1073.549164 31767.138947 3 0 0 529.250605 35704.493935 4 0 0 785.655883 38463.495879 5 0 1 919.588530 7491.558572
Este conjunto de dados contém as seguintes informações sobre 10.000 indivíduos:
- inadimplência: indica se um indivíduo está inadimplente ou não.
- estudante: indica se um indivíduo é estudante ou não.
- saldo: Saldo médio mantido por um indivíduo.
- renda: Renda da pessoa física.
Suponha que queiramos construir um modelo de regressão logística que use “equilíbrio” para prever a probabilidade de inadimplência de um determinado indivíduo.
Podemos usar o seguinte código para traçar uma curva de regressão logística:
#define the predictor variable and the response variable
x = data[' balance ']
y = data[' default ']
#plot logistic regression curve
sns. regplot (x=x, y=y, data=data, logistic= True , ci= None )
O eixo x mostra os valores da variável preditora “saldo” e o eixo y exibe a probabilidade de inadimplência prevista.
Podemos ver claramente que valores de equilíbrio mais elevados estão associados a probabilidades mais elevadas de inadimplência de um indivíduo.
Observe que você também pode usar scatter_kws e line_kws para alterar as cores dos pontos e da curva no gráfico:
#define the predictor variable and the response variable
x = data[' balance ']
y = data[' default ']
#plot logistic regression curve with black points and red line
sns. regplot (x=x, y=y, data=data, logistic= True , ci= None ),
scatter_kws={' color ': ' black '}, line_kws={' color ': ' red '})
Fique à vontade para escolher as cores que deseja na trama.
Recursos adicionais
Os tutoriais a seguir fornecem informações adicionais sobre regressão logística:
Introdução à regressão logística
Como relatar resultados de regressão logística
Como realizar regressão logística em Python (passo a passo)