Método Apply em DataFrame Pandas

Beginner

Introdução

Neste laboratório, aprenderemos como usar o método apply() na biblioteca Pandas para Python. O método apply() permite aplicar uma função a cada linha ou coluna de um DataFrame, sendo útil para realizar cálculos ou transformações em nossos dados.

Dicas para a VM

Após a inicialização da VM, clique no canto superior esquerdo para mudar para a aba Notebook e acessar o Jupyter Notebook para praticar.

Às vezes, pode ser necessário aguardar alguns segundos para que o Jupyter Notebook termine de carregar. A validação das operações não pode ser automatizada devido às limitações do Jupyter Notebook.

Se você enfrentar problemas durante o aprendizado, sinta-se à vontade para perguntar ao Labby. Forneça feedback após a sessão, e resolveremos o problema prontamente para você.

Importar as bibliotecas necessárias

Para começar, precisamos importar a biblioteca Pandas, que fornece o objeto DataFrame e o método apply(). Também podemos importar outras bibliotecas, se necessário, para nossos cálculos.

import pandas as pd

Criar um DataFrame

Em seguida, vamos criar um DataFrame para trabalhar. Podemos definir os dados usando uma lista Python ou um dicionário. Para simplificar, vamos usar um dicionário onde as chaves representam os nomes das colunas e os valores representam os dados.

data = {
    'Name': ['John', 'Emma', 'David', 'Mary'],
    'Age': [25, 30, 35, 40],
    'Salary': [50000, 60000, 70000, 80000]
}
df = pd.DataFrame(data)
print(df)

Definir uma função

Agora, vamos definir uma função que podemos aplicar ao nosso DataFrame. Esta função receberá um único parâmetro, que será uma linha ou uma coluna do DataFrame.

def double(x):
    return x * 2

Aplicar a função a uma coluna

Podemos usar o método apply() para aplicar nossa função definida a uma coluna do DataFrame. Neste exemplo, vamos aplicar a função double() à coluna 'Salary'.

df['Salary'] = df['Salary'].apply(double)
print(df)

Aplicar a função a uma linha

Também podemos aplicar nossa função a uma linha do DataFrame especificando axis=1 no método apply(). Neste exemplo, vamos aplicar a função double() a cada linha do DataFrame.

df = df.apply(double, axis=1)
print(df)

Aplicar uma função lambda

Em vez de definir uma função separada, podemos usar uma função lambda embutida com o método apply(). Uma função lambda é uma pequena função anônima que pode receber qualquer número de argumentos e retornar um resultado. Neste exemplo, vamos aplicar uma função lambda à coluna 'Age' para calcular o quadrado de cada valor.

df['Age'] = df['Age'].apply(lambda x: x ** 2)
print(df)

Resumo

Neste laboratório, aprendemos como usar o método apply() no Pandas para aplicar uma função a cada linha ou coluna de um DataFrame. Vimos como definir uma função e aplicá-la a uma coluna ou linha, bem como como usar uma função lambda embutida com o método apply(). O método apply() é uma ferramenta poderosa para realizar cálculos ou transformações em nossos dados, e pode ajudar a simplificar nossas tarefas de análise de dados.