Ako koristite Python, čak i za najjednostavnije zadatke, vjerojatno ste svjesni važnosti njegovih biblioteka trećih strana. Biblioteka Pandas, sa svojom izvrsnom podrškom za DataFrames, jedna je takva biblioteka.

Možete uvesti više vrsta datoteka u Python DataFrames i stvoriti različite verzije za pohranu različitih skupova podataka. Nakon što uvezete podatke pomoću DataFramesa, možete ih spojiti kako biste izvršili detaljnu analizu.

Baviti se osnovama

Prije nego počnete sa spajanjem, morate imati DataFrames za spajanje. U svrhu razvoja, možete stvoriti neke lažne podatke za eksperimentiranje.

Stvorite DataFrames u Pythonu

Kao prvi korak, uvezite biblioteku Pandas u svoju Python datoteku. Pandas je biblioteka treće strane koja obrađuje DataFrames u Pythonu. Možete koristiti uvoz izjavu o korištenju knjižnice, kako slijedi:

uvoz pande kao pd

Nazivu knjižnice možete dodijeliti pseudonim kako biste skratili svoje reference koda.

Morate izraditi rječnike koje možete pretvoriti u DataFrames. Za najbolje rezultate stvorite dvije varijable rječnika—dict1 i dict2—za pohranu određenih informacija:

instagram viewer
dict1 = {"user_id": ["001", "002", "003", "004", "005"],
"FName": ["Ivan", "Brad", "Rone", "Roald", "Chris"],
"LNaziv": ["Harley", "Cohen", "Dahl", "Harrington", "Kerr-Hislop"]}

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

Upamtite, morate imati zajednički element u vrijednostima oba rječnika, kako bi djelovao kao primarni ključ za kasnije kombiniranje vaših DataFramesa.

Pretvorite svoje rječnike u podatkovne okvire

Za pretvaranje vrijednosti vašeg rječnika u DataFrames, možete koristiti sljedeću metodu:

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

Neki IDE vam omogućuju provjeru vrijednosti unutar DataFramea upućivanjem na funkciju DataFrame i pritiskom Pokreni/Izvrši. Ima ih mnogo IDE-ovi kompatibilni s Python-om, tako da možete odabrati onaj koji vam je najlakši za naučiti.

Nakon što ste zadovoljni sadržajem svojih DataFramesa, možete prijeći na korak spajanja.

Kombiniranje okvira s funkcijom spajanja

Funkcija spajanja je prva Python funkcija koju možete koristiti za kombiniranje dva DataFramea. Ova funkcija uzima sljedeće zadane argumente:

pd.merge (DataFrame1, DataFrame2, how= tipodsjediniti)

Gdje:

  • pd je alias za biblioteku Pandas.
  • sjediniti je funkcija koja spaja DataFrames.
  • DataFrame1 i DataFrame2 su dva DataFramea za spajanje.
  • kako definira tip spajanja.

Dostupni su neki dodatni izborni argumenti koje možete koristiti kada imate složenu strukturu podataka.

Možete koristiti različite vrijednosti za parametar how kako biste definirali vrstu spajanja koju treba provesti. Ove vrste spajanja bit će vam poznate ako ste koristio SQL za spajanje tablica baze podataka.

Lijevo spajanje

Lijeva vrsta spajanja zadržava vrijednosti prvog DataFramea netaknutima i povlači odgovarajuće vrijednosti iz drugog DataFramea.

Desno spajanje

Ispravna vrsta spajanja čuva vrijednosti drugog DataFramea netaknutima i povlači odgovarajuće vrijednosti iz prvog DataFramea.

Unutarnje spajanje

Vrsta unutarnjeg spajanja zadržava podudarne vrijednosti iz oba DataFramea i uklanja vrijednosti koje se ne podudaraju.

Vanjsko spajanje

Tip vanjskog spajanja zadržava sve podudarne i nepodudarne vrijednosti i konsolidira DataFrames zajedno.

Kako koristiti funkciju Concat

The concat funkcija je fleksibilna opcija u usporedbi s nekim drugim Pythonovim funkcijama spajanja. Pomoću funkcije concat možete kombinirati DataFrames okomito i vodoravno.

Međutim, nedostatak korištenja ove funkcije je taj što prema zadanim postavkama odbacuje sve vrijednosti koje se ne podudaraju. Kao i neke druge povezane funkcije, ova funkcija ima nekoliko argumenata, od kojih je samo nekoliko neophodno za uspješno spajanje.

concat (dataframes, axis=0, join='vanjski'/unutarnji)

Gdje:

  • concat je funkcija koja pridružuje DataFrames.
  • podatkovni okviri je slijed DataFramesa za spajanje.
  • os predstavlja smjer ulančavanja, 0 je horizontalno, 1 je okomito.
  • pridružiti specificira vanjsko ili unutarnje spajanje.

Koristeći gornja dva DataFramesa, možete isprobati funkciju concat na sljedeći način:

# definirajte podatkovne okvire u obliku popisa
df_merged_concat = pd.concat([df1, df2])

# ispis rezultata funkcije Concat
ispisati(df_merged_concat)

Nepostojanje argumenata osi i spoja u gornjem kodu kombinira dva skupa podataka. Rezultirajući izlaz ima sve unose, bez obzira na status podudaranja.

Slično, možete koristiti dodatne argumente za kontrolu smjera i izlaza funkcije concat.

Za kontrolu izlaza sa svim odgovarajućim unosima:

# Povezivanje svih podudarnih vrijednosti između dva podatkovna okvira na temelju njihovih stupaca
df_merged_concat = pd.concat([df1, df2], os=1, spoj = 'unutarnji')

ispisati(df_merged_concat)

Rezultat sadrži sve podudarne vrijednosti samo između dva okvira podataka.

Spajanje DataFramesa s Pythonom

DataFramesi su sastavni dio Pythona s obzirom na njihovu fleksibilnost i funkcionalnost. S obzirom na njihovu višestruku upotrebu, možete ih opsežno koristiti za obavljanje raznih zadataka s najvećom lakoćom.

Ako još uvijek učite o Python DataFrames, pokušajte uvesti neke Excel datoteke, a zatim ih kombinirajte s različitim pristupima.