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