Una guida disturbanteamente lunga (ma eccellente) su come eseguire gli join in Pandas
A disturbingly long (but excellent) guide on how to perform joins in Pandas
Dai semi/anti join alla convalida dei dati fusi

Uno shock spiacevole che si presenta con i dati del mondo reale è che non arrivano mai in un singolo, tranquillo file CSV. Invece, sono un insieme di tabelle che interagiscono tra loro in molti modi utilizzando colonne comuni.
Il tuo sfortunato compito è sfruttare queste interazioni e trovare informazioni dal caos. E la tua abilità più importante per svolgere il compito sarà eseguire le fusioni tra le tabelle.
Quindi, il mio sfortunato compito oggi è insegnarti quasi tutti i modi in cui puoi fare queste fusioni in Pandas. Prendi un caffè; ci vorrà un po’ di tempo.
Pandas merge()
Pandas fornisce diversi metodi per eseguire fusioni su dataframes. Tra tutti gli altri, il metodo merge()
è il più flessibile. È un metodo del dataframe, e la sintassi generale è la seguente:
- Come Patsnap ha utilizzato l’inferenza GPT-2 su Amazon SageMaker con bassa latenza e costi ridotti
- Grandi aziende tecnologiche come Google e OpenAI si impegnano per la sicurezza dell’intelligenza artificiale
- Scegliere un formato per il Data Lake Cosa cercare effettivamente
df1.merge(df2, on='common_column')
Quando si combinano le tabelle, ci sono due termini con cui dovresti essere familiare: il nome della tabella che utilizzi per prima viene chiamato la tabella di sinistra, mentre l’altra viene chiamata la tabella di destra. Nel frammento di codice sopra, la tabella di sinistra è df1
, mentre la tabella di destra è df2
. Inoltre, i verbi join, combine e merge vengono utilizzati in modo interscambiabile.
Ora vediamo come eseguire una join interna:
Una join interna restituirà solo le righe con valori corrispondenti in entrambe le tabelle. Durante il processo di join, dovrai conoscere il nome della colonna comune in entrambe le tabelle.
Esplorazione di base
Familiarizziamoci con un paio di dataset da utilizzare nell’articolo.
Diciamo che abbiamo queste due tabelle:
>>> user_usage.head()
>>> user_devices.head()