You are on page 1of 43

AULA 01 | DATA SCIENCE PRO

AULA 01 | DATA SCIENCE PRO

DS I - PANDAS

01 O que é Data Science (Ciência de Dados)

02 Ambientes de execução Python para Data Science

03 Biblioteca Python para Data Science PANDAS


AULA 01 | DATA SCIENCE PRO

DS I - PANDAS
Definição de mercado
É o processo de exploração, manipulação e
análise dos dados para a descoberta e previsão
através da criação de hipóteses, testes e
validação com o objetivo de responder e/ou
fazer recomendações capazes de serem
diferenciais de negócio.

Todo esse processo precisa ter um forte


embasamento estatístico e matemático e ser
diretamente ligado ao negócio, além de poder
ser feito de forma escalável e replicável.
AULA 01 | DATA SCIENCE PRO

Rodando localmente
DS I - PANDAS Já que estamos rodado localmente, temos mais liberdade para executar
nossos códigos no editor de código de nossa preferência como:

VIM
AMBIENTES DE Emacs
Jupyter Notebook

EXECUÇÃO VS Code
PyCharm
AULA 01 | DATA SCIENCE PRO

DS I - PANDAS
Jupyter Notebook
Caso prefira algum editor gráfico ao invés dos editores
de modo texto, há a alternativa do Jupyter Notebook que
roda numa janela do seu navegador e trabalha com
células, onde podemos escrever textos e códigos.

Execute o comando pip install jupyter, aguarde a


instalação deste pacote e de suas dependências.

Após concluída a instalação, rode o seguinte comando :


jupyter notebook. Ele irá abrir uma aba no seu navegador
padrão.

Para abrir um novo notebook, basta clicar em New e


escolher Python 3 (ipykernel)
AULA 01 | DATA SCIENCE PRO

DS I - PANDAS

Tela do Jupyter
AULA 01 | DATA SCIENCE PRO

DS I - PANDAS
Com isso você verá a seguinte tela
AULA 01 | DATA SCIENCE PRO

DS I - PANDAS Rodando na nuvem


Para este módulo, utilizaremos o Google Colaboratory. Se você ainda não tiver
uma conta Google, crie uma para que possamos prosseguir no módulo.

Siga os passos a seguir para criar o seu primeiro notebook:

1. Abra seu Google Drive


2. Clique no botão New
3. Depois selecione a opção More
4. Finalmente clique em Google Colaboratory

ATENÇÃO : Caso não apareça a opção do Google Colaboratory, utilize a opção


Connect more apps.

Na tela que aparecer, basta digitar no campo de pesquisa Google Colab e


pressione enter.

Clique sobre a opção que aparecer e depois em Install.

Agora basta seguir o passo-a-passo anterior para abrir seu 1o notebook.


AULA 01 | DATA SCIENCE PRO

DS I - PANDAS

CASO NÃO APAREÇA A OPÇÃO DO GOOGLE COLABORATORY

Clique em "Mais" Clique em "Conectar mais apps" Clique em "Instalar"


AULA 01 | DATA SCIENCE PRO

DS I - PANDAS
ctrl + enter alt + enter
01 02
roda a célula atual roda a célula atual e cria uma célula em branco

shift + enter ctrl + m a


03 04
roda a célula atual e vai para a próxima célula insere uma célula acima da célula corrente

ctrl + m b OBS
05 ?
insere uma célula abaixo da célula corrente para mais atalhos, execute ctrl + m h

PRINCIPAIS ATALHOS DO GOOGLE COLAB


AULA 01 | DATA SCIENCE PRO

DS I - PANDAS
Sobre o Pandas
É uma biblioteca para manipualação de dados, sendo a mais
utilizada hoje em dia.

Criada em 2008 dentro da AQR Capital Management (Empresa


americana global de gestão de fundos de investimento), por
Wes McKinney - programador fissurado em manipulação de
dados e matemática.

Em 2009, PANDAS se tornou Open Source sob a licença BSD

PANDAS é um acrônimo para PANEL DATA, dataset de


estruturas multidimensaionais

