Como Transformar uma Coluna de String em Números em um DataFrame
A conversão de colunas que contêm strings representando números em um DataFrame é uma tarefa comum em ciência de dados. Isso é essencial para análises estatísticas e operações matemáticas. Neste tutorial, vamos explorar métodos eficazes para realizar essa conversão utilizando a biblioteca pandas em Python.
Entendendo o DataFrame
Um DataFrame é uma estrutura de dados bidimensional, semelhante a uma tabela SQL ou uma planilha do Excel, que armazena dados em linhas e colunas. O pandas fornece uma maneira fácil de manipular e transformar esses dados. Para começarmos, precisamos importar a biblioteca pandas:
import pandas as pd
Após a importação, podemos criar um DataFrame de exemplo:
dados = {
'preco': ['10.50', '20.75', '30.00'],
'produto': ['A', 'B', 'C']
}
df = pd.DataFrame(dados)
print(df)
Neste código, criamos um DataFrame com preços em formato de string. O comando print(df)
exibirá:
preco produto
0 10.50 A
1 20.75 B
2 30.00 C
Aqui, a coluna 'preco' contém valores que, embora representem números, estão armazenados como strings. Para realizar cálculos, precisamos convertê-los para um tipo numérico.
Convertendo Strings em Números
O método mais simples para converter uma coluna de strings em números no pandas é usar a função pd.to_numeric()
. Vamos aplicar isso à coluna 'preco':
df['preco'] = pd.to_numeric(df['preco'])
print(df)
Após a conversão, o DataFrame ficará assim:
preco produto
0 10.50 A
1 20.75 B
2 30.00 C
Agora, a coluna 'preco' é do tipo numérico, permitindo operações matemáticas.
Tratando Erros de Conversão
Se a coluna contiver valores que não podem ser convertidos, o pandas retornará um erro. Para lidar com isso, podemos usar o parâmetro errors='coerce'
, que transformará valores inválidos em NaN:
dados_incorretos = {
'preco': ['10.50', 'erro', '30.00'],
}
df_incorreto = pd.DataFrame(dados_incorretos)
df_incorreto['preco'] = pd.to_numeric(df_incorreto['preco'], errors='coerce')
print(df_incorreto)
O resultado será:
preco
0 10.50
1 NaN
2 30.00
Verificando o Tipo de Dados
Após a conversão, podemos verificar o tipo de dados da coluna utilizando o atributo dtypes
:
print(df.dtypes)
Isso nos dará:
preco float64
produto object
dtype: object
Resumo
Neste guia, aprendemos como transformar colunas de string em números em um DataFrame usando pandas. Vimos como criar um DataFrame, realizar a conversão utilizando pd.to_numeric()
, tratar erros de conversão e verificar os tipos de dados. Esses passos são fundamentais para garantir que nossos dados estejam prontos para análise.
Conclusão
A conversão de tipos de dados é uma habilidade essencial para qualquer cientista de dados. A biblioteca pandas facilita esse processo, permitindo que você se concentre na análise e interpretação dos dados, sem se preocupar com a formatação inicial. Agora que você sabe como transformar colunas de string em números, está um passo mais próximo de se tornar um especialista em manipulação de dados com Python.
Entenda a Importância da Conversão de Dados em Ciência de Dados
A conversão de colunas de string em números é uma habilidade crucial para quem trabalha com dados. Isso não apenas facilita a realização de análises, mas também permite a aplicação de métodos estatísticos e algoritmos de machine learning. Uma compreensão sólida dessa transformação é fundamental para qualquer cientista de dados. Este tutorial oferece um guia prático para realizar essa conversão com eficácia e eficiência, preparando você para enfrentar desafios mais complexos no futuro.
Algumas aplicações:
- Análise de dados financeiros
- Visualização de dados em gráficos
- Modelagem preditiva
Dicas para quem está começando
- Familiarize-se com a biblioteca pandas e suas funções básicas.
- Pratique a leitura de arquivos CSV e a conversão de tipos.
- Realize sempre a verificação de dados após a transformação.
Contribuições de Gustavo Ferraz