Apreneu a combinar marcs de dades a Python

Apreneu a combinar marcs de dades a Python

Si utilitzeu Python, fins i tot per a les tasques més senzilles, probablement sou conscients de la importància de les seves biblioteques de tercers. La biblioteca Pandas, amb el seu excel·lent suport per a DataFrames, és una d'aquestes biblioteques.





Podeu importar diversos tipus de fitxers a Python DataFrames i crear diverses versions per emmagatzemar diferents conjunts de dades. Un cop hàgiu importat les vostres dades amb DataFrames, podeu combinar-les per realitzar una anàlisi detallada.





Abordant les bases

Abans de començar a fusionar, heu de tenir DataFrames per fusionar-los. Amb finalitats de desenvolupament, podeu crear algunes dades simulades per experimentar.





Creeu els DataFrames en Python

Com a primer pas, importeu la biblioteca Pandas al vostre fitxer Python. Pandas és una biblioteca de tercers que gestiona DataFrames a Python. Podeu utilitzar el importar declaració per utilitzar la biblioteca, de la següent manera:

com funciona la targeta SD wifi
import pandas as pd

Podeu assignar un àlies al nom de la biblioteca per escurçar les referències de codi.



Heu de crear diccionaris, que podeu convertir en DataFrames. Per obtenir els millors resultats, creeu dues variables de diccionari: dictat 1 i dict2— per emmagatzemar dades específiques:

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]}

Recordeu que heu de tenir un element comú als dos valors del diccionari per actuar com a clau primària per combinar els vostres DataFrames més endavant.





Converteix els teus diccionaris en marcs de dades

Per convertir els valors del diccionari en DataFrames, podeu utilitzar el mètode següent:

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

Alguns IDE us permeten comprovar els valors dins del DataFrame fent referència a la funció DataFrame i prement Executar/Executar . Hi ha molts IDE compatibles amb Python , perquè pugueu escollir la que us resulti més fàcil d'aprendre.





  Fragment de codi de Jupyter Notebook

Quan estigueu satisfet amb el contingut dels vostres DataFrames, podeu passar al pas de fusió.

Combinació de fotogrames amb la funció de combinació

La funció de combinació és la primera funció de Python que podeu utilitzar per combinar dos DataFrames. Aquesta funció pren els arguments per defecte següents:

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

On:

  • pd és un àlies per a la biblioteca Pandas.
  • fusionar és la funció que fusiona DataFrames.
  • DataFrame 1 i DataFrame 2 són els dos DataFrames que cal combinar.
  • com defineix el tipus de fusió.

Hi ha disponibles alguns arguments opcionals addicionals, que podeu utilitzar quan teniu una estructura de dades complexa.

Podeu utilitzar diferents valors per al paràmetre how per definir el tipus de fusió a realitzar. Aquests tipus de combinacions us seran familiars si ho heu fet utilitza SQL per unir taules de bases de dades .

Combinació esquerra

El tipus de combinació esquerre manté intactes els valors del primer DataFrame i treu els valors coincidents del segon DataFrame.

  Fragment de codi de Jupyter Notebook

Combinació dreta

El tipus de combinació correcte manté intactes els valors del segon DataFrame i extreu els valors coincidents del primer DataFrame.

  Fragment de codi de Jupyter Notebook

Fusió interior

El tipus de combinació interna conserva els valors coincidents de tots dos DataFrames i elimina els valors que no coincideixen.

  Fragment de codi de Jupyter Notebook

Fusió exterior

El tipus de combinació exterior conserva tots els valors coincidents i no coincidents i consolida els DataFrames junts.

  Fragment de codi de Jupyter Notebook

Com utilitzar la funció Concat

El concat La funció és una opció flexible en comparació amb algunes de les altres funcions de fusió de Python. Amb la funció concat, podeu combinar DataFrames verticalment i horitzontalment.

Tanmateix, l'inconvenient d'utilitzar aquesta funció és que descarta qualsevol valor que no coincideixi de manera predeterminada. Com algunes altres funcions relacionades, aquesta funció té uns quants arguments, dels quals només alguns són essencials per a una concatenació reeixida.

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

On:

  • concat és la funció que uneix DataFrames.
  • marcs de dades és una seqüència de DataFrames per concatenar.
  • eix representa la direcció de la concatenació, 0 és horitzontal, 1 és vertical.
  • uneix-te especifica una unió externa o interna.

Utilitzant els dos DataFrames anteriors, podeu provar la funció concat de la següent manera:

# 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)

L'absència dels arguments d'eix i unió al codi anterior combina els dos conjunts de dades. La sortida resultant té totes les entrades, independentment de l'estat de la coincidència.

De la mateixa manera, podeu utilitzar arguments addicionals per controlar la direcció i la sortida de la funció concat.

Per controlar la sortida amb totes les entrades coincidents:

com treure un protector de pantalla de vidre
# 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)

El resultat conté només tots els valors coincidents entre els dos DataFrames.

  Fragment de codi de Jupyter Notebook

Fusionar DataFrames amb Python

Els DataFrames són una part integral de Python, tenint en compte la seva flexibilitat i funcionalitat. Donats els seus usos polifacètics, podeu utilitzar-los àmpliament per realitzar una varietat de tasques amb la màxima facilitat.

Si encara esteu aprenent sobre Python DataFrames, proveu d'importar alguns fitxers d'Excel i, a continuació, combineu-los amb diferents enfocaments.