Método Pivot do DataFrame Pandas

Beginner

Introdução

Neste laboratório, aprenderemos como usar o método pivot() na biblioteca Pandas do Python. O método pivot() permite transformar ou remodelar um DataFrame, alterando a organização dos valores do índice e das colunas.

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ê.

Importando pandas e criando o DataFrame

  • Comece importando a biblioteca pandas e criando um DataFrame usando a função pd.DataFrame().
import pandas as pd

data = {
  'crop': ['Rice', 'Wheat', 'Rice', 'Wheat', 'Rice', 'Wheat'],
  'state': ['karnataka', 'karnataka', 'Tamilnadu', 'Tamilnadu', 'Kerala', 'Kerala'],
  'Temperature': [29, 29, 31, 31, 25, 25],
  'Humidity': [50, 50, 62, 62, 45, 45]
}

df = pd.DataFrame(data)
print(df)
  • Isso criará um DataFrame com colunas para 'crop', 'state', 'Temperature' e 'Humidity'.

Remodelando o DataFrame usando o método pivot()

  • Para remodelar o DataFrame, podemos usar o método pivot() e especificar os nomes do índice e das colunas.
df_pivot = df.pivot(index='crop', columns='state')
print(df_pivot)
  • O método pivot() reorganizará o DataFrame, usando 'crop' como o novo índice e 'state' como a nova coluna. O DataFrame resultante terá 'Temperature' e 'Humidity' como colunas para cada combinação de 'crop' e 'state'.

Especifique o parâmetro 'values' para selecionar colunas específicas

  • Se quisermos incluir apenas colunas específicas no DataFrame remodelado, podemos usar o parâmetro values no método pivot().
df_pivot_specific = df.pivot(index='crop', columns='state', values='Temperature')
print(df_pivot_specific)
  • O DataFrame resultante incluirá apenas a coluna 'Temperature' para cada combinação de 'crop' e 'state'.

Lidando com duplicatas no DataFrame

  • Se o DataFrame contiver duplicatas, o método pivot() irá levantar um ValueError. Em tais casos, precisamos garantir que o DataFrame não tenha entradas duplicadas antes de remodelá-lo.
df_duplicated = pd.DataFrame({'crop': ['Rice', 'Rice', 'Wheat', 'Wheat', 'Rice', 'Wheat'],
                              'state': ['karnataka', 'karnataka', 'Tamilnadu', 'Tamilnadu', 'Kerala', 'Kerala'],
                              'Temperature': [29, 29, 31, 31, 25, 25],
                              'Humidity': [50, 50, 62, 62, 45, 45]})

df_duplicated_pivot = df_duplicated.pivot(index='crop', columns='state', values='Temperature')
print(df_duplicated_pivot)
  • Neste exemplo, o DataFrame contém entradas duplicadas para a combinação de 'crop' e 'state', o que resultará em um ValueError ao usar o método pivot().

Resumo

Este laboratório abordou o uso básico do método pivot() na biblioteca Python Pandas. O método pivot() permite transformar ou remodelar um DataFrame, alterando a organização dos valores de índice e coluna. Aprendemos como remodelar um DataFrame, selecionar colunas específicas e lidar com duplicatas. O método pivot() é uma ferramenta poderosa para manipulação e análise de dados.