Python | Serie Pandas.str.partition()

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.partition()funciona de manera similar a str.split(). En lugar de dividir la string en cada aparición de separador/delimitador, divide la string solo en la primera aparición. En la función de división, el separador no se almacena en ningún lugar, solo el texto que lo rodea se almacena en una nueva lista/marco de datos. Pero en el str.partition() método, el separador también se almacena.

.str debe tener el prefijo cada vez antes de llamar a este método para diferenciarlo de la función predeterminada de Python; de lo contrario, arrojará un error.

Sintaxis: Series.str.partition(pat=’ ‘, expand=True)

Parámetros:

pat: valor de string, separador o delimitador para separar la string en. El valor predeterminado es ‘ ‘ (espacio en blanco)
expandir: valor booleano, devuelve un marco de datos con un valor diferente en diferentes columnas si es verdadero. De lo contrario, devuelve una serie con una lista de strings. El valor predeterminado es Verdadero.

Tipo de devolución: serie de lista o marco de datos según el parámetro de expansión

Para descargar el CSV utilizado en el código, 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 n.º 1: dividir una string en una lista

En este ejemplo, la columna Nombre se divide en la primera aparición de ‘,’. El parámetro de expansión se mantiene Falso para expandirlo en una lista en lugar de Marco de datos.

# importing pandas module
import pandas as pd
  
# making data frame
data = pd.read_csv("https://media.geeksforgeeks.org/wp-content/uploads/chicago.csv")
  
# removing null values if any to avoid errors
data.dropna(how ='all', inplace = True)
  
# displaying top 5 rows of data
data.head()
  
# splitting at ', ' into list
data["Name"]= data["Name"].str.partition(", ", False)
  
# display
data

Salida:
como se muestra en la imagen de salida, la columna Nombre se dividió en una lista en la primera aparición de ‘,’. Como se puede ver, ‘,’ también se almacena como un elemento separado de la lista.

Nota: No se confunda con dos comas en la lista, una es elemento y la otra es separador de elementos.

 
Ejemplo n.º 2: dividir una string en un marco de datos

En este ejemplo, el Nombre y el Apellido se separan de la columna Nombre y se almacenan en columnas separadas en el marco de datos.

# importing pandas module
import pandas as pd
  
# making data frame
data = pd.read_csv("https://media.geeksforgeeks.org/wp-content/uploads/chicago.csv")
  
# removing null values if any to avoid errors
data.dropna(how ='all', inplace = True)
  
# displaying top 5 rows of data
data.head()
  
# splitting at ', ' into Data frame
new = data["Name"].str.partition(", ", True)
  
# making separate first name column from new data frame
data["First Name"]= new[2]
   
# making separate last name column from new data frame
data["Last Name"]= new[0]
   
# Dropping old Name columns
data.drop(columns =["Name"], inplace = True)
   
# df display
data

Salida:
como se muestra en la imagen de salida, la columna Nombre se separó en un marco de datos con 3 columnas (una de string antes de la coma y una de string después de la coma). Después de que ese marco de datos se usó para crear nuevas columnas en el mismo marco de datos. La columna Nombre antiguo se eliminó utilizando el método .drop().

Nuevo marco

 
de datos- Marco de datos con columnas añadidas-

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 *