Curiosidade: A biblioteca foi escrita em C, Python e Cython. Este


último é um superset -super conjunto- com a carinha e as
características do Python, mas com a performance do C
AULA 01 | DATA SCIENCE PRO

DS I - PANDAS
Sobre o Pandas
O Pandas é adequado para trabalhar com muitos tipos de dados:
Dados tabulares como uma tabela SQL ou uma planilha do excel
Dados de série temporal ordenadas ou não
Dados de matriz
Ou qualquer outro conjunto de dados observacionais ou estatísticos

Principais extensões suportadas:


CSV
XLSX
PARQUET
HTML
HDFS
JSON
SQL

Dica: Você pode ler dados de diversas fontes, como: dados de arquivos
CSV, planilhas EXCEL, tabelas SQL de arquivos HTML, arquivos JSON, entre
outros. Você consegue exportar dados nessas mesmas extensões
AULA 01 | DATA SCIENCE PRO

DS I - PANDAS
Sobre o Pandas

Pandas possui duas estruturas primárias de dados que são as


Series e os DataFrames.

As Series são um array unidimensional de dados homogêneos

Já os DataFrames são um array bidimensional mutável


composto pos por linhas e colunas. Como se fosse uma tabela.

OBS: Você pode adicionar linhas ou colunas a um DataFrame

Dica: Pense nessa estrutura como um contâiner, ou seja, um


DataFrame é um contâiner para Series enquanto que as Series
são um contâiner para dados escalares.
AULA 01 | DATA SCIENCE PRO

DS I - PANDAS
Recomendamos sempre buscar ajuda na documentação oficial
da linguagem ou biblioteca que você esteja utilizando

IMPORTAÇÃO DICA: Utilize o sinal de ? para obter ajuda sobre uma determinada

DA BIBLIOTECA
função sem precisar sair do Google Colab. A ajuda será aberta no
canto da direita
AULA 01 | DATA SCIENCE PRO

DS I - PANDAS
Series
As Series são estruturas unidimensionais e se assemelham as listas em
Python, mas apresentam algumas coisas a mais.

Possuem 4 elementos principais:


valores: Podem ser de qualquer tipo. Passe-o como primeiro parâmetro
ou como named parameter "data"

índices: São parte essencial da biblioteca PANDAS. É diferente das listas,


onde acessamos apenas posicionalmente. Podem ser de qualquer tipo,
desde que sejam "hasheáveis", ou seja, com acesso direto. Sâo
obrigatórios e, mesmo se não especificarmos, o PANDAS cria os índices
automaticamente, começando sempre do 0.

OBS: A diferença para a lista é que podemos criar algo que não remete
à posição.

OBS 2 : Os índices não precisam ser chaves (não precisam ser únicos),
ou seja, podem ter valores iguais para mais de uma linha. Quando
buscamos pelo índice, ele traz todos os elementos "apontados" por
aquele índice (Todas as linhas que têm referência daquele índice).
AULA 01 | DATA SCIENCE PRO

DS I - PANDAS
Series
tipo: As Series possuem um tipo. Elas são derivadas
dos tipos do NUMPY (dtypes). Se não for definido o tipo,
o PANDAS infere a partir dos dados. O tipo pode ser
passado na criação pelo parâmetro dtype.

nome: Pode-se especificar um nome. Isto é muito útil


nos DataFrames, pois cada coluna é uma Serie com
um nome.

Para acessar os valores, índices, nomes e tipos de uma


Series (s1, por exemplo) em PANDAS, basta chamar seus
atributos:
s1.values
s1.index
s1.name
s1.dtype
AULA 01 | DATA SCIENCE PRO

DS I - PANDAS

Colocando a mão no código

Para esta aula, vamos utilizar a


biblioteca pandas.

O Google Colab já disponibiliza ela


pra gente, basta apenas importá-
la.

Por convenção, utilizamos o


apelido (alias) pd para esta
biblioteca
AULA 01 | DATA SCIENCE PRO

DS I - PANDAS
Exemplo 01
AULA 01 | DATA SCIENCE PRO

DS I - PANDAS
Exemplo 02
AULA 01 | DATA SCIENCE PRO

DS I - PANDAS
Exemplo 03
AULA 01 | DATA SCIENCE PRO

DS I - PANDAS
Exemplo 04
AULA 01 | DATA SCIENCE PRO

DS I - PANDAS
Exemplo 05
AULA 01 | DATA SCIENCE PRO

DS I - PANDAS
DataFrame
Os DataFrames são estruturas bidimensionais, uma coleção de Series
Imagine como se fosse uma planilha Excel, mas com Super Poderes.

Principais características:
dados: São provenientes de uma lista, conjunto, dicionário ou da
importação de um dos mais diversos tipos de formatos suportados pelo
PANDAS.

índices: Não necessariamente são números posicionais, podem ser de


tipos diferentes, as colunas tem nomes, assim como as linhas.

colunas: Basicamente são os nomes das Series que compõem o


DataFrame.

tipos: Se cada coluna é uma Series PANDAS, cada coluna pode ter um
tipo diferente. Elas são derivadas dos tipos do NUMPY (dtypes) ou tipos
básicos do Python. Se não definirmos o tipo, o PANDAS infere a partir dos
dados.

Dica: Para converter um tipo de dados de uma Series, basta utilizarmos o


método astype. Se for possível converter os dados, eles serão convertidos.
AULA 01 | DATA SCIENCE PRO

DS I - PANDAS
DataFrame
Os valores em um DataFrame podem ser importados ou incluídos na
criação

importação: Suporta uma grande variedade de formatos:


pd.read_csv("dataset.csv"), pd.read_excel("dataset.xlsx", sheet_name
='Sheet 1'), etc.

inclusão: Listas, conjuntos ou dicionários.

Há 2 formas de acessar as colunas de um DataFrame:

df['coluna']: Sintaxe de dicionário do Python

df.coluna: Sintaxe do paradigma orientação a objetos

OBS: Recomenda-se o uso da sintaxe de dicionário, pois podem haver


colunas com nomes compostos (com espaços) e a sintaxe do paradigma
de OO não funciona.

OBS 2: É como se pudéssemos criar nomes para as linhas numa planilha do


Excel
AULA 01 | DATA SCIENCE PRO

DS I - PANDAS
DataFrame

Assim como as Series, os DataFrames possuem


atributos:
DataFrame.shape

DataFrame.values

DataFrame.index

DataFrame.columns

DataFrame.dtypes
AULA 01 | DATA SCIENCE PRO

DS I - PANDAS
Exemplo 01
AULA 01 | DATA SCIENCE PRO

DS I - PANDAS
EXEMPLO 02

Lista Conjunto Dicionário


AULA 01 | DATA SCIENCE PRO

DS I - PANDAS
Exemplo 03
AULA 01 | DATA SCIENCE PRO

DS I - PANDAS
pd.read_csv?
Após a importação da biblioteca PANDAS, precisamos importar o nosso
dataset.
Dataset: Conjunto de dados que vamos trabalhar.

Para isso, o PANDAS nos fornece diversas funções. Precisamos identificar o


tipo de arquivo do nosso dataset e chamar a fução apropriada.

Neste caso, nosso dataset está no formato CSV, portanto, vamos utilizar a
função read_csv( ) para ler e carregar nosso dataset.

O caminho do nosso dataset é este: https://raw.githubusercontent.com/IN-


School/files-data-science/main/dados.csv

OBS: Perceba que utilizamos o r antes da string (Raw String). Dessa forma
estamos dizendo ao Python para tratar a string de forma "crua", sem
interpretar nada dentro dela. Você pode carregar seu dataset sem o r string,
entretanto, é recomendado.
AULA 01 | DATA SCIENCE PRO

DS I - PANDAS
filepath_or_buffer sep
01 02
O caminho do seu arquivo csv O separador do seu arquivo csv, ex: vírgula ou ponto e vírgula

encoding parse_dates
03 Codificação para lidar com diferentes idiomas pelo mundo,
04
Converte uma coluna do DataFrame para o tipo data
pesquise por "codecs python" para obter uma lista deles.

date_format OBS
05 ? Os três parâmetros mais importantes são o filepath, sep
Formata um tipo date, por exemplo: %Y%m%d
e o encoding

PRINCIPAIS PARÂMETROS DA FUNÇÃO READ_CSV


AULA 01 | DATA SCIENCE PRO

DS I - PANDAS

Colocando a mão no código

Após o carregamento do dataset,


chamamos o método .sample(),
ele nos retorna linhas aleatórias do
nosso DataFrame, é importante
fazer isso para verificar se o
dataset foi importado
corretamente.
AULA 01 | DATA SCIENCE PRO

DS I - PANDAS
Importando o dataset
AULA 01 | DATA SCIENCE PRO

DS I - PANDAS
.head(num_linhas) .tail(num_linhas)
01 retorna as primeiras linhas do DataFrame, por default, a 02 retorna as últimas linhas do DataFrame, por default, a função
função retorna as primeiras 5 linhas retorna as últimas 5 linhas

.info() .columns
03 Retorna informações sobre as colunas do DataFrame, como:
04
Os nomes das colunas, quantas linhas não nulas, etc Retorna uma lista com os nomes das colunas do DataFrame

.describe() OBS
05 Retorna algumas informações numéricas e estatísticas
? O PANDAS nos dá muitos métodos para coletar
sobre determinada coluna (Series) informações sobre os dados, explore mais métodos.

PRINCIPAIS FUNÇÕES PARA CONHECER OS DADOS


AULA 01 | DATA SCIENCE PRO

DS I - PANDAS
.head(num_linhas)
AULA 01 | DATA SCIENCE PRO

DS I - PANDAS
.tail(num_linhas)
AULA 01 | DATA SCIENCE PRO

DS I - PANDAS
.info()
Este método retorna nformações sobre as colunas.

#: O index da coluna

Column: O nome da coluna

Non-Null Count: Quantas linhas não nulas

Dtype: O tipo de dado

memory usage: Quantidade de memória utilizada


AULA 01 | DATA SCIENCE PRO

DS I - PANDAS

.columns
AULA 01 | DATA SCIENCE PRO

DS I - PANDAS
.describe()
AULA 01 | DATA SCIENCE PRO

DS I - PANDAS
.describe

count: Mostra Quantos registros / linhas existem

mean: Mostra a média, lembrando que esse dado faz sentido


apenas em colunas do tipo numérico

std: Mostra o devio padrão, lembrando que esse dado faz sentido
apenas em colunas do tipo numérico

min: valor mínimo

25%, 50%, 75%: Mostra os quartis, cada quarti representa que a


determinada porcentagem de dados (25%, 50% ou 75%) daquele
conjunto de dados estão abaixo de determinado valor.

max: Mostra o valor máximo


AULA 01 | DATA SCIENCE PRO

DS I - PANDAS
.describe em Séries de string

count: Mostra Quantos registros / linhas existem

unique: Mostra a quantidade de valores únicos encontdados


naquela Série

top: Mostra o "termo" que aparece com mais frequência. É


importante freezar que ele retorna apenas a primeira ocorrência, ou
seja, caso tenhamos dois "termos" que apareçam a mesma
quantidade de vezes, o PANDAS considera apenas o primeiro que
ele encontrou

freq: A frequência do top, ou seja, a quantidade de vezes que o


termo top aparece.
AULA 01 | DATA SCIENCE PRO

DS I - PANDAS
downcast
AULA 01 | DATA SCIENCE PRO

DS I - PANDAS
Downcast

Quando estamos trabalhando com um DataFrame muito grande, é


importante que façamos a otimização do uso dos nossos recursos.
Perceba que este DataFrame está ocupando muita memória
desnecessariamente, o PANDAS nos fornece uma função para
otimizar o uso de memória

Através do método to_numeric(), podemos otimizar o uso da


memória, passamos a coluna como primeiro parâmetro e o tipo
de numero para o parametro downcast

Utilize integer para tipos inteiros

Utilize float para tipos reais (float)


PARABÉNS! VOCÊ TERMINOU A AULA 01 DO MÓDULO DE DATA SCIENCE PRO

You might also like