Pandas str reemplazo

Pandas str reemplazo
Los valores dentro de DataFrame u otros objetos de Pandas se pueden reemplazar utilizando el método Reemplazar () en PANDAS. En Python, podemos usar este método para la manipulación de datos y la limpieza de los datos. Este tutorial le enseñará cómo podemos reemplazar los valores o datos del marco de datos dado utilizando el PANDAS STR.función reemplazar (). En DataFrame, podemos reemplazar los datos de cadena e incluso las expresiones regulares (regex) utilizando Pandas DataFrame.stri.función reemplazar (). Similar a la función reemplazar () de Python, el STR.El método reemplazar () en pandas también funciona en la serie.

stri.reemplazar()

El método STR.reemplazar () se usa para sustituir una cadena o regex con un valor de cadena o datos. La función reemplazar () puede sustituir cualquier cosa con cualquier otra cosa, también las cadenas y regex. Echa un vistazo al STR.reemplazar () sintaxis de la función.

Sintaxis

pandas.Serie.stri.Reemplazar (Pat, Repl, N = -1, Case = None, Flags = 0, Regex = None)

Parámetros:

  1. palmadita: compilado regex o str. Las expresiones regulares o las secuencias de caracteres se pueden usar como cadenas.
  2. replicar: llamable o str. Sustituye cadena o llamable. El llamable debe devolver una cadena de reemplazo para que se use después de recibir el objeto de coincidencia de regex.
  3. norte: Por defecto, establecido como -1, int. Reemplazos totales a realizar.
  4. caso: Ninguno de forma predeterminada, bool. Descubre si "reemplazar" es sensible al caso:
    1. Sensible en mayúsculas.
    2. Para la insensibilidad del caso, establecido en falso
    3. Si PAT se especifica como un Regex compilado, se puede establecer.
  5. banderas: 0 o ninguna bandera de forma predeterminada, int. Banderas en el módulo regex, como RE.IGNORAR CASO. Si PAT se especifica como un Regex compilado, no se puede establecer.
  6. regular: Verdadero por defecto, bool. Identifica si una expresión regular está presente en el patrón aprobado: si es cierto, el patrón aprobado se considera una expresión regular. De lo contrario, el patrón se trata como una cadena literal.

Escenario 1: STR.Reemplazar () en DataFrame

Aplicaremos esta función en las columnas Pandas DataFrame para reemplazar valores únicos/múltiples. Veremos varios ejemplos en este escenario.

Sintaxis:
Soltero -

DataFrame_Object ['columna'].stri.reemplazar ('viejo', 'nuevo')

Múltiple-

DataFrame_Object ['columna'].reemplazar ([valores antiguos ...], [nuevos valores ...])

Aquí, antiguo es la cadena existente y la nueva es la nueva cadena que reemplaza la existente.

Ejemplo 1: reemplazar una sola cadena
En este ejemplo, tenemos un marco de datos llamado "registros" que tienen columnas "químicas", "alfabeto" y "valencia". Reemplace el 'hidrógeno' con "químico de hidrógeno" en la columna química.

importación de pandas
registros = pandas.DataFrame ('químico': ['hidrógeno', 'nitrógeno', 'oxígeno', 'hidrógeno', 'sodio']],
'Alphabet': ['hy', 'n', 'o', 'hy', 'na'],
'Valencia': [10, 2, 3, 4, 11])
Imprimir (registros)
# Reemplazar 'hidrógeno' con "químico de hidrógeno" en la columna química.
registros ['químicos'] = registros ['químicos'].stri.reemplazar(
'Hydrogen', 'Hydrogen Chemical')
imprimir()
Imprimir (registros)

Producción:

Explicación
Hay dos cadenas con 'hidrógeno' en la columna química. Entonces, ambos fueron reemplazados por "químicos de hidrógeno".

Ejemplo 2: Reemplazar un solo carácter
En este ejemplo, tenemos un marco de datos llamado "registros" que tienen columnas "químicas" y "alfabeto". Reemplace 'O' con "O" en la columna del alfabeto.

importación de pandas
registros = pandas.DataFrame ('químico': ['hidrógeno', 'nitrógeno', 'oxígeno', 'hidrógeno']],
'Alphabet': ['hy', 'n', 'o', 'no'])
Imprimir (registros)
# Reemplazar 'O' con "O" en la columna del alfabeto.
registros ['alfabet'] = registros ['alfabet'].stri.Reemplazar ('O', 'O')
imprimir()
Imprimir (registros)

Producción:

Hay dos caracteres en la columna del alfabeto. Entonces, ambos fueron reemplazados por "O".

Ejemplo 3: Reemplazar múltiples cadenas
Reemplacemos 'hidrógeno' con 'hidrógeno', 'oxígeno' con 'oxi' y 'azufre' con 's' en la columna química

importación de pandas
registros = pandas.DataFrame ('químico': ['hidrógeno', 'nitrógeno', 'oxígeno', 'hidrógeno', 'azufre'],
'Alphabet': ['hy', 'n', 'o', 'no', 'sul'])
Imprimir (registros)
# Reemplazar valores múltiples a la vez.
registros ['químicos'] = registros ['químicos'].reemplazar (['hidrógeno', 'oxígeno', 'azufre'], ['hidrógeno', 'oxy', 's'])
imprimir()
Imprimir (registros)

Producción:

2 Las cadenas de "hidrógeno" se reemplazan con "hidrógeno", 1 "oxígeno" y "azufre" se reemplazan con "oxi" y "s".

Ejemplo 4: Reemplace múltiples cadenas usando el diccionario
Reemplazamos 'hidrógeno' con 'ácido' y 'azufre' con 'base' en la columna química

importación de pandas
registros = pandas.DataFrame ('químico': ['hidrógeno', 'nitrógeno', 'oxígeno', 'hidrógeno', 'azufre'],
'Alphabet': ['hy', 'n', 'o', 'no', 'sul'])
Imprimir (registros)
# Reemplazar valores múltiples a la vez.
registros ['químicos'] = registros ['químicos'].reemplazar ('hidrógeno': 'ácido', 'azufre': 'base')
imprimir()
Imprimir (registros)

Producción:

2 Las cadenas de "hidrógeno" se reemplazan con "ácido" y 1 "azufre" se reemplaza con "base".

Escenario 2: STR.Reemplazar () en serie

Permítanos crear una serie de pandas y reemplazar cadenas con nuevas cuerdas con un patrón regex. Podemos especificar la subcadena que debe reemplazarse dentro de la RE.método compile () y esto se puede pasar dentro del método reemplazar () como el primer parámetro y la nueva cadena como el segundo parámetro que reemplaza la subcadena.

Sintaxis:

Single - series_object.stri.reemplazar (RE.compilar ("viejo)," nuevo ")

Aquí, antiguo es la cadena existente y la nueva es la nueva cadena que reemplaza la existente.

Ejemplo: reemplazar una sola cadena
En este ejemplo, tenemos una serie llamada "Record" que tiene 4 cuerdas.
Reemplace la subcadena - "Gen" con "y".

importación de pandas
importar
# Crear serie Pandas con 4 cuerdas
registro = pandas.Serie (['Hydrogen', 'Nitrógeno', 'hy', 'n'])
# Reemplace la subcadena - "Gen" con "y".
imprimir (registro.stri.reemplazar (RE.compilar ("gen"), "y"))
imprimir()
# Reemplazar la subcadena - "Gen" con "y" ignorando el caso.
imprimir (registro.stri.reemplazar (RE.compilar ("gen", flags = re.Ignorecase), "y")

Producción:

Explicación

  1. En la primera salida, no estamos ignorando la sensibilidad a los casos. Entonces, "Gen" y "Gen" son diferentes. Como "gen" no existe en la serie, no se realiza ningún reemplazo.
  2. En la segunda salida, estamos ignorando la sensibilidad de los casos al establecer "FLAGS = RE.IGNORAR CASO". Entonces, "gen" y "gen" son los mismos. Se reemplaza con "y". Por lo tanto, las cadenas actualizadas son: "Hydroand" y "Nitroand".

Conclusión

Le enseñamos cómo sustituir/reemplazar los valores de cadena en pandas. Hemos discutido la sintaxis del STR.Método reemplazar () para comprender su funcionalidad. Implementamos algunos ejemplos en este tutorial para enseñarle cómo sustituir los valores de las cadenas con datos de cadena, reemplazar un carácter particular, reemplazar una secuencia de subcadena o caracteres con los valores de cadena y reemplazar múltiples cadenas de la columna DataFrame usando STR.Reemplazar () y reemplazar () funciones. Además, cómo reemplazar las cadenas de la serie usando regex.