Come eseguire un inner join in pandas (con esempio)


È possibile utilizzare la seguente sintassi di base per eseguire un inner join nei panda:

 import pandas as pd

df1. merge (df2, on=' column_name ', how=' inner ')

L’esempio seguente mostra come utilizzare questa sintassi nella pratica.

Esempio: come eseguire un inner join in Pandas

Supponiamo di avere i seguenti due DataFrames panda che contengono informazioni su varie squadre di basket:

 import pandas as pd

#createDataFrame
df1 = pd. DataFrame ({' team ': ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H'],
                    ' points ': [18, 22, 19, 14, 14, 11, 20, 28]})

df2 = pd. DataFrame ({' team ': ['A', 'B', 'C', 'D', 'G', 'H'],
                    ' assists ': [4, 9, 14, 13, 10, 8]})

#view DataFrames
print (df1)

  team points
0 to 18
1 B 22
2 C 19
3 D 14
4 E 14
5 F 11
6 G 20
7:28 a.m.

print (df2)

  team assists
0 to 4
1 B 9
2 C 14
3 D 13
4G 10
5:8 a.m.

Possiamo utilizzare il seguente codice per eseguire un inner join, che mantiene solo le righe in cui appare il nome del team in entrambi i DataFrame:

 #perform left join
df1. merge (df2, on=' team ', how=' inner ')

	team points assists
0 to 18 4
1 B 22 9
2 C 19 14
3 D 14 13
4 G 20 10
5:28 8

Le uniche righe contenute nel DataFrame unito sono quelle in cui il nome del team appare in entrambi i DataFrame.

Tieni presente che due squadre sono state rimosse (squadre E ed F) perché non apparivano in entrambi i DataFrames.

Tieni presente che puoi anche utilizzare pd.merge() con la seguente sintassi per restituire esattamente lo stesso risultato:

 #perform left join
p.d. merge (df1, df2, on=' team ', how=' inner ')

	team points assists
0 to 18 4
1 B 22 9
2 C 19 14
3 D 14 13
4 G 20 10
5:28 8

Tieni presente che questo DataFrame unito corrisponde a quello dell’esempio precedente.

Nota : puoi trovare la documentazione completa per la funzione di unione qui .

Risorse addizionali

I seguenti tutorial spiegano come eseguire altre operazioni comuni nei panda:

Come eseguire un join a sinistra in Pandas
Come unire Pandas DataFrames su più colonne
Panda si uniscono o si uniscono: qual è la differenza?

Aggiungi un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *