Python | Serie Pandas.str.get_dummies()

Python es un excelente lenguaje para realizar análisis de datos, principalmente debido al fantástico ecosistema de paquetes de Python centrados en datos. Pandas es uno de esos paquetes y facilita mucho la importación y el análisis de datos.

Pandas str.get_dummies()se usa para separar cada string en la serie de llamadas en el separador pasado. Se devuelve un marco de datos con todos los valores posibles después de dividir cada string. Si el valor de texto en el marco de datos original en el mismo índice contiene la string (nombre de columna/valores divididos), entonces el valor en esa posición es 1; de lo contrario, 0.

Dado que esta es una operación de string, .str debe tener el prefijo cada vez antes de llamar a esta función. De lo contrario, arrojará un error.

Sintaxis: Series.str.get_dummies(sep=’|’)

Parámetros:
sep: valor de string, separador para dividir strings en

Tipo de retorno: marco de datos con valores binarios solamente

Para descargar el conjunto de datos utilizado en los siguientes ejemplos, haga clic aquí.

En los siguientes ejemplos, el marco de datos utilizado contiene datos de algunos empleados. La imagen del marco de datos antes de cualquier operación se adjunta a continuación.

 
Ejemplo #1: Separación de diferentes strings en espacios en blanco.

En este ejemplo, la string en la columna Equipo se dividió en » » (espacio en blanco) y el marco de datos se devuelve con todos los valores posibles después de la división. El valor en el marco de datos devuelto es 1 si la string (nombre de columna) existe en el valor de texto en el mismo índice en el marco de datos anterior.

Python3

# importing pandas
import pandas as pd
  
# making data frame from csv at url
data = pd.read_csv("https://media.geeksforgeeks.org/wp-content/uploads/employees.csv")
  
# making dataframe using get_dummies()
dummies = data["Team"].str.get_dummies(" ")
  
# display
dummies.head(10)

Salida:
como se muestra en la imagen de salida, se puede comparar con la imagen original del marco de datos. Si la string existe en ese mismo índice, entonces el valor es 1; de lo contrario, 0.

 
Puntos importantes:

  • Si la string no es nula, al menos una columna tendrá el valor 1 en el mismo índice.
  • Si el valor es nulo, todas las columnas tendrán un valor de 0 en ese índice (se puede ver en el segundo elemento del ejemplo anterior)
  •  
    Ejemplo n.º 2: división en varios puntos/columna de valor estático

    En este ejemplo, se toma un valor estático para la nueva columna («Hola familia gfg»). Luego se aplica el método get_dummies() y la string se separa en «g». Dado que «g» aparece más de una vez, habrá más de una columna y también los valores en todas las columnas deben ser iguales, ya que la string también es la misma para todas las filas.

    Python3

    # importing pandas
    import pandas as pd
      
    # making data frame from csv at url
    data = pd.read_csv("https://media.geeksforgeeks.org/wp-content/uploads/employees.csv")
      
    # string for new column
    string ="Hello gfg family"
      
    # creating new column
    data["New_column"]= string
      
    # creating dummies
    df = data["New_column"].str.get_dummies("g")
      
    # display
    df.head(10)
    

    Salida:
    como se muestra en la imagen de salida, el nuevo marco de datos tiene 3 columnas y cada fila tiene los mismos valores.

    Publicación traducida automáticamente

    Artículo escrito por Kartikaybhutani y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

    Deja una respuesta

    Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *