Introducción #
Ejemplo extraído del video Machine Learning episodio 11. ¿Cómo subir tu set de datos propio?.
El ejemplo esta creado el Jupiter Notebool y se irá poniendo el código de las distintas celdas.
Explicación #
En el video se muestra un excel con los datos iris con multidud de valores. Para este página se ha creado un excel sencillo con la misma estructura pero con datos limitados e inventados. Y se ha conviertido a CSV para que pueda importado por la librerías de machine learning. El fichero tiene ocho columnas de características y una columna para la etiqueta.
Código #
# Paquete para leer el fichero CSV
import pandas as pd
# Algoritmo de regresión línea
from sklearn import linear_model
# Separador de datos de test y entrenamiento
from sklearn.model_selection import train_test_split
# Algoritmo de regresión
reg = linear_model.LogisticRegression()
# Datos con el modelo
archivo = "set_datos_propio.csv"
# Lectura del modelo.
# Hay que indicarle el separador para que funcione.
df = pd.read_csv(archivo,';')
# Visualización de los datos cargados
df
Este bloque no esta igual que el ejemplo orignal porque el método as_matrix ya no existe y se usa su equivalente.
# Arreglox contendrá todas las características.
# El -1 es para que no se lea la última columna
# que es la etiqueta
#print("Valores: ", df.columns[0:-1])
arreglox = df[df.columns[:-1]].to_numpy()
# Arregloy contendrá la ultima columna, que es la etiqueta
arregloy = df[df.columns[-1]].to_numpy()
print("Características: ",arreglox)
print("Etiquetas: ", arregloy)
# Separacion de datos de entrenamiento y test
X_ent, X_test, y_ent, y_test = train_test_split(arreglox, arregloy)
# Entrenamiento del algoritmo
reg.fit(X_ent, y_ent)
# Resultado del entrenamiento
reg.score(X_test, y_test)