Pandas: extraindo números de strings
Ao trabalhar com quadros de dados no Pandas, muitas vezes é necessário extrair informações numéricas de células que contêm não -caracteres numéricos. Isso pode ser desafiador, mas o Pandas fornece vários métodos para ajudá-lo a conseguir isso.
Usando str.extract() para extração de números
Um método eficaz para extrair números de strings é str.extract(). Este método permite que você especifique um padrão de expressão regular que define os dados numéricos que você deseja capturar.
Considere o seguinte quadro de dados:
import pandas as pd
import numpy as np
df = pd.DataFrame({'A':['1a',np.nan,'10a','100b','0b'],
})
print(df)
Saída:
A 0 1a 1 NaN 2 10a 3 100b 4 0b
Para extrair os números de cada célula, você pode usar a seguinte expressão regular:
df.A.str.extract('(\d )')
O padrão regex (\d ) captura qualquer sequência de um ou mais dígitos. Os parênteses ao redor do padrão criam um grupo de captura, que é usado para retornar a parte correspondente da string.
Saída:
0 1 1 NaN 2 10 3 100 4 0 Name: A, dtype: object
Como você pode ver, os números desejados foram extraídos com sucesso de cada célula, mesmo aquelas que continham caracteres não numéricos. Observe que este método só funcionará para números inteiros e não para números de ponto flutuante.
Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.
Copyright© 2022 湘ICP备2022001581号-3