Es difícil crear modelos de aprendizaje automático que no puedan tener características que tengan valores categóricos, tales modelos no pueden funcionar. las variables categóricas tienen valores de tipo string. por lo tanto, tenemos que convertir valores de string en números. Esto se puede lograr creando nuevas funciones basadas en las categorías y estableciéndoles valores. En este artículo, vamos a ver cómo convertir características categóricas a características numéricas en Python
Implementación paso a paso
Paso 1: Importe los paquetes y módulos necesarios
Python3
# import packages and modules import numpy as np import pandas as pd from sklearn import preprocessing
Paso 2: importa el archivo CSV
Usaremos el método pandas read_csv() para importar el archivo CSV. Para ver y descargar el archivo CSV utilizado, haga clic aquí .
Python3
# import the CSV file df = pd.read_csv('cluster_mpg.csv') print(df.head())
Producción:
Paso 3: obtenga todas las funciones con valores categóricos
Usamos df.info() para encontrar características categóricas. Las características categóricas tienen Dtype como «objeto».
Python3
df.info()
Producción:
En las columnas de la base de datos dada, «origen» y «nombre» es el tipo de objeto.
Paso 4: Convierta los valores de string de la columna de origen en valores numéricos
Ajustaremos la columna «origen» usando el método preprocessing.LabelEncoder().fit().
Python3
label_encoder = preprocessing.LabelEncoder() label_encoder.fit(df["origin"])
Paso 5: obtenga los valores únicos de las características categóricas
Usaremos el atributo label_encoder.classes_ para este propósito.
clases_: ndarray de forma (n_clases,)
Contiene la etiqueta de cada clase.
Python3
# finding the unique classes print(list(label_encoder.classes_)) print()
Producción
['europe', 'japan', 'usa']
Paso 6: Transformar los valores categóricos
Python3
# values after transforming the categorical column. print(label_encoder.transform(df["origin"]))
Producción:
Publicación traducida automáticamente
Artículo escrito por isitapol2002 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA