String Munging en Pandas Dataframe

En este artículo, vamos a aprender sobre String Munging In Pandas Dataframe . Munging es conocido como limpiar todo lo que estaba desordenado transformándolo. En términos técnicos, podemos decir que transformar los datos en la base de datos en una forma útil.

Ejemplo: « nadie@example.com», se convierte en «nadie en ejemplo punto com»

Acercarse:

Paso 1: importar la biblioteca

Python3

import pandas as pd
import numpy as np
import re as re

Paso 2: crear un marco de datos

Ahora cree un diccionario y páselo a través de pd.DataFrame para crear un Dataframe.

Python3

raw_data = {"first_name": ["Jason", "Molly", "Tina", "Jake", "Amy"],
            "last_name": ["Miller", "Jacobson", "Ali", "Milner", "Cooze"],
            "email": ["jas203@gmail.com", "momomolly@gmail.com", np.NAN,
                      "battler@milner.com", "Ames1234@yahoo.com"]}
  
df = pd.DataFrame(raw_data, columns=["first_name", "last_name", "email"])
print()
print(df)

Paso 3: Aplicación de diferentes operaciones de Munging

Primero, verifique que en la función «correo electrónico» la string contenga «Gmail».

Python3

print(df["email"].str.contains("gmail"))

Ahora queremos separar el correo electrónico en partes de modo que los caracteres antes de «@» se conviertan en una string y después y antes de «.» se convierte en uno Por fin, el resto se convierte en una string.

Python3

pattern = "([A-Z0-9._%+-]+)@([A-Z0-9.-]+)\.([A-Z]{2,4})"
print(df["email"].str.findall(pattern, flags=re.IGNORECASE))

A continuación se muestra la implementación:

Python3

def ProjectPro_Ex_136():
  
    print()
    print('**How we can do string munging in Pandas**')
  
    # loading libraries
    import pandas as pd
    import numpy as np
    import re as re
  
    # Creating dataframe
    raw_data = {'first_name': ['Jason', 'Molly', 'Tina', 'Jake', 'Amy'],
                'last_name': ['Miller', 'Jacobson', 'Ali', 'Milner', 'Cooze'],
                'email': ['jas203@gmail.com', 'momomolly@gmail.com', np.NAN,
                          'battler@milner.com', 'Ames1234@yahoo.com']}
  
    df = pd.DataFrame(raw_data, columns=['first_name', 'last_name', 'email'])
    print()
    print(df)
  
    # Let us find Which string within the 
    # email column contains ‘gmail’
    print()
    print(df['email'].str.contains('gmail'))
  
    # Create a daily expression pattern that
    # breaks apart emails
    pattern = '([A-Z0-9._%+-]+)@([A-Z0-9.-]+)\\.([A-Z]{2,4})'
  
    # Find everything in df.email that contains
    # that pattern
    print()
    print(df['email'].str.findall(pattern, flags=re.IGNORECASE))
  
  
ProjectPro_Ex_136()

Producción:

Publicación traducida automáticamente

Artículo escrito por hemanthvenkata8 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 *