Criação de DataFrames Pandas

PandasBeginner
Pratique Agora

Introdução

Bem-vindo ao mundo da manipulação de dados com Pandas! Um DataFrame é uma estrutura de dados tabular bidimensional, mutável em tamanho e potencialmente heterogênea, com eixos rotulados (linhas e colunas). É uma das estruturas de dados mais utilizadas na análise de dados moderna.

Neste laboratório, você aprenderá os métodos fundamentais para criar um DataFrame Pandas. Começaremos criando um DataFrame a partir de um simples dicionário Python e, em seguida, exploraremos como personalizar suas colunas e índice. Você realizará todas as tarefas dentro do WebIDE, escrevendo e executando scripts Python.

Este é um Lab Guiado, que fornece instruções passo a passo para ajudá-lo a aprender e praticar. Siga as instruções cuidadosamente para completar cada etapa e ganhar experiência prática. Dados históricos mostram que este é um laboratório de nível iniciante com uma taxa de conclusão de 89%. Recebeu uma taxa de avaliações positivas de 100% dos estudantes.

Criar DataFrame a partir de dicionário

Nesta etapa, você aprenderá o método mais comum para criar um DataFrame Pandas: a partir de um dicionário Python. Ao usar um dicionário, as chaves se tornam os nomes das colunas e os valores (que geralmente são listas ou arrays) se tornam os dados nessas colunas.

Primeiro, abra o arquivo main.py no explorador de arquivos no lado esquerdo do seu WebIDE.

Agora, adicione o seguinte código ao arquivo main.py. Este código importa a biblioteca Pandas e define um dicionário com dados de alunos. Em seguida, usa pd.DataFrame() para converter o dicionário em um DataFrame e imprime o resultado.

import pandas as pd

## Dados em um dicionário
student_data = {
    'Name': ['Alice', 'Bob', 'Charlie'],
    'Score': [85, 92, 78]
}

## Criar DataFrame a partir do dicionário
df = pd.DataFrame(student_data)

## Imprimir o DataFrame
print(df)

Para executar seu script, abra um terminal no WebIDE (Terminal -> New Terminal) e execute o seguinte comando. Todo o seu trabalho deve ser feito dentro do diretório ~/project.

python3 main.py

Você deverá ver a seguinte saída, que mostra os dados do seu dicionário organizados de forma organizada em uma tabela com índices de linha padrão começando em 0.

      Name  Score
0    Alice     85
1      Bob     92
2  Charlie     78

Especificar nomes de colunas no DataFrame

Nesta etapa, você aprenderá como controlar a ordem das colunas em seu DataFrame. Por padrão, o Pandas pode não preservar a ordem das chaves do seu dicionário. Você pode definir explicitamente a ordem das colunas passando uma lista de nomes de colunas para o parâmetro columns.

Vamos modificar o arquivo main.py para especificar a ordem das colunas. Trocaremos as colunas 'Name' e 'Score'.

Atualize seu arquivo main.py com o seguinte código. Observe a adição do parâmetro columns na função pd.DataFrame().

import pandas as pd

## Dados em um dicionário
student_data = {
    'Name': ['Alice', 'Bob', 'Charlie'],
    'Score': [85, 92, 78]
}

## Criar DataFrame e especificar a ordem das colunas
df = pd.DataFrame(student_data, columns=['Score', 'Name'])

## Imprimir o DataFrame
print(df)

Agora, execute o script novamente no seu terminal:

python3 main.py

A saída agora mostrará a coluna 'Score' primeiro, como você especificou.

   Score     Name
0     85    Alice
1     92      Bob
2     78  Charlie

Adicionar rótulos de índice ao DataFrame

Nesta etapa, você aprenderá como substituir o índice numérico padrão (0, 1, 2, ...) por rótulos mais significativos. Isso é feito usando o parâmetro index, que permite atribuir um índice personalizado a cada linha.

Vamos atribuir IDs de alunos únicos como índice para o nosso DataFrame. Modifique seu arquivo main.py para incluir uma lista de rótulos de índice.

Atualize o código em main.py da seguinte forma:

import pandas as pd

## Dados em um dicionário
student_data = {
    'Name': ['Alice', 'Bob', 'Charlie'],
    'Score': [85, 92, 78]
}

## Definir rótulos de índice personalizados
index_labels = ['ID1', 'ID2', 'ID3']

## Criar DataFrame com índice personalizado
df = pd.DataFrame(student_data, index=index_labels)

## Imprimir o DataFrame
print(df)

Execute o script do seu terminal:

python3 main.py

Agora você verá o índice numérico padrão substituído pelos seus rótulos 'ID' personalizados.

        Name  Score
ID1    Alice     85
ID2      Bob     92
ID3  Charlie     78

Acessar colunas do DataFrame usando notação de ponto

Nesta etapa, você aprenderá uma maneira conveniente de acessar uma única coluna de um DataFrame: a notação de ponto. Se o nome de uma coluna for um identificador Python válido (sem espaços, não começa com um número, etc.), você pode acessá-lo como um atributo do objeto DataFrame.

Vamos usar a notação de ponto para selecionar e imprimir apenas a coluna 'Name' do nosso DataFrame.

Modifique seu arquivo main.py para acessar a coluna Name e imprimi-la.

import pandas as pd

## Dados em um dicionário
student_data = {
    'Name': ['Alice', 'Bob', 'Charlie'],
    'Score': [85, 92, 78]
}

## Criar DataFrame
df = pd.DataFrame(student_data)

## Acessar e imprimir a coluna 'Name' usando notação de ponto
print(df.Name)

Execute o script no seu terminal:

python3 main.py

A saída será uma Pandas Series, que é essencialmente uma única coluna de um DataFrame.

0      Alice
1        Bob
2    Charlie
Name: Name, dtype: object

Exibir informações do DataFrame usando o método info

Nesta etapa, você aprenderá a usar o método .info(). Esta é uma função essencial que fornece um resumo conciso de um DataFrame, incluindo os tipos de dados de cada coluna, o número de valores não nulos e o uso de memória. É um ótimo primeiro passo ao explorar um novo conjunto de dados.

Vamos aplicar o método .info() ao nosso DataFrame de alunos.

Modifique o arquivo main.py para chamar este método. Observe que .info() imprime o resumo diretamente, portanto, você não precisa envolvê-lo em uma função print().

import pandas as pd

## Dados em um dicionário
student_data = {
    'Name': ['Alice', 'Bob', 'Charlie'],
    'Score': [85, 92, 78]
}

## Criar DataFrame
df = pd.DataFrame(student_data)

## Exibir um resumo do DataFrame
df.info()

Execute o script do seu terminal:

python3 main.py

A saída fornece uma visão detalhada da estrutura e do conteúdo do seu DataFrame.

<class 'pandas.core.frame.DataFrame'>
RangeIndex: 3 entries, 0 to 2
Data columns (total 2 columns):
 ##   Column  Non-Null Count  Dtype
---  ------  --------------  -----
 0   Name    3 non-null      object
 1   Score   3 non-null      int64
dtypes: int64(1), object(1)
memory usage: 176.0+ bytes

Resumo

Parabéns por completar este laboratório! Você aprendeu as técnicas fundamentais para criar e inspecionar DataFrames do Pandas.

Neste laboratório, você dominou:

  • Criar um DataFrame a partir de um dicionário Python.
  • Especificar e reordenar colunas usando o parâmetro columns.
  • Atribuir rótulos de linha personalizados usando o parâmetro index.
  • Acessar uma coluna específica usando a conveniente notação de ponto.
  • Obter um resumo conciso da estrutura de um DataFrame com o método .info().

Essas habilidades são os primeiros passos essenciais para qualquer tarefa de análise de dados usando Pandas. Agora você está bem equipado para começar a criar seus próprios conjuntos de dados para exploração futura.