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.
El método Pandas str.slice()
se utiliza para dividir substrings de una string presente en el objeto de la serie Pandas. Es muy similar al principio básico de Python de cortar objetos que funciona en [start:stop:step], lo que significa que requiere tres parámetros, dónde comenzar, dónde terminar y cuántos elementos omitir.
Dado que este es un método de string de pandas, .str debe tener el prefijo cada vez antes de llamar a este método. De lo contrario, da un error.
Sintaxis: Series.str.slice(start=Ninguno, stop=Ninguno, step=Ninguno)
Parámetros:
inicio: valor int, dice dónde comenzar a cortar
stop: valor int, dice dónde terminar el corte
paso: valor int, dice cuántos caracteres avanzar durante el corteTipo de valor devuelto: serie con substrings divididas
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 jugadores de la NBA. La imagen del marco de datos antes de cualquier operación se adjunta a continuación.
Ejemplo n.º 1:
en este ejemplo, la columna de salario se ha dividido para obtener valores antes del decimal. Por ejemplo, queremos hacer algunas operaciones matemáticas y para eso necesitamos datos enteros, por lo que la columna de salario se dividirá hasta el penúltimo elemento (posición -2).
Dado que la columna de salario se importa como tipo de datos float64, primero se convierte en una string mediante el método .astype().
# importing pandas module import pandas as pd # making data frame data = pd.read_csv("https://media.geeksforgeeks.org/wp-content/uploads/nba.csv") # removing null values to avoid errors data.dropna(inplace = True) # start stop and step variables start, stop, step = 0, -2, 1 # converting to string data type data["Salary"]= data["Salary"].astype(str) # slicing till 2nd last element data["Salary (int)"]= data["Salary"].str.slice(start, stop, step) # display data.head(10)
Salida:
como se muestra en la imagen de salida, la string se ha dividido y la string antes del decimal se almacena en una nueva columna.
Nota: este método no tiene ningún parámetro para manejar valores nulos y, por lo tanto, ya se eliminaron con el método .dropna().
Ejemplo n.º 2:
en este ejemplo, la columna de nombre se divide y el parámetro de paso se mantiene en 2. Por lo tanto, se dividirán dos caracteres durante el corte.
# importing pandas module import pandas as pd # making data frame data = pd.read_csv("https://media.geeksforgeeks.org/wp-content/uploads/nba.csv") # removing null values to avoid errors data.dropna(inplace = True) # start stop and step variables start, stop, step = 0, -2, 2 # slicing till 2nd last element data["Name"]= data["Name"].str.slice(start, stop, step) # display data.head(10)
Salida:
como se puede ver en la imagen de salida, el nombre se cortó y se omitieron 2 caracteres durante el corte.
Publicación traducida automáticamente
Artículo escrito por Kartikaybhutani y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA