DEV Community

Francisco Júnior
Francisco Júnior

Posted on • Edited on

Utilização e Aplicação do Método melt() no Pandas

O pandas é uma biblioteca de código aberto para análise de dados em Python. Uma das funções mais poderosas do pandas é o método melt(), que permite transformar um DataFrame no formato wide para o formato long, tornando os dados mais organizados e facilitando a manipulação. Neste artigo, exploraremos em detalhes o método melt(), explicando seu propósito, sintaxe e exemplos de aplicação para uma melhor compreensão e utilização no processamento de dados.

O método melt() é uma função-chave no pandas que desempenha um papel fundamental na reestruturação de dados. É usado principalmente para transformar um DataFrame de formato wide para um formato longo, facilitando análises posteriores. Isso é especialmente útil quando você tem um conjunto de dados com múltiplas colunas que representam diferentes categorias ou variáveis.

Propósito do Método melt() no Pandas:
O método melt() é utilizado para "derreter" ou "unpivot" um DataFrame, ou seja, ele converte as colunas em linhas, criando uma representação mais organizada e estruturada dos dados. Isso é particularmente útil quando os dados estão no formato wide, onde cada coluna representa uma variável diferente e cada linha representa uma observação específica. Ao aplicar o melt(), podemos reunir as informações de diferentes colunas em uma única coluna e, ao mesmo tempo, criar colunas adicionais que representam a origem das informações. Isso torna os dados mais flexíveis e mais fáceis de analisar.

Sintaxe do Método melt() no Pandas:
A sintaxe do método melt() é a seguinte:

pandas.melt(frame, id_vars=None, value_vars=None, var_name=None, value_name='value', ...)
Enter fullscreen mode Exit fullscreen mode
  • frame: O DataFrame que será derretido.
  • id_vars: Uma lista (ou único valor) das colunas que você deseja manter fixas, enquanto derrete as demais colunas.
  • value_vars: Uma lista (ou único valor) das colunas que você deseja derreter (colunas a serem transformadas em linhas).
  • var_name: O nome da nova coluna que conterá os nomes das colunas derretidas.
  • value_name: O nome da nova coluna que conterá os valores das colunas derretidas.

Exemplos de Utilização do Método melt() no Pandas:

Vamos utilizar um exemplo simples para ilustrar o uso do método melt(). Suponha que temos um DataFrame com informações de alunos, onde cada coluna representa uma matéria e o valor em cada célula é a nota do aluno naquela matéria. O DataFrame está no formato wide, como segue:

import pandas as pd

data = {
    'Nome': ['João', 'Maria', 'Pedro'],
    'Matemática': [80, 90, 70],
    'História': [70, 65, 80],
    'Geografia': [85, 75, 90]
}

df = pd.DataFrame(data)
print(df)
Enter fullscreen mode Exit fullscreen mode

A saída será:

    Nome  Matemática  História  Geografia
0   João         80        70         85
1  Maria         90        65         75
2  Pedro         70        80         90
Enter fullscreen mode Exit fullscreen mode

Agora, queremos derreter o DataFrame para transformá-lo em formato longo, onde cada linha representa a nota de um aluno em uma matéria específica. Podemos fazer isso usando o método melt() da seguinte forma:

df_melted = df.melt(id_vars='Nome', value_vars=['Matemática', 'História', 'Geografia'], var_name='Matéria', value_name='Nota')
print(df_melted)
Enter fullscreen mode Exit fullscreen mode

A saída será:

    Nome      Matéria  Nota
0   João  Matemática    80
1  Maria  Matemática    90
2  Pedro  Matemática    70
3   João     História    70
4  Maria     História    65
5  Pedro     História    80
6   João    Geografia    85
7  Maria    Geografia    75
8  Pedro    Geografia    90
Enter fullscreen mode Exit fullscreen mode

Observamos que o DataFrame foi transformado em formato longo, com as colunas de matérias derretidas na coluna 'Matéria' e as notas na coluna 'Nota'.

O método melt() no pandas é uma ferramenta poderosa para reestruturar e organizar dados em DataFrames. Ele nos permite transformar um DataFrame no formato wide para o formato longo, facilitando análises e visualizações de dados. O melt() é especialmente útil quando queremos analisar dados com múltiplas variáveis ou categorias. Através de exemplos práticos, vimos como aplicar o melt() para melhorar a organização de dados e tornar as informações mais acessíveis.

O pandas é uma biblioteca extremamente versátil e o melt() é apenas uma das muitas funcionalidades poderosas disponíveis. Através da combinação de diferentes métodos do pandas, podemos realizar análises complexas e obter insights valiosos a partir de nossos dados.

Top comments (0)