join() methode

Op basis van een gemeenschappelijke sleutel worden kolommen uit twee dataframes gecombineerd tot één dataframe.

Syntaxis

left_dataframe_name.join(other = right_dataframe_name, lkey = ["left_key_column", "...n"], lcolumns = ["left_column", "...n"], rkey = ["right_key_column", "...n"], rcolumns = ["right_column", "...n"], join_type = "inner"|"left"|"right"|"outer"|"unmatched")

Parameters

Naam Beschrijving
other = right_dataframe_name De naam van het rechter dataframe.
lkey = ["left_key_column", "...n"]

De sleutelkolom of -kolommen in het linker dataframe.

Kolommen worden gebruikt in de volgorde waarin u ze opsomt. Als u op meer dan één kolom combineert, moeten de overeenkomstige kolommen in dezelfde volgorde staan in lkey en rkey.

Opmerking

Het vergelijken van linker- en rechtersleutelwaarden is hoofdlettergevoelig. Overeenkomende waarden worden alleen als identiek beschouwd als ook hun hoofdlettergebruik identiek is.

lcolumns = ["left_column", "...n"]

optioneel

De kolommen uit het linker dataframe die moeten worden opgenomen in het samengevoegde uitvoer-dataframe. Kolommen worden opgenomen in de volgorde waarin u ze opsomt.

Als u lcolumns weglaat, worden alle kolommen uit het linker dataframe opgenomen in het samengevoegde uitvoer-dataframe.

Als u alle linkerkolommen wilt uitsluiten, geef dan lcolumns = [] op.

Opmerking

De lkey-kolom of -kolommen worden automatisch opgenomen in het uitvoer-dataframe. U hoeft ze niet opnieuw op te geven in lcolumns.

rkey = ["right_key_column", "...n"]

De sleutelkolom of -kolommen in het rechter dataframe.

Kolommen worden gebruikt in de volgorde waarin u ze opsomt. Als u op meer dan één kolom combineert, moeten de overeenkomstige kolommen in dezelfde volgorde staan in rkey en lkey.

Opmerking

Het vergelijken van linker- en rechtersleutelwaarden is hoofdlettergevoelig. Overeenkomende waarden worden alleen als identiek beschouwd als ook hun hoofdlettergebruik identiek is.

rcolumns = ["right_column", "...n"]

optioneel

De kolommen uit het rechter dataframe die in het samengevoegde uitvoer-dataframe moeten worden opgenomen. Kolommen worden opgenomen in de volgorde waarin u ze opsomt.

Als u rcolumns weglaat, worden alle kolommen van het rechter dataframe opgenomen in het samengevoegde uitvoer-dataframe.

Als u alle rechterkolommen wilt uitsluiten, geef dan rcolumns = [] op.

rcolumns wordt genegeerd als u het verbindingstype unmatched gebruikt.

Opmerking

De rkey-kolom of -kolommen worden automatisch opgenomen in het uitvoer-dataframe. U hoeft ze niet opnieuw op te geven in rcolumns.

join_type = "inner" | "left" | "right" | "outer" | "unmatched"

optioneel

Het soort koppeling dat moet worden uitgevoerd.

Als u join_type weglaat, wordt standaard een inner join uitgevoerd.

Verbindingstype Het verbonden uitvoer-dataframe bevat:

"inner"

Alle overeenkomende rijen links en alle overeenkomende rijen rechts

Eén rij voor elke match tussen de linker- en rechter-dataframes

"links"

Alle linkerrijen (overeenkomend en niet-overeenkomend) en alle overeenkomende rechterrijen

"rechts"

Alle rechterrijen (overeenkomend en niet-overeenkomend) en alle overeenkomende linkerrijen

"outer"

Alle linker- en rechterrijen, overeenkomend en niet-overeenkomend

“niet-overeenkomend”

Niet-overeenkomende linkerrijen

Retourneert

HCL-dataframe.

Voorbeelden

Twee dataframes samenvoegen om werknemers te identificeren die mogelijk ook leveranciers zijn

Het onderstaande voorbeeld voegt het employees-dataframe (links) en het vendors-dataframe (rechts) samen met het adres als gemeenschappelijke sleutelkolom (de kolommen Address en Vendor_Street).

De join()-methode maakt een nieuw dataframe met gekoppelde linker- en rechterrijen, wat resulteert in een lijst van medewerkers en leveranciers met hetzelfde adres.

employee_vendor_match = employees.join(other = vendors, lkey = ["Address"], lcolumns = ["Empno", "First", "Last"], rkey = ["Vendor_Street"], rcolumns = ["Vendor_No", "Vendor_Name"], join_type = "inner")

Twee dataframes samenvoegen als een manier om debiteurenregels zonder bijbehorende klant te ontdekken

Het onderstaande voorbeeld voegt het accounts_receivable-dataframe (links) samen met het customers-dataframe (rechts) met behulp van klantnummer (CustNo) als gemeenschappelijke sleutelkolom.

De join()-methode gebruikt het unmatched-koppelingstype om een nieuw dataframe te maken met ongekoppelde linkerrijen, wat resulteert in een lijst met accounts_receivable-rijen die niet zijn gekoppeld aan een customers-rij.

customers_not_found = accounts_receivable.join(other = customers, lkey = ["CustNo"], lcolumns = ["Due", "Amount"], rkey = ["CustNo"], join_type = "unmatched")