Aflați cum să îmbinați cadre de date în Python

Aflați cum să îmbinați cadre de date în Python

Dacă utilizați Python, chiar și pentru cele mai simple sarcini, probabil că sunteți conștient de importanța bibliotecilor sale terțe. Biblioteca Pandas, cu suport excelent pentru DataFrames, este una dintre aceste biblioteci.





de ce iPhone-ul meu nu trimite mesaje text?

Puteți importa mai multe tipuri de fișiere în Python DataFrames și puteți crea diferite versiuni pentru a stoca diferite seturi de date. Odată ce importați datele folosind DataFrames, le puteți îmbina pentru a efectua o analiză detaliată.





Abordarea elementelor de bază

Înainte de a începe fuzionarea, trebuie să aveți DataFrames pentru a îmbina. În scopuri de dezvoltare, puteți crea câteva date fictive pentru a experimenta.





Creați cadrele de date în Python

Ca prim pas, importați biblioteca Pandas în fișierul dvs. Python. Pandas este o bibliotecă terță parte care se ocupă de DataFrames în Python. Puteți utiliza import declarație de utilizare a bibliotecii, după cum urmează:

import pandas as pd

Puteți atribui un alias numelui bibliotecii pentru a scurta referințele de cod.



Trebuie să creați dicționare, pe care le puteți converti în DataFrames. Pentru cele mai bune rezultate, creați două variabile de dicționar— dict1 și dict2— pentru a stoca anumite informații:

dict1 = {"user_id": ["001", "002", "003", "004", "005"], 
"FName": ["John", "Brad", "Ron", "Roald", "Chris"],
"LName": ["Harley", "Cohen", "Dahl", "Harrington", "Kerr-Hislop"]}

dict2 = {"user_id": ["001", "002", "003", "004"], "Age": [15, 28, 34, 24]}

Amintiți-vă, trebuie să aveți un element comun în ambele valori de dicționar, pentru a acționa ca cheie primară pentru combinarea DataFrame-urilor mai târziu.





Convertiți-vă dicționarele în DataFrames

Pentru a converti valorile de dicționar în DataFrames, puteți utiliza următoarea metodă:

df1 = pd.DataFrame(dict1) 
df2 = pd.DataFrame(dict2)

Unele IDE-uri vă permit să verificați valorile din cadrul DataFrame, făcând referire la funcția DataFrame și apăsând Run/Execute . Există multe IDE-uri compatibile cu Python , astfel încât să îl puteți alege pe cel care este cel mai ușor de învățat.





  Fragment de cod Jupyter Notebook

Odată ce sunteți mulțumit de conținutul DataFrame-urilor dvs., puteți trece la pasul de îmbinare.

Combinarea cadrelor cu funcția Merge

Funcția de îmbinare este prima funcție Python pe care o puteți utiliza pentru a combina două DataFrames. Această funcție preia următoarele argumente implicite:

pd.merge(DataFrame1, DataFrame2, how= type of merge)

Unde:

  • pd este un alias pentru biblioteca Pandas.
  • combina este funcția care îmbină DataFrames.
  • DataFrame1 și DataFrame2 sunt cele două DataFrame de îmbinat.
  • Cum definește tipul de îmbinare.

Sunt disponibile câteva argumente opționale suplimentare, pe care le puteți folosi atunci când aveți o structură de date complexă.

Puteți utiliza diferite valori pentru parametrul how pentru a defini tipul de îmbinare de efectuat. Aceste tipuri de îmbinare vor fi familiare dacă ați făcut-o a folosit SQL pentru a uni tabelele bazei de date .

Îmbinare stânga

Tipul de îmbinare din stânga păstrează intacte valorile primului DataFrame și extrage valorile potrivite din al doilea DataFrame.

  Fragment de cod Jupyter Notebook

Îmbinare dreapta

Tipul de îmbinare corect păstrează intacte valorile celui de-al doilea DataFrame și extrage valorile potrivite din primul DataFrame.

  Fragment de cod Jupyter Notebook

Fuziune interioară

Tipul de îmbinare interior reține valorile care se potrivesc din ambele DataFrames și elimină valorile care nu se potrivesc.

  Fragment de cod Jupyter Notebook

Fuziune exterioară

Tipul de îmbinare exterior reține toate valorile care se potrivesc și care nu se potrivesc și consolidează Cadrele de date împreună.

  Fragment de cod Jupyter Notebook

Cum se utilizează funcția Concat

The concat funcția este o opțiune flexibilă în comparație cu unele dintre celelalte funcții de îmbinare ale Python. Cu funcția concat, puteți combina DataFrames vertical și orizontal.

Cu toate acestea, dezavantajul utilizării acestei funcții este că elimină în mod implicit orice valoare care nu se potrivește. Ca și alte funcții conexe, această funcție are câteva argumente, dintre care doar câteva sunt esențiale pentru o concatenare reușită.

concat(dataframes, axis=0, join='outer'/inner)

Unde:

  • concat este funcția care se unește cu DataFrames.
  • cadre de date este o secvență de DataFrames de concatenat.
  • axă reprezintă direcția de concatenare, 0 fiind orizontal, 1 vertical.
  • a te alatura specifică fie o îmbinare exterioară, fie interioară.

Folosind cele două DataFrames de mai sus, puteți încerca funcția concat după cum urmează:

# define the dataframes in a list format 
df_merged_concat = pd.concat([df1, df2])

# print the results of the Concat function
print(df_merged_concat)

Absența argumentelor axei și îmbinării în codul de mai sus combină cele două seturi de date. Ieșirea rezultată are toate intrările, indiferent de starea meciului.

În mod similar, puteți folosi argumente suplimentare pentru a controla direcția și ieșirea funcției concat.

Pentru a controla ieșirea cu toate intrările care se potrivesc:

# Concatenating all matching values between the two dataframes based on their columns 
df_merged_concat = pd.concat([df1, df2], axis=1, join = 'inner')

print(df_merged_concat)

Rezultatul conține numai toate valorile care se potrivesc între cele două DataFrames.

  Fragment de cod Jupyter Notebook

Îmbinarea cadrelor de date cu Python

DataFrames-urile sunt o parte integrantă a Python, având în vedere flexibilitatea și funcționalitatea lor. Având în vedere utilizările lor multiple, le puteți folosi pe scară largă pentru a efectua o varietate de sarcini cu cea mai mare ușurință.

Dacă încă învățați despre Python DataFrames, încercați să importați câteva fișiere Excel, apoi combinați-le cu abordări diferite.