3 Funzioni Pandas per il merge dei DataFrame

3 Funzioni Pandas per il merge dei DataFrame' (3 Pandas Functions for DataFrame merging)

Scopri come funzionano le funzioni di unione di Pandas con esempi di codice

Foto di Lance Grandahl su Unsplash

È comune nel lavoro sui dati avere più set di dati provenienti dalla fonte dei dati o come risultato dell’analisi dei dati.

A volte, vogliamo unire due o più set di dati diversi per vari motivi. Ad esempio:

  • Vogliamo integrare dati da più fonti di dati in un unico set di dati per un’analisi più approfondita
  • Vogliamo eseguire l’imputazione dei valori mancanti da un set di dati a un altro set di dati
  • Suddividiamo il set di dati per eseguire analisi diverse su ciascun set di dati e vogliamo restituirli in un unico set di dati

L’unione dei set di dati è possibile con le funzioni disponibili nel pacchetto Pandas. In questo articolo, impareremo tre diverse funzioni per l’unione con esempi di codice. Iniziamo.

1. merge

La funzione merge è la funzione principale in Pandas per eseguire l’unione di base dei set di dati. Questa funzione combinerà due set di dati in base all’indice o alla colonna del set di dati specificato.

Ad esempio, creiamo un esempio di set di dati per mostrare come funziona la funzione merge.

import pandas as pdcustomer = pd.DataFrame({'cust_id': [1,2,3,4,5],                    'cust_name': ['Maria', 'Fran', 'Dominique', 'Elsa', 'Charles'],                   'country': ['Germania', 'Spagna', 'Giappone', 'Polonia', 'Argentina']})order = pd.DataFrame({'order_id': [200, 201,202,203,204],                      'cust_id':[1,3,3,4,2],                      'order_date': ['2014-07-05', '2014-07-06', '2014-07-07', '2014-07-07', '2014-07-08'],                      'order_value': [10.1, 20.5, 18.7, 19.1, 13.5]})
Immagine dell'autore

Nell’esempio sopra, cerchiamo di simulare due set di dati diversi: dati dei clienti e dati degli ordini, in cui la colonna cust_id esiste in entrambi i DataFrame.

Eseguiamo l’unione dei DataFrame per comprendere meglio la funzione.

pd.merge(customer, order)

Per impostazione predefinita, la funzione merge ha già alcune impostazioni preimpostate: