logo

Erityyppiset liitokset Pandasissa

Pandas-moduuli sisältää erilaisia ​​ominaisuuksia, joilla voidaan suorittaa erilaisia ​​toimintoja tietokehyksille, kuten liittäminen, ketjuttaminen, poistaminen, lisääminen jne. Tässä artikkelissa aiomme keskustella erityyppisistä liitosoperaatioista, joita Pandas voi suorittaa Datakehys. Liittymiä on viisi tyyppiä Pandat .

  • Sisäinen liitos
  • Vasen ulkoliitos
  • Oikea ulkoliitos
  • Full Outer Join tai yksinkertaisesti Outer Join
  • Hakemisto Liity

Ymmärtääksemme erityyppisiä liitoksia teemme ensin kaksi DataFrame-kehystä, nimittäin a ja b .



Tietokehys a:

Python 3








# 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>

>

>

Lähtö:

DataFrame b:

Python 3




# 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>

java 8 ominaisuudet

>

>

Lähtö:

Liitostyypit Pandasissa

Käytämme näitä kahta tietokehystä erityyppisten liitosten ymmärtämiseen.

Pandat Sisäinen liitos

Sisäliitos on yleisin liitostyyppi, jonka kanssa työskentelet. Se palauttaa tietokehyksen, jossa on vain ne rivit, joilla on yhteisiä ominaisuuksia. Tämä on samanlainen kuin kahden joukon leikkauspiste.

Pandas Inner Join

Esimerkki:

Python 3




# 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>

>

>

Lähtö:

Pandat Vasen Liity

Vasemmanpuoleisella ulkoliitoksella näytetään kaikki tietueet ensimmäisestä tietokehyksestä riippumatta siitä, löytyvätkö ensimmäisen tietokehyksen avaimet toisesta datakehyksestä. Kun taas toisessa tietokehyksessä näytetään vain tietueet, joissa on avaimet toisessa tietokehyksessä, jotka löytyvät ensimmäisestä tietokehyksestä.

vasen-liity Esimerkki:

Python 3




# 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>

>

>

Lähtö:

Pandat Oikea ulkoliitos

Oikean liitoksen kohdalla kaikki toisen datakehyksen tietueet näytetään. Kuitenkin vain ne tietueet, joilla on avaimet ensimmäisessä Dataframessa ja jotka löytyvät toisesta datakehyksestä, näytetään.

Pandas oikea ulkoliitos

Esimerkki:

css reunus

Python 3




# 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>

>

>

Lähtö:

Pandat Täysi ulkoinen liitos

Täysi ulompi liitos palauttaa kaikki rivit vasemmasta tietokehyksestä ja kaikki rivit oikeanpuoleisesta datakehyksestä ja sovittaa rivejä mahdollisuuksien mukaan NaN:ien kanssa muualla. Mutta jos tietokehys on valmis, saamme saman tulosteen.

Pandas Full Outer Join

Esimerkki:

Python 3




zip-komento linuxissa
# 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>

>

>

Lähtö:

Pandas Index Liity

Yhdistääksesi indeksien tietokehyksen ohita vasen_indeksi ja oikea_indeksi argumentit ovat True eli molemmat tietokehykset yhdistetään hakemistoon käyttämällä oletusarvoista sisäistä liitosta.

Python 3




# 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>

>

>

Lähtö: