Pandas: extraer números de cadenas
Cuando se trabaja con marcos de datos en Pandas, a menudo es necesario extraer información numérica de celdas que no contienen -caracteres numéricos. Esto puede ser un desafío, pero Pandas proporciona varios métodos para ayudarlo a lograrlo.
Uso de str.extract() para la extracción de números
Un método efectivo para extraer números de cadenas es str.extract(). Este método le permite especificar un patrón de expresión regular que define los datos numéricos que desea capturar.
Considere el siguiente marco de datos:
import pandas as pd
import numpy as np
df = pd.DataFrame({'A':['1a',np.nan,'10a','100b','0b'],
})
print(df)
Salida:
A 0 1a 1 NaN 2 10a 3 100b 4 0b
Para extraer los números de cada celda, puede utilizar la siguiente expresión regular:
df.A.str.extract('(\d )')
El patrón de expresiones regulares (\d ) captura cualquier secuencia de uno o más dígitos. Los paréntesis alrededor del patrón crean un grupo de captura, que se utiliza para devolver la parte coincidente de la cadena.
Salida:
0 1 1 NaN 2 10 3 100 4 0 Name: A, dtype: object
Como puede ver, los números deseados se han extraído con éxito de cada celda, incluso aquellos que contenían caracteres no numéricos. Tenga en cuenta que este método solo funcionará para números enteros y no para números de punto flotante.
Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.
Copyright© 2022 湘ICP备2022001581号-3