Python para enfermeiras (19)¶
Scikit-learn mais uma biblioteca Python para Deep Learning¶
In [2]:
# Importando Matplotlib e Numpy
import matplotlib.pyplot as plt
import matplotlib as mat
import numpy as np
%matplotlib inline
In [3]:
mat.__version__
Out[3]:
'3.3.2'
In [5]:
np.__version__
Out[5]:
'1.19.2'
In [30]:
# quesito cor (1br, 2pt, 3pd, 4am, 5ind)
cor = [[1], [2], [3], [4], [5]]
# classificação ótima da PA (N = pacientes)
pa_otim = [[14], [2], [7], [0], [0]]
In [31]:
plt.figure()
plt.xlabel('cor')
plt.ylabel('PA ótima')
plt.title('cor x class da PA')
plt.plot(cor, pa_otim, 'k.')
plt.axis([0, 5, 0, 20])
plt.grid(True)
plt.show()
In [17]:
import sklearn
sklearn.__version__
Out[17]:
'0.23.2'
In [18]:
# Importando o módulo de Regressão Linear do scikit-learn
from sklearn.linear_model import LinearRegression
In [19]:
# Preparando os dados de treino
# Vamos chamar de X os dados do quesito cor
X = [[1], [2], [3], [4], [5]]
# Vamos chamar de Y os dados de classificação ótima da PA
Y = [[14], [2], [7], [0], [0]]
In [20]:
# Criando o modelo
modelo = LinearRegression()
In [21]:
type(modelo)
Out[21]:
sklearn.linear_model._base.LinearRegression
In [22]:
# Treinando o modelo
modelo.fit(X, Y)
Out[22]:
LinearRegression()
In [27]:
# Prevendo a classificação
print("A classificação ótima da PA para pessoas pretas deve acontecer com: N=%.2f" % modelo.predict([[2]]))
A classificação ótima da PA para pessoas pretas deve acontecer com: N=7.60
In [32]:
# Coeficientes
print('Coeficiente: \n', modelo.coef_)
# MSE (mean square error)
print("MSE: %.2f" % np.mean((modelo.predict(X) - Y) ** 2))
# Score de variação: 1 representa predição perfeita
print('Score de variação: %.2f' % modelo.score(X, Y))
Coeficiente: [[-3.]] MSE: 10.64 Score de variação: 0.63
In [33]:
# Scatter Plot representando a regressão linear
plt.scatter(X, Y, color = 'black')
plt.plot(X, modelo.predict(X), color = 'blue', linewidth = 3)
plt.xlabel('X')
plt.ylabel('Y')
plt.xticks(())
plt.yticks(())
plt.show()
In [34]:
# Preparando os dados de treino
# Vamos chamar de X os dados do quesito cor
X1 = [[1], [2], [3], [4], [5]]
# Vamos chamar de Y os dados de percepção da discriminação
Y1 = [[2], [7], [2], [0], [0]]
In [35]:
# Criando o modelo
modelo1 = LinearRegression()
In [36]:
type(modelo1)
Out[36]:
sklearn.linear_model._base.LinearRegression
In [40]:
# Treinando o modelo
modelo1.fit(X1, Y1)
Out[40]:
LinearRegression()
In [41]:
# Prevendo a percepção de discriminação
print("A percepção para pessoas pretas deve acontecer com: N=%.2f" % modelo.predict([[3]]))
A percepção para pessoas pretas deve acontecer com: N=2.20
In [42]:
# Coeficientes
print('Coeficiente: \n', modelo1.coef_)
# MSE (mean square error)
print("MSE: %.2f" % np.mean((modelo1.predict(X1) - Y1) ** 2))
# Score de variação: 1 representa predição perfeita
print('Score de variação: %.2f' % modelo1.score(X1, Y1))
Coeficiente: [[-1.1]] MSE: 4.14 Score de variação: 0.37
In [43]:
# Scatter Plot representando a regressão linear
plt.scatter(X1, Y1, color = 'black')
plt.plot(X, modelo1.predict(X1), color = 'blue', linewidth = 3)
plt.xlabel('X')
plt.ylabel('Y')
plt.xticks(())
plt.yticks(())
plt.show()
regressão linear, outro exemplo¶
In [47]:
# HDL (mg/dl)
hdl = [[42], [66], [75], [35], [22], [53], [31], [25], [45],
[52], [33], [50], [38], [38], [64], [23], [47], [38]]
# Colesterol total (mg/dl)
ct = [[286], [212], [170], [128], [125], [166], [144], [204], [500],
[158], [144], [190], [192], [193], [162], [175], [188], [147]]
In [48]:
plt.figure()
plt.xlabel('HDL(mg/dl)')
plt.ylabel('CT(mg/dl)')
plt.title('HDL x CT')
plt.plot(hdl, ct, 'k.')
plt.axis([0, 100, 0, 600])
plt.grid(True)
plt.show()
In [50]:
# preparando os dados de treino
# HDL (mg/dl)
hdl = [[42], [66], [75], [35], [22], [53], [31], [25], [45],
[52], [33], [50], [38], [38], [64], [23], [47], [38]]
# Colesterol total (mg/dl) chamar de Y
ct = [[286], [212], [170], [128], [125], [166], [144], [204], [500],
[158], [144], [190], [192], [193], [162], [175], [188], [147]]
# Criando o modelo
modelo_circ = LinearRegression()
In [51]:
type(modelo_circ)
Out[51]:
sklearn.linear_model._base.LinearRegression
In [52]:
# Treinando o modelo
modelo.fit(hdl, ct)
Out[52]:
LinearRegression()
In [53]:
# Usamos agora esta sintaxe:
print("Um HDL de 34 deve levar a um CT: mg/dl %.2f" % modelo.predict([[34]]))
Um HDL de 34 deve levar a um CT: mg/dl 187.84
In [54]:
# Coeficientes
print('Coeficiente: \n', modelo.coef_)
# MSE (mean square error)
print("MSE: %.2f" % np.mean((modelo.predict(hdl) - ct) ** 2))
# Score de variação: 1 representa predição perfeita
print('Score de variação: %.2f' % modelo.score(hdl, ct))
Coeficiente: [[0.62395078]] MSE: 6748.22 Score de variação: 0.01
In [56]:
# Scatter Plot representando a regressão linear
plt.scatter(hdl, ct, color = 'red')
plt.plot(hdl, modelo.predict(hdl), color = 'blue', linewidth = 3)
plt.xlabel('HDL(mg/dl)')
plt.ylabel('CT(mg/dl)')
plt.xticks(())
plt.yticks(())
plt.show()
Apontamentos
- Não há apontamentos.
BNN - ISSN 1676-4893
Boletim do Núcleo de Estudos e Pesquisas sobre as Atividades de Enfermagem (NEPAE)e do Núcleo de Estudos sobre Saúde e Etnia Negra (NESEN).