Neste post, vamos explorar como realizar operações aritméticas no Pandas, uma biblioteca Python amplamente utilizada para análise de dados. Executar operações aritméticas em DataFrames é uma tarefa comum e essencial para muitas análises de dados. Vamos criar um DataFrame de exemplo e abordar várias técnicas para realizar operações aritméticas utilizando métodos do Pandas.
Sumário
O que são Operações Aritméticas?
Operações aritméticas são cálculos matemáticos básicos que envolvem adição, subtração, multiplicação e divisão. No contexto de análise de dados, essas operações podem ser realizadas em colunas inteiras de um DataFrame para transformar ou agregar dados de maneira útil. O Pandas facilita a execução dessas operações com uma sintaxe intuitiva e eficiente.
Realizando Operações Aritméticas no Pandas
Criando um DataFrame com Dados Numéricos
Vamos começar criando um DataFrame simples que contém dados numéricos:
# Operações Aritméticas no Pandasimport pandas as pd
data = {
'A': [10, 20, 30, 40],
'B': [1, 2, 3, 4],
'C': [5, 6, 7, 8]
}
df = pd.DataFrame(data)
Adição de Colunas
Podemos somar colunas diretamente no Pandas:
# Operações Aritméticas no Pandas
df['A+B'] = df['A'] + df['B']
Subtração de Colunas
Para subtrair colunas:
# Operações Aritméticas no Pandas
df['A-B'] = df['A'] - df['B']
Multiplicação de Colunas
Para multiplicar colunas:
# Operações Aritméticas no Pandas
df['A*B'] = df['A'] * df['B']
Divisão de Colunas
Para dividir colunas:
# Operações Aritméticas no Pandas
df['A/B'] = df['A'] / df['B']
Operações com Constantes
Também podemos realizar operações aritméticas entre colunas e constantes:
df['A+10'] = df['A'] + 10
df['B*2'] = df['B'] * 2
Operações Aritméticas com Funções do Pandas
Aplicando Funções NumPy
O Pandas integra-se bem com o NumPy, permitindo aplicar funções aritméticas mais complexas:
import numpy as np
df['sqrt_A'] = np.sqrt(df['A'])
df['log_B'] = np.log(df['B'])
Usando o Método apply()
O método apply()
permite aplicar funções personalizadas a colunas ou linhas de um DataFrame:
df['A^2'] = df['A'].apply(lambda x: x**2)
Operações em Múltiplas Colunas
Podemos realizar operações aritméticas em múltiplas colunas simultaneamente:
df['Sum'] = df[['A', 'B', 'C']].sum(axis=1)
df['Mean'] = df[['A', 'B', 'C']].mean(axis=1)
Operações Aritméticas com Séries Temporais
Se estivermos trabalhando com dados temporais, podemos realizar operações aritméticas entre colunas de diferentes DataFrames, alinhando pelos índices de tempo:
data1 = {'Data': pd.date_range(start='1/1/2023', periods=4), 'Valor1': [1, 2, 3, 4]}
data2 = {'Data': pd.date_range(start='1/1/2023', periods=4), 'Valor2': [10, 20, 30, 40]}
df1 = pd.DataFrame(data1).set_index('Data')
df2 = pd.DataFrame(data2).set_index('Data')
df_combined = df1 + df2
Operações Aritméticas Condicionais
Uso de where
e mask
O Pandas oferece funções como where
e mask
para realizar operações aritméticas condicionais. A função where
aplica uma condição e mantém os valores que atendem à condição, substituindo os valores que não atendem por outro valor especificado.
- Usando
where
para aplicar uma condição:
df['A_cond'] = df['A'].where(df['A'] > 20, other=0)
Isso substitui os valores na coluna ‘A’ que são menores ou iguais a 20 por 0.
A função mask
é o inverso de where
, ou seja, substitui os valores que atendem à condição por outro valor especificado.
- Usando
mask
para aplicar uma condição:
df['B_cond'] = df['B'].mask(df['B'] < 3, other=100)
Isso substitui os valores na coluna ‘B’ que são menores que 3 por 100.
Uso de np.where
O NumPy também oferece a função np.where
, que pode ser utilizada para operações condicionais:
df['C_cond'] = np.where(df['C'] % 2 == 0, 'Par', 'Ímpar')
Isso verifica se os valores na coluna ‘C’ são pares ou ímpares e substitui por ‘Par’ ou ‘Ímpar’ respectivamente.
Operações Condicionais com Múltiplas Condições
Podemos aplicar múltiplas condições utilizando operadores lógicos:
df['multi_cond'] = np.where((df['A'] > 20) & (df['B'] < 3), 'Sim', 'Não')
Isso retorna ‘Sim’ para linhas onde ‘A’ é maior que 20 e ‘B’ é menor que 3, e ‘Não’ caso contrário.
Links Úteis e Mais Conteúdo
Para mais informações sobre como utilizar o Pandas para análise de dados, confira outros conteúdos no meu blog:
- Filtrar Dados no Pandas
- NDVI no Google Earth Engine
- GeoParquet e DuckDB
- Vantagens de Aprender Python
- Análise de Dados com Pandas
- Como Criar Gráfico no Python
- Estatística Descritiva no Python
Considerações Finais
Espero que este guia tenha sido útil para aprender como realizar operações aritméticas no Pandas. A prática é essencial para dominar essas técnicas, então encorajo você a experimentar e aplicar esses métodos em seus próprios projetos de análise de dados.
Para aprimorar suas habilidades com o Pandas e se tornar mais eficiente na manipulação de dados, é importante também fortalecer sua compreensão em Python. Recomendamos o livro “Fundamentos em Python: Para Iniciantes em Programação e Computação”, disponível na Amazon, que oferece uma introdução abrangente ao Python.
Junte-se à nossa comunidade no Twitter e inscreva-se no nosso canal do YouTube para acessar mais tutoriais, dicas e recursos. Continue praticando e explorando novas maneiras de manipular dados com o Pandas, e fique atento para mais guias e tutoriais que compartilharemos.