Udemy
    •  
    •  
    •  
    •  
    •  
    •  
    •  
    •  
Turn what you know into an opportunity and reach millions around the world.
Learn More
Your cart is empty.
Keep shopping
Curso de Pandas (ETL) - Manipulando dados com Python
Rating: 4.4 out of 5(19 ratings)
57 students

Curso de Pandas (ETL) - Manipulando dados com Python

Domine a principal biblioteca de dados e crie análises e automações (Metodologia Ágil de Aprendizagem)
Last updated 1/2023
Portuguese
Portuguese [Auto],

What you'll learn

  • Carregar dados á partir de arquivos csv, banco de dados e apis.
  • Consultar informações dos dados gerados com funções como describe e info.
  • Entender os tipos de dados de um dataframe.
  • Adicionar e remover colunas e linhas.
  • Corrigir entradas de dados dos usuários.
  • Usar funções avançadas do pandas como apply.
  • Gerar gráficos a partir do dataframe.
  • Gerar outputs de dados através de arquivos e banco de dados.
  • Realizar filtros com as funções loc e iloc
  • Usar funções de resumo estatístico

Course content

2 sections63 lectures2h 28m total length
  • Porque Pandas2:53

    Com o avanço de inúmeros sistemas para organizar nosso trabalho e vida pessoal como ERP, CRM e aplicativos, começamos a ter um número grande de dados estruturados.


    Planilhas são um exemplo de estruturação de dados onde geramos colunas e linhas para poder organizá-los e permitir gerarmos novas inferências sobre eles.


    Dentro do Python, o Pandas se destacou como biblioteca para processar dados estruturados.

  • Exercício 1
  • Correção - Exercício 10:25
  • Instalando e importando a biblioteca1:35

    Para instalar o pandas, usamos o seguinte comando:


    pip install pandas (No colab usa-se o ! para comandos que seriam aplicados fora do python, nesse caso seria !pip install)


    Já dentro do python, para importação da biblioteca pandas, usamos o seguinte comando:


    import pandas as pd

  • Exercício 2
  • Correção - Exercício 21:43
  • Criando as principais estruturas3:19

    As series são arrays unidimensionais que apresentam uma indexação (numérica ou de rótulos) marcando a posição de cada elemento. Vejamos como podemos criar esse objeto e observá-lo:

    Ex.:

    serie_1 = pd.Series(data=[10,22,23,48,54], index=[0,1,2,3,4])


    Os índices são valores que preferencialmente devem ser únicos e que são usados para garantir a unicidade dos dados e facilitar a localização e manipulação dos registros.


    Para representar dados de duas dimensões temos o dataframe. Ele é um conjunto de series, formando assim linhas e colunas.


    Ex.:


    dados = {'prova_1': [6,7,8,8,9,3,6],

    'prova_2': [7,8,5,7,10,8,7],

    'nome': ['Ana', 'Pedro', 'João', 'Carla', 'Silvio','Teresa', 'Claudia'],

    'turma':['A','A','B','B','A','B','B']}

    df = pd.DataFrame(data=dados)

  • Exercício 3
  • Correção - Exercício 31:10
  • Inserindo item com append1:06

    O pandas disponibiliza o comando “append” que insere um registro no final do dataframe.

    Ex.:

    df = df.append({'prova_1': 6, 'prova_2': 7, 'nome': 'Cristiane', 'turma': 'A'},ignore_index=True)

    O parâmetro “ignore_index” é necessário para indicarmos que no nosso caso o índice não será passado.

  • Exercício 4
  • Correção - Exercício 43:03
  • Inspeção de conjunto2:54

    O comando shape retorna o número de linhas e colunas que apresenta nossa serie ou dataframe.

    Ex.:

    df.shape


    O comando columns contém as colunas do nosso dataframe.

    Ex.:

    df.columns


    Podemos mudar o nome das nossas colunas atribuindo novos nomes:

    Ex.:

    df.columns = ['Prova um', 'Prova dois','Nomes', 'Turma']


    Para visualizar os índices do nosso dataframe usamos o atributo index:

    Ex.:

    df.index


    Para modificar o index do nosso dataframe como no exemplo:

    df = df.set_index(keys = 'nome')

  • Exercício 5
  • Correção - Exercício 51:08
  • Inspeção de coluna1:30

    Os tipos de dados principais do pandas são:


    float64 - números com casas decimais

    int64 - números inteiros

    string - conteúdos textuais

    object - conteúdos indefinidos

    datetime64 - data e hora

    bool - valores booleanos (true ou false)


    Para conhecer os tipos de dados das colunas do dataframe, podemos utilizar o atributo dtype:

    Ex.:

    df.dtypes


    No caso específico de dataframe podemos usar também o método info:

    Ex.:

    df.info()

  • Exercício 6
  • Correção - Exercício 61:05
  • Inspeção de conteúdo0:56

    Para visualizar as primeiras n linhas do conjunto de dados no pandas podemos usar o método head.

    Ex.:

    df.head(n=3)


    Para visualizar as últimas n linhas usamos o comando tail:

    Ex.:

    df.tail(n=3)

  • Exercício 7
  • Correção - Exercício 71:31
  • Atribuição de dados4:10

    Podemos selecionar somente uma coluna de informações, por exemplo.

    df[‘Prova um’]


    Para sabermos um único valor podemos passar a coluna e depois o index da linha que queremos visualizar.

    Ex.:

    df[‘Prova um’][‘Ana’]


    Podemos da mesma forma, atribuir um novo valor para ela:

    Ex.:

    df[‘Prova um’][‘Ana’] = 8


    Mas para alterar os dados, o pandas sugere usarmos o método loc. Ex.:

    df.loc['Silvio','Prova um'] = 10


    No método loc, podemos indicar n índices. Ex.:

    df.loc[['Carla','Silvio', 'Teresa'], 'Prova um']


    Ou usar os dois pontos para indicar que queremos os registros de determinado intervalo de índices. Ex.:

    df.loc['Carla':'Teresa', 'Prova um']


    Já o comando iloc funciona de forma semelhante, porém indicamos para ele as posições dos dados no dataframe. Ex.:

    df.iloc[4,0]

  • Exercício 8
  • Correção - Exercício 81:56
  • Filtros2:01

    Podemos realizar filtros no nosso dataframe. Os operadores lógicos são:


    == Igual

    > Maior

    >= Maior igual

    <=Menor igual

    != Diferente


    Podemos usar eles dentro do loc:

    Ex.:

    filtro = (df['Turma'] == 'A')

    df[filtro]


    Uma filtragem nada mais é do que uma seleção de informações que se enquadrem dentro de requisitos que determinamos.

  • Exercício 9
  • Correção - Exercício 91:03
  • Filtros usando and e or1:32

    Às vezes, precisamos usar filtros mais complexos com operadores lógicos como “and” e “or”.


    O “and” que no pandas é representado por “&”. Fica assim:

    filtro = ((df['Turma'] == 'A') & (df['Prova um']>7))


    Da mesma forma, podemos usar o “ou” que no pandas é representado pelo sinal “|”. Ex.:

    filtro = ((df['Prova dois']>=8) | (df['Prova um']>=8))


    Outra forma de executar o mesmo código, mas digitando menos, é jogá-lo diretamente dentro da verificação do dataframe. Veja esse exemplo:

    print(df[(df['Prova dois']>=8) | (df['Prova um']>=8) ])

  • Teste 10
  • Correção - Exercício 101:53
  • Inserção de informações2:06

    Podemos incluir um novo registro também através do método loc, passando a sequência de valores que queremos incluir e especificando o index. Como o índice passado não existe, ele inclui um novo. Ex.:

    df.loc['Marcelo'] = [10,4,'B']


    Porém, se fazemos o mesmo comando, já tendo um índice com esse valor, ele entende que queremos atualizar os valores desse registro.


    Caso precisemos atualizar o índice do nosso dataframe, podemos usar o seguinte comando. Ex.:

    df = df.reset_index()


    Com isso, nosso dataframe assume um índice numérico iniciando em 0.

  • Exercício 11
  • Correção - Exercício 111:08
  • Dados Faltantes e Duplicados4:33

    Para conhecer a quantidade de valores vazios do nosso dataframe, usamos o comando isnull que retorna verdadeiro ou falso para cada registro.

    Ex.:

    df.isnull()


    Após isso, para sabermos a quantidade usamos o sum().

    Ex.:

    df.isnull().sum()


    Para preenchermos esses valores vazios, podemos usar o comando abaixo.

    Ex.:

    df = df.fillna(value=0)


    Para preencher com valores somente em determinada coluna podemos usar o comando:

    Ex.:

    df = df.fillna(value={'Média':1})


    Já um método que permite apagarmos os registros com valores nulos é o dropna.

    Ex.:

    df = df.dropna(axis=0)


    Para sabermos todos os valores dentro do domínio de uma coluna, usamos o unique.

    Ex.:

    df['Nomes'].unique()


    E para saber quantas vezes os valores aparecem em uma coluna, usamos o value_counts.

    Ex.:

    df['Nomes'].value_counts()

  • Exercício 12
  • Correção - Exercício 121:58
  • Resumo estatístico1:46

    Podemos realizar várias operações estatísticas no nosso dataframe.


    Uma opção é usar o método describe que traz um resumo estatístico.

    Ex.:

    df.describe()


    Ou usar os métodos individuais:

    O método sum() realiza a soma dos valores da nossa coluna.

    Ex.:

    df['Prova um'].sum()


    O método max() traz o maior valor da nossa coluna.

    Ex.:

    df['Prova um'].max()


    O método min() traz o menor valor da nossa coluna.

    Ex.:

    df['Prova um'].min()


    O método mean() retorna a média da nossa coluna.

    Ex.:

    df['Prova um'].mean()


    O método median() retorna a mediana da nossa coluna.

    Ex.:

    df['Prova um'].median()

  • Exercício 13
  • Correção - Exercício 132:02
  • Agrupamento1:55

    O Pandas oferece um método capaz de reestruturar nossas informações a partir de uma ou mais colunas. Para isso usamos o groupby. Após ele, podemos usar funções estatísticas para serem aplicadas nos agrupamentos.

    Ex.:


    df.groupby(by=['Turma']).mean()


    Para ordenar podemos usar o sort:

    Ex.:


    df.groupby(by=['Turma'])['Prova um'].mean().sort_values(ascending=True)

  • Exercício 14
  • Correção - Exercício 143:19
  • Visualização de dados1:15

    Uma forma de apresentar as informações obtidas é de forma visual, criando gráficos.


    O Pandas simplifica muito nossa vida, com o comando plot. Vejamos:

    df.groupby(by=['Turma'])['Prova um'].mean().sort_values(ascending=True).plot(kind='bar')


    O Pandas permite diferentes tipos de gráficos, como de barras, pizza, de linha e histograma.

    df['Turma'].value_counts().plot(kind='pie')

  • Exercício 15
  • Correção - Exercício 151:54
  • Salvando dados1:32

    A biblioteca Pandas apresenta vários métodos para salvar arquivos:


    df.to_csv(‘meu_arquivo.csv’, index= False)


    O parâmetro denominado index, dentro do método, indica que não queremos que a indexação seja salva como uma coluna no arquivo resultante.


    Para salvar em um arquivo do excel, podemos usar o comando:


    df.to_excel(‘meu_arquivo.xlsx’)

  • Exercício 16
  • Correção - Exercício 161:29
  • Importando dados2:00

    O Pandas oferece métodos para importar arquivos.

    Ex.:


    df = pd.read_csv('meu_arquivo.csv')


    Podemos também abrir arquivos a partir de urls. Além disso, especificar o limitador do csv com o comando abaixo:


    df = pd.read_csv('https://raw.githubusercontent.com/brunamulinari/BasicPythonProjects/main/Base_ficticia/baseficticia.csv', delimiter=';')

  • Exercício 17
  • Correção - Exercício 173:03

Requirements

  • Saber os conceitos básicos de python

Description

Aprenda a manipular dados com python com essa fantástica biblioteca. Nesse curso, você irá acompanhar o passo a passo para um processo completo de análise de dados usando o Pandas.

Todos os vídeos são roteirizados onde cada aula possui exercício prático e resposta, também em vídeo. As aulas são criadas com base na metodologia da escola Harve, que hoje é referência na formação de profissionais para a área de tecnologia.


Nesse curso, você irá navegar pelos seguintes tópicos:

  • Importar biblioteca e carregar arquivos csv.

  • Analisar informações da estrutura de dados gerada.

  • Analisar informações do conteúdo utilizando funções de estatística.

  • Manipular adição, atualização e exclusão de dados dos conjuntos de dados.

  • Realizar filtros com comandos fáceis através do loc e do iloc.

  • Gerar gráficos a partir do próprio conjunto de dados.

  • Salvar arquivos após a manipulação dos dados.

  • Criar colunas a partir de outras colunas.

  • Acessar apis e carregar os dados em um dataframe.

  • Acessar banco de dados e carregar os dados em um dataframe.

  • Tratar dados usando comandos complexos como apply.

  • Montar strings de conexão para apis e banco de dados.


Com esse curso você será capaz de carregar dados de diversas fontes diferentes, tratar e disponibilizar em vários formatos. O que está esperando? Vamos começar.

Who this course is for:

  • Para pessoas que querem analisar e manipular dados através do Pandas