Uso de merge_ordered()

Junção de dados com o pandas

Aaren Stubberfield

Instructor

merge_ordered()

Exemplo de tabela de merge_ordered()

Junção de dados com o pandas

Comparação de métodos

Método

  • Coluna(s) para junção
    • on e left_on`right_on`
  • Tipo de junção
    • how (left, right, inner, outer) {{@}}
    • padrão inner (interna)
  • Nomes de colunas sobrepostos
    • suffixes
  • Chamar o método
    • df1.merge(df2)

Método

  • Coluna(s) para junção
    • on e left_on`right_on`
  • Tipo de junção
    • how (left, right, inner, outer)
    • padrão outer (externa)
  • Nomes de colunas sobrepostos
    • suffixes
  • Chamar a função
    • pd.merge_ordered(df1, df2)
Junção de dados com o pandas

Conjunto de dados financeiros

Imagem de jornal com gráfico Dow Jones

1 Foto de Markus Spiske no Unsplash
Junção de dados com o pandas

Dados de ações

Nome da tabela: aapl

  date        close    
0 2007-02-01  12.087143
1 2007-03-01  13.272857
2 2007-04-01  14.257143
3 2007-05-01  17.312857
4 2007-06-01  17.434286

Nome da tabela: mcd

  date        close    
0 2007-01-01  44.349998
1 2007-02-01  43.689999
2 2007-03-01  45.049999
3 2007-04-01  48.279999
4 2007-05-01  50.549999
Junção de dados com o pandas

Mesclagem de dados de ações

import pandas as pd
pd.merge_ordered(aapl, mcd, on='date', suffixes=('_aapl','_mcd'))
  date        close_aapl  close_mcd
0 2007-01-01  NaN         44.349998
1 2007-02-01  12.087143   43.689999
2 2007-03-01  13.272857   45.049999
3 2007-04-01  14.257143   48.279999
4 2007-05-01  17.312857   50.549999
5 2007-06-01  17.434286   NaN
Junção de dados com o pandas

Forward fill (preenchimento progressivo)

Imagem do antes e depois de um forward fill, ou preenchimento progressivo. Os valores que faltam numa coluna são preenchidos com os valores anteriores dessa coluna.

Junção de dados com o pandas

Exemplo de preenchimento progressivo

pd.merge_ordered(aapl, mcd, on='date', 
                 suffixes=('_aapl','_mcd'), 
                 fill_method='ffill')
  date        close_aapl  close_mcd
0 2007-01-01  NaN         44.349998
1 2007-02-01  12.087143   43.689999
2 2007-03-01  13.272857   45.049999
3 2007-04-01  14.257143   48.279999
4 2007-05-01  17.312857   50.549999
5 2007-06-01  17.434286   50.549999
pd.merge_ordered(aapl, mcd, on='date', 
                 suffixes=('_aapl','_mcd'))
  date        close_aapl  close_mcd
0 2007-01-01  NaN         44.349998
1 2007-02-01  12.087143   43.689999
2 2007-03-01  13.272857   45.049999
3 2007-04-01  14.257143   48.279999
4 2007-05-01  17.312857   50.549999
5 2007-06-01  17.434286   NaN
Junção de dados com o pandas

Quando usar merge_ordered()?

  • Dados ordenados / séries temporais
  • Preencher valores que estão faltando
Junção de dados com o pandas

Vamos praticar!

Junção de dados com o pandas

Preparing Video For Download...