Pandas get_dummies

Pandas get_dummies
El método para obtener las variables ficticias en pandas utilizando el método get_dummies () se demuestra en este artículo. Discutiremos el objetivo principal de la función. También pasaremos por el PD.sintaxis de get_dummies y proporcione los ejemplos paso a paso. Las variables ficticias son variables numéricas que codifican los datos categóricos. Los dos valores viables para variables ficticias son 0 y 1. En las variables ficticias, "1" indica que una categoría está presente y "0" representa la categoría que no existe. Estas variables 0/1 también se conocen como variables ficticias. Sin embargo, generalmente nos referimos a ellas como variables "ficticias". Esto también se conoce como la codificación "única" de categórico en el aprendizaje automático.

Cómo hacer uso del método get_dummies () en pandas

Usando una serie Pandas, una columna o múltiples columnas de marco de datos PANDAS, el PD.La función get_dummies () puede generar las variables ficticias. Algunas herramientas en la ciencia de datos solo se pueden usar con los datos de entrada numérica. Las numerosas técnicas de aprendizaje automático, como la regresión logística y lineal, solo aceptan los datos de entrada numérica. Dan un error si intenta usar los datos de categoría que se basan en cadenas. Eso significa que antes de usar tales herramientas, debe codificar los datos de su categoría como variables ficticias (numéricas). Veamos el PD.La sintaxis de Get_Dummies para comprender cómo funciona.

Sintaxis: pandas.get_dummies (data, prefix = none, prefix_sep = '_', dummy_na = false, columns = none, sparse = false, drop_first = false, dtype = none)

Dónde;

datos: Cuyos datos se cambian o manipulan.

prefijo: Cadena para agregar los nombres de columna de un marcado de datos. Al usar los Dummies Get en un DataFrame, pase una lista con un tamaño que sea equivalente al número total de las columnas de DataFrame. "Ninguno" es el valor predeterminado.

prefix_sep: Use un separador o delimitador cuando agregue un prefijo. Es "por defecto.

Dummy_NA: Se agrega una nueva columna para indicar los valores de NAN. Es falso de forma predeterminada si se ignoran los valores falsos falsos.

columnas: Los nombres de la columna DataFrame que deben codificarse. Las columnas que tienen una categoría u tipo de datos de objeto se convierten en "ninguno". El valor predeterminado es "ninguno".

escaso: Especifica si una barra de dispersión (verdadera) o una matriz numpy estándar debe respaldar las columnas codificadas ficticias (falsas). Falso es el valor predeterminado.

drop_first: Desde los niveles categóricos de K para obtener manclos de K-1, elimine el primer nivel.

dtype: Tipo de datos de nuevas columnas. Solo puede haber un tipo de datos. El "np.uint8 ", es el valor predeterminado.

Ahora, usemos la función get_dummies () en los siguientes ejemplos:

Ejemplo 1: Uso de la función get_dummies () en la serie Pandas

Comencemos usando la función get_dummies () en una serie Pandas. Creamos una serie usando el PD.Función Series ().

Después de importar la Biblioteca Pandas, creamos una lista de "nombres" con los elementos "Mark", "Kane", "Larry", "Mark", None, "Larry", "Kane", None y "Mark". Para crear una serie, la lista se pasa dentro del PD.Función Series (). La función print () se usa para ilustrar la serie "S". Hay 3 categorías de datos o valores de cadena en la serie (Mark, Kane y Larry). La serie también contiene algunos valores faltantes. Ahora, se usa la función Pandas Get Dummies.

El PD.get_dummies () crea un marco de datos con cuatro nuevas variables como salida: "Kane", "Larry" y "Mark". La nueva variable Kane tiene un valor de 1 en el que el valor de la serie original era "Kane", mientras que los valores de la otra variable son "0."Donde el valor de la serie original era" Larry ", la nueva variable Larry ahora tiene un valor de" 1 ", mientras que los valores de las otras variables son todos" 0 ", y así sucesivamente. Una única variable que contiene tres valores se recodifica en tres variables que contienen 0 o 1 valores usando el método get_dummies (). Aunque se presenta de manera diferente (en forma de valores de 0 y 1), la nueva estructura incluye la misma información/datos.

Ejemplo 2: Uso de la función get_dummies () en Pandas DataFrame

A continuación, aplicamos el PD.Función get_dummies () en la columna DataFrame. Creemos un marco de datos PANDAS primero usando el PD.DataFrame () función después de importar los módulos pandas y numpy igual que en el primer ejemplo.

Tres columnas en el marco de datos proporcionado incluyen los nombres "EMP", "Salario" y "País."En la columna" EMP ", almacenamos los nombres de los empleados (" Jay "," Anna "," Sam "," Eddy "," Jhon "," Maria "," Sara "," Kim "," Jack " , "Will", "Jerry"). En el salario de la columna, los salarios de los empleados se almacenan como valores numéricos (40000, 53000, 44000, 39000, 47000, 34000, 55000, 51000, 42000, 39000, 38000). La columna del "país" contiene los nombres de países desde donde cada empleado pertenece a ("EE. UU.", "Francia", "EE. UU.", "USA", "Rusia", "Rusia", "Rusia", "Francia", ",", ",", ",", ",", " Francia "," EE. UU. ", NP.yaya). Podemos convertir la columna del país, que es una columna categórica, en una variable ficticia 0 o 1. Aplicamos la función pandas get_dummies () a la columna de país en el DF DataFrame.

En primer lugar, se puede notar que se crea un nuevo marco de datos como resultado de la operación. La columna de país anterior ya no existe en este nuevo marco de datos. Ahora hay 4 nuevas columnas en su lugar: Country_france, Country_russia y Country_USA. El nombre de la antigua variable (país) tiene prefijo los nombres de las nuevas variables por la función get_dummies () de forma predeterminada. La nueva columna Country_france tiene un valor de 1 donde el valor de la columna era "Francia" en la columna original y 0 para las otras variables. La nueva columna Country_Russia tiene un valor de 1, mientras que tiene un valor 0 para las otras variables donde el valor de la columna era "Rusia" en la columna original. La nueva columna Country_USA tiene un valor de 1 donde el valor de la columna original era "EE. UU.", Y las otras variables tienen valores de 0. Pandas get_dummies () ahora produjo una nueva variable 0/1 para cada nivel de la columna clasificada anterior, "País."

Ejemplo 3: usando la función get_dummies () y su parámetro drop_first en una columna

Ahora usamos el método get_dummies () en una columna categórica del marco de datos, pero el primer nivel de la columna categórica se elimina. Establecimos el parámetro drop_first = true para hacer esto. Creemos primero un marcado de datos para que podamos aplicar la función get_dummies () a su columna.

Como se puede observar, la columna del curso es categórica y tiene algunos valores faltantes. Ahora, convertimos la columna categórica "curso" en las variables ficticias de los valores 0/1.

Observe que ahora solo hay 2 variables ficticias en la salida: curso_python y curso_react. La variable ficticia de la categoría "Java" no está presente. Cuando el Drop_First se establece en True, el get_dummies () no incluirá la columna ficticia para la primera categoría de la variable. Solo se necesitan variables ficticias k - 1 para transmitir la misma información cuando una variable categórica tiene k categorías mutuamente excluyentes. También podemos incluir una variable ficticia para los valores faltantes especificando el parámetro dummy_na = true.

Puede notar que la función Get_Dummies () también agrega una variable ficticia llamada Course_Nan en la salida. Los otros parámetros de la función también se pueden usar para alterar la salida de DataFrame.

Conclusión

Cubrimos cómo obtener las variables ficticias en pandas en este tutorial. Hemos visto que el get_dummies () se puede usar para obtener las variables ficticias. Hemos visto la sintaxis de la función y sus parámetros para comprender su funcionalidad. Implementamos algunos ejemplos para enseñarle cómo usar la función get_dummies () en Pandas DataFrame and Series para obtener las variables ficticias. Además, hemos visto algunos parámetros de la función get_dummy () para modificar los resultados o el marco de datos de salida.