jueves, 4 de julio de 2019

Data Science: Creación de variables dummies (Dummification)

Vamos a ver cómo crear variables dummies o de prueba en nuestros dataset:


Dummificar consiste en sustituir una columna categórica por varias columnas booleanas dependiendo del número de categorías de la columna.

Por ejemplo, si tenemos una columna llamada "sexo" en la que sólo hay 2 valores posibles ("hombre" y "mujer") podemos dummificarla y sustituirla por dos columnas, una que sea "hombre" y otra que sea "mujer", cuyos valores serán 1 si la fila pertenece a esa categoría o 0 si no pertenece. Así, para la fila cuyo sexo sea hombre, tendrá el valor 1 en la columna "hombre" y el valor 0 en la columna "mujer".

# Transformamos una columna categórica (sex: hombre/mujer) en dos variables dummy.
# Una columna "male" con 1 si se es y 0 si no se es, y otra variable "female" con los valores contrarios.
dummy_sex = pd.get_dummies(data["sex"], prefix="sex")
# Crea las columnas "sex_male" y "sex_female".
# Eliminamos la columna "sex" del dataset original.
data = data.drop(["sex"], axis = 1)
# Añadimos las columnas dummies creadas al dataset original.
data = pd.concat([data, dummy_sex], axis = 1)

# Creamos una función que hace lo mismo.
def createDummies(data_frame, var_name):
dummy = pd.get_dummies(data_frame[var_name], prefix = var_name)
data_frame = data_frame.drop(var_name, axis = 1)
data_frame = pd.concat([data_frame, dummy], axis = 1)
return data_frame
# Llamamos a la función pasando como parámetros el dataframe y el nombre de la columna a dummificar.
createDummies(data, "sex")

No hay comentarios:

Publicar un comentario