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.

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ä.
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.
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.
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ö: