Metodo join()
Basandosi su una chiave comune, combina le colonne di due dataframe in un unico dataframe.
Sintassi
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")
Parametri
Nome | Descrizione | ||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
other = right_dataframe_name | Il nome del dataframe corretto. | ||||||||||||||||||
lkey = ["left_key_column", "...n"] |
La colonna o le colonne chiave nel dataframe di sinistra. Le colonne vengono utilizzate nell'ordine in cui sono elencate. Se si esegue l'associazione su più colonne, le colonne corrispondenti devono essere nello stesso ordine in lkey e rkey. Nota La corrispondenza dei valori delle chiavi sinistra e destra è sensibile alla distinzione tra maiuscole e minuscole. I valori corrispondenti sono considerati identici solo se anche il loro involucro è identico. |
||||||||||||||||||
lcolumns = ["left_column", "...n"] facoltativo |
Le colonne del dataframe di sinistra da includere nel dataframe di output associato. Le colonne vengono incluse nell'ordine in cui sono elencate. Se si omette lcolumns, tutte le colonne del dataframe di sinistra vengono incluse nel dataframe di output associato. Se si desidera escludere tutte le colonne di sinistra, specificare lcolumns = []. Nota La colonna o le colonne lkey vengono automaticamente incluse nel dataframe di output. Non è necessario specificarle nuovamente in lcolumns. |
||||||||||||||||||
rkey = ["right_key_column", "...n"] |
La colonna o le colonne chiave nel dataframe di destra. Le colonne vengono utilizzate nell'ordine in cui sono elencate. Se si esegue l'associazione su più colonne, le colonne corrispondenti devono essere nello stesso ordine in rkey e lkey. Nota La corrispondenza dei valori delle chiavi sinistra e destra è sensibile alla distinzione tra maiuscole e minuscole. I valori corrispondenti sono considerati identici solo se anche il loro involucro è identico. |
||||||||||||||||||
rcolumns = ["right_column", "...n"] facoltativo |
Le colonne del dataframe di destra da includere nel dataframe di output associato. Le colonne vengono incluse nell'ordine in cui sono elencate. Se si omette rcolumns, tutte le colonne del dataframe di destra vengono incluse nel dataframe di output associato. Se si desidera escludere tutte le colonne di destra, specificare rcolumns = []. rcolumns viene ignorato se si utilizza il tipo di associazione unmatched. Nota La colonna o le colonne rkey vengono automaticamente incluse nel dataframe di output. Non è necessario specificarle nuovamente in rcolumns. |
||||||||||||||||||
join_type = "inner" | "left" | "right" | "outer" | "unmatched" facoltativo |
Il tipo di associazione da eseguire. Se si omette join_type, per impostazione predefinita viene eseguita un'associazione interna.
|
Restituisce
Dataframe HCL.
Esempi
Associare due dataframe per scoprire i dipendenti che potrebbero anche essere fornitori
L'esempio seguente associa il dataframe employees (a sinistra) e il dataframe vendors (a destra) utilizzando l'indirizzo come colonna chiave comune (le colonne Address e Vendor_Street).
Il metodo join() crea un nuovo dataframe con righe sinistra e destra corrispondenti, che genera un elenco di tutti i dipendenti e fornitori con lo stesso indirizzo.
employee_vendor_match = employees.join(other = vendors, lkey = ["Address"], lcolumns = ["Empno", "First", "Last"], rkey = ["Vendor_Street"], rcolumns = ["Vendor_No", "Vendor_Name"], join_type = "inner")
Associare due dataframe come un modo per scoprire le righe dei crediti senza clienti corrispondenti
L'esempio seguente associa il dataframe accounts_receivable (a sinistra) e il dataframe customers (a destra) utilizzando il numero cliente (CustNo) come colonna chiave comune.
Il metodo join() utilizza il tipo di associazione unmatched per creare un nuovo dataframe con righe a sinistra non corrispondenti, che genera un elenco di righe accounts_receivable non associate ad alcuna riga customers.
customers_not_found = accounts_receivable.join(other = customers, lkey = ["CustNo"], lcolumns = ["Due", "Amount"], rkey = ["CustNo"], join_type = "unmatched")