Skip to main content

Combinando Dataframes

Para unirmos DataFrames podemos usar o concat, join,merge,append

FunçãoUne linhasUne colunas
concatsimsim
joinnãosim
mergenãosim
appendsimnão

Concat - Estrutura geral

variavel = pd.concat([df_01,df_02])

Concat - Parâmetros

ParâmetroOpçõesExplicação
ignore_indexTrue ou False
axis0 ou 1
keys
sortTrue ou Falseordena em ordem alfabética as colunas do DataFrame
sort_valuesdf.sort_values("coluna")ordenação por coluna específica
customizar_ordenaçãodf[lista_de_colunas]customiza a ordem das colunas

-falar sobre verify_integrity

variavel = pd.concat([df_01,df_02],ignore_index=True)

Operações de Conjunto

OperaçãoMétodo
uniãoconcat() + drop_duplicates()
intersecçãomerge()
diferençaisin() + indexação booleana
mesmo conteúdoequals()
df_união=pd.concat([dataframe_01,dataframe_02], ignore_index=True)
df_união.drop_duplicates()
df_intersecção=dataframe_01.merge(dataframe_02)
df_intersecção.drop_duplicates()
dataframe_02[dataframe_02.paises.isin(dataframe_01.paises)==False]
dataframe_01.equals(dataframe_03)

Junção

O join e o merge realizam a junção de DataFrames. Temos três tipos de junções:

  • junção natural: pode deixar o DataFrame mais largo e gera um DataFrame a partir da intersecção;
  • junção interna (inner join): utiliza left_on e right_on;
  • junção externa: left join, right join, full join (outer).

Em todas as junções os dados da intersecção dos DataFrames estarão presentes.

  • No inner join apenas a intersecção estará presente.
  • No left join além da intersecção os dados do DataFrame indicados a esquerda estarão presentes.
  • No right join além da intersecção os dados do DataFrame indicados a direita estarão presentes.
  • No full join além da intersecção, todos os dados da esquerda e da direita no DataFrame estarão presente.

Operadores de comparação

OperadorSignificado
==igual a
!=diferente
>maior do que
>=maior ou igual a
<menor do que
<=menor ou igual a

Operadores lógicos

OperadorSignificado
&AND (retona True se todas as condições forem verdadeiras)
``
!NOT (retona True se a condição for False)