logo

Ulike typer sammenføyninger i pandaer

Pandas-modulen inneholder ulike funksjoner for å utføre ulike operasjoner på datarammer som join, concatenate, delete, add, etc. I denne artikkelen skal vi diskutere de ulike typene join-operasjoner som kan utføres på Pandas Dataramme. Det er fem typer Joins in Pandaer .

  • Inner Join
  • Venstre ytre skjøt
  • Høyre ytre skjøt
  • Full Outer Join eller ganske enkelt Outer Join
  • Indeks Bli med

For å forstå ulike typer sammenføyninger skal vi først lage to DataFrames, nemlig en og b .



Dataramme a:

Python3








# importing pandas> import> pandas as pd> # Creating dataframe a> a>=> pd.DataFrame()> # Creating Dictionary> d>=> {>'id'>: [>1>,>2>,>10>,>12>],> >'val1'>: [>'a'>,>'b'>,>'c'>,>'d'>]}> a>=> pd.DataFrame(d)> # printing the dataframe> a>

>

tostring metode java
>

Produksjon:

DataFrame b:

Python3




# importing pandas> import> pandas as pd> # Creating dataframe b> b>=> pd.DataFrame()> # Creating dictionary> d>=> {>'id'>: [>1>,>2>,>9>,>8>],> >'val1'>: [>'p'>,>'q'>,>'r'>,>'s'>]}> b>=> pd.DataFrame(d)> # printing the dataframe> b>

>

>

Produksjon:

Typer sammenføyninger i pandaer

Vi vil bruke disse to datarammene for å forstå de forskjellige typene sammenføyninger.

Pandaer Inner Join

Inner join er den vanligste typen sammenføyning du skal jobbe med. Den returnerer en dataramme med bare de radene som har felles egenskaper. Dette ligner på skjæringspunktet mellom to sett.

Pandas Inner Join

Eksempel:

Python3




# importing pandas> import> pandas as pd> # Creating dataframe a> a>=> pd.DataFrame()> # Creating Dictionary> d>=> {>'id'>: [>1>,>2>,>10>,>12>],> >'val1'>: [>'a'>,>'b'>,>'c'>,>'d'>]}> a>=> pd.DataFrame(d)> # Creating dataframe b> b>=> pd.DataFrame()> # Creating dictionary> d>=> {>'id'>: [>1>,>2>,>9>,>8>],> >'val1'>: [>'p'>,>'q'>,>'r'>,>'s'>]}> b>=> pd.DataFrame(d)> # inner join> df>=> pd.merge(a, b, on>=>'id'>, how>=>'inner'>)> # display dataframe> df>

>

>

sortere en arraylist

Produksjon:

Pandaer Venstre Bli med

Med en venstre ytre sammenføyning vil alle postene fra den første Dataframe vises, uavhengig av om nøklene i den første Dataframe kan finnes i den andre Dataframe. Mens, for den andre Dataframe, vil bare postene med nøklene i den andre Dataframe som finnes i den første Dataframe bli vist.

venstre-join Eksempel:

Python3


annet hvis bash



# importing pandas> import> pandas as pd> # Creating dataframe a> a>=> pd.DataFrame()> # Creating Dictionary> d>=> {>'id'>: [>1>,>2>,>10>,>12>],> >'val1'>: [>'a'>,>'b'>,>'c'>,>'d'>]}> a>=> pd.DataFrame(d)> # Creating dataframe b> b>=> pd.DataFrame()> # Creating dictionary> d>=> {>'id'>: [>1>,>2>,>9>,>8>],> >'val1'>: [>'p'>,>'q'>,>'r'>,>'s'>]}> b>=> pd.DataFrame(d)> # left outer join> df>=> pd.merge(a, b, on>=>'id'>, how>=>'left'>)> # display dataframe> df>

>

>

Produksjon:

Pandaer Høyre ytre skjøt

For en rett sammenføyning vil alle postene fra den andre Dataframe bli vist. Imidlertid vil bare postene med nøklene i den første Dataframe som kan finnes i den andre Dataframe vises.

Pandas høyre ytre skjøt

Eksempel:

Python3


1 million tall



# importing pandas> import> pandas as pd> # Creating dataframe a> a>=> pd.DataFrame()> # Creating Dictionary> d>=> {>'id'>: [>1>,>2>,>10>,>12>],> >'val1'>: [>'a'>,>'b'>,>'c'>,>'d'>]}> a>=> pd.DataFrame(d)> # Creating dataframe b> b>=> pd.DataFrame()> # Creating dictionary> d>=> {>'id'>: [>1>,>2>,>9>,>8>],> >'val1'>: [>'p'>,>'q'>,>'r'>,>'s'>]}> b>=> pd.DataFrame(d)> # right outer join> df>=> pd.merge(a, b, on>=>'id'>, how>=>'right'>)> # display dataframe> df>

>

>

Produksjon:

Pandaer Full Ytre Sammenføyning

En full ytre sammenføyning returnerer alle radene fra venstre Dataframe, og alle radene fra høyre Dataframe, og matcher opp rader der det er mulig, med NaNs andre steder. Men hvis Dataframe er komplett, får vi samme utgang.

Pandas Full Ytre Join

Eksempel:

Python3




# importing pandas> import> pandas as pd> # Creating dataframe a> a>=> pd.DataFrame()> # Creating Dictionary> d>=> {>'id'>: [>1>,>2>,>10>,>12>],> >'val1'>: [>'a'>,>'b'>,>'c'>,>'d'>]}> a>=> pd.DataFrame(d)> # Creating dataframe b> b>=> pd.DataFrame()> # Creating dictionary> d>=> {>'id'>: [>1>,>2>,>9>,>8>],> >'val1'>: [>'p'>,>'q'>,>'r'>,>'s'>]}> b>=> pd.DataFrame(d)> # full outer join> df>=> pd.merge(a, b, on>=>'id'>, how>=>'outer'>)> # display dataframe> df>

matematikk tilfeldig java

>

>

Produksjon:

Pandas Index Bli med

For å slå sammen Dataframe på indekser passerer venstre_indeks og høyre_indeks argumenter som True, dvs. begge datarammene er slått sammen på en indeks ved å bruke standard Inner Join.

Python3




# importing pandas> import> pandas as pd> # Creating dataframe a> a>=> pd.DataFrame()> # Creating Dictionary> d>=> {>'id'>: [>1>,>2>,>10>,>12>],> >'val1'>: [>'a'>,>'b'>,>'c'>,>'d'>]}> a>=> pd.DataFrame(d)> # Creating dataframe b> b>=> pd.DataFrame()> # Creating dictionary> d>=> {>'id'>: [>1>,>2>,>9>,>8>],> >'val1'>: [>'p'>,>'q'>,>'r'>,>'s'>]}> b>=> pd.DataFrame(d)> # index join> df>=> pd.merge(a, b, left_index>=>True>, right_index>=>True>)> # display dataframe> df>

>

>

Produksjon: