Introdução
Pandas é uma poderosa biblioteca Python para manipulação e análise de dados. Suas estruturas de dados fundamentais, Series e DataFrame, permitem armazenar e manipular dados estruturados. Este laboratório fornecerá um guia passo a passo sobre como trabalhar com essas estruturas de dados, desde a criação até a manipulação e alinhamento.
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 as Bibliotecas Necessárias
Antes de começarmos, vamos importar as bibliotecas necessárias. Precisaremos de NumPy e pandas para este laboratório.
## Import necessary libraries
import numpy as np
import pandas as pd
Criando uma Series
A primeira estrutura de dados que analisaremos é uma Series, que é um array rotulado unidimensional. Ela pode conter qualquer tipo de dado, incluindo inteiros, strings, números de ponto flutuante e objetos Python.
## Create a Series
s = pd.Series([1, 3, 5, np.nan, 6, 8])
Criando um DataFrame
A outra estrutura de dados fundamental é o DataFrame. É uma estrutura de dados rotulada bidimensional com colunas de tipos potencialmente diferentes.
## Create a DataFrame
df = pd.DataFrame(np.random.randn(6, 4), columns=list('ABCD'))
Manipulando Colunas do DataFrame
Você pode realizar várias operações nas colunas do DataFrame. Por exemplo, você pode selecionar uma coluna, adicionar uma nova coluna ou excluir uma coluna.
## Select column A
df['A']
## Add a new column E
df['E'] = pd.Series(np.random.randn(6), index=df.index)
## Delete column B
del df['B']
Alinhamento de Dados e Aritmética
O alinhamento de dados é uma característica importante do pandas. Quando você realiza operações em dois objetos, o pandas os alinha por seus rótulos associados.
## Create two DataFrames
df1 = pd.DataFrame(np.random.randn(10, 4), columns=['A', 'B', 'C', 'D'])
df2 = pd.DataFrame(np.random.randn(7, 3), columns=['A', 'B', 'C'])
## Perform addition operation
result = df1 + df2
Trabalhando com Funções NumPy
A maioria das funções NumPy pode ser chamada diretamente em objetos Series e DataFrame, proporcionando muita flexibilidade para manipulação e análise de dados.
## Apply the exponential function to a DataFrame
np.exp(df)
Resumo
Neste laboratório, aprendemos sobre as duas estruturas de dados fundamentais no pandas: Series e DataFrame. Vimos como criar e manipular essas estruturas, e como usar funções NumPy diretamente nelas. Também exploramos o conceito de alinhamento de dados (data alignment), que é uma característica poderosa do pandas que permite a manipulação e análise intuitiva de dados.