Método Assign do DataFrame Pandas

Beginner

Introdução

Neste laboratório, aprenderemos como usar o método assign() na biblioteca Pandas em Python. O método assign() permite adicionar novas colunas a um DataFrame e retorna um novo objeto DataFrame com todas as colunas originais, juntamente com as novas. Podemos atribuir novas colunas diretamente ou usando funções ou expressões.

Dicas da 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 a limitações no 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

Primeiro, vamos importar as bibliotecas necessárias: pandas e numpy.

import pandas as pd
import numpy as np

Criar um DataFrame

Em seguida, vamos criar um DataFrame contendo alguns dados de exemplo. Usaremos a função pd.DataFrame() para criar um DataFrame a partir de um dicionário.

data = {'A': [1, 2, 3, 4, 5], 'B': [6, 7, 8, 9, 10]}
df = pd.DataFrame(data)
print(df)

A saída será:

   A   B
0  1   6
1  2   7
2  3   8
3  4   9
4  5  10

Atribuir uma nova coluna ao DataFrame

Agora, vamos atribuir uma nova coluna ao DataFrame usando o método assign(). Podemos atribuir uma nova coluna diretamente especificando o nome da coluna e os valores.

df = df.assign(C=[11, 12, 13, 14, 15])
print(df)

A saída será:

   A   B   C
0  1   6  11
1  2   7  12
2  3   8  13
3  4   9  14
4  5  10  15

Atribuir uma nova coluna usando uma função

Também podemos atribuir uma nova coluna ao DataFrame passando uma função para o método assign(). Esta função receberá o DataFrame como entrada e realizará um cálculo para gerar os valores para a nova coluna. Vamos atribuir uma nova coluna D que calcula o valor de C mais 1.

df = df.assign(D=lambda x: x['C'] + 1)
print(df)

A saída será:

   A   B   C   D
0  1   6  11  12
1  2   7  12  13
2  3   8  13  14
3  4   9  14  15
4  5  10  15  16

Atribuir múltiplas colunas ao DataFrame

Podemos atribuir múltiplas colunas ao DataFrame usando o método assign() várias vezes. Vamos atribuir duas novas colunas E e F ao DataFrame. A coluna E calculará o valor de A mais 1, e a coluna F calculará o valor de B menos 1.

df = df.assign(E=lambda x: x['A'] + 1).assign(F=lambda x: x['B'] - 1)
print(df)

A saída será:

   A   B   C   D   E   F
0  1   6  11  12   2   5
1  2   7  12  13   3   6
2  3   8  13  14   4   7
3  4   9  14  15   5   8
4  5  10  15  16   6   9

Resumo

Neste laboratório, aprendemos como usar o método assign() no Pandas para adicionar novas colunas a um DataFrame. Podemos atribuir novas colunas diretamente ou usando funções ou expressões. Este método nos permite manipular e modificar facilmente nosso DataFrame sem alterar os dados originais.