Ak používate Python, dokonca aj na tie najjednoduchšie úlohy, pravdepodobne si uvedomujete dôležitosť jeho knižníc tretích strán. Knižnica Pandas s vynikajúcou podporou pre DataFrames je jednou z takýchto knižníc.

Do Python DataFrames môžete importovať viacero typov súborov a vytvárať rôzne verzie na ukladanie rôznych množín údajov. Po importovaní údajov pomocou dátových rámov ich môžete zlúčiť a vykonať podrobnú analýzu.

Riešenie základov

Skôr než začnete so zlučovaním, musíte mať DataFrames na zlúčenie. Na účely vývoja môžete vytvoriť nejaké fiktívne údaje, s ktorými budete experimentovať.

Vytvorte DataFrames v Pythone

Ako prvý krok importujte knižnicu Pandas do svojho súboru Python. Pandas je knižnica tretej strany, ktorá spracováva DataFrames v Pythone. Môžete použiť importovať vyhlásenie na používanie knižnice takto:

importovať pandy ako pd

K názvu knižnice môžete priradiť alias, aby ste skrátili odkazy na kód.

Potrebujete vytvoriť slovníky, ktoré môžete previesť na DataFrames. Najlepšie výsledky dosiahnete vytvorením dvoch premenných slovníka –

instagram viewer
diktát1 a diktát2-na uloženie konkrétnych informácií:

dict1 = {"ID používateľa": ["001", "002", "003", "004", "005"],
"FName": ["John", "Brad", "Ron", "Roald", "Chris"],
"LName": ["Harley", "Cohen", "Dahl", "Harrington", "Kerr-Hislop"]}

dict2 = {"ID používateľa": ["001", "002", "003", "004"], "Vek": [15, 28, 34, 24]}

Pamätajte, že v oboch hodnotách slovníka musíte mať spoločný prvok, ktorý bude fungovať ako primárny kľúč na neskoršie kombinovanie vašich dátových rámov.

Premeňte svoje slovníky na dátové rámce

Ak chcete previesť hodnoty slovníka na DataFrames, môžete použiť nasledujúcu metódu:

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

Niektoré IDE vám umožňujú skontrolovať hodnoty v rámci DataFrame odkazom na funkciu DataFrame a stlačením Spustiť/vykonať. Je ich veľa IDE kompatibilné s Python, takže si môžete vybrať ten, ktorý sa vám najjednoduchšie naučí.

Keď ste s obsahom svojich dátových rámov spokojní, môžete prejsť na krok zlúčenia.

Kombinovanie rámcov s funkciou zlúčenia

Funkcia zlúčenia je prvá funkcia Pythonu, ktorú môžete použiť na spojenie dvoch dátových rámov. Táto funkcia používa nasledujúce predvolené argumenty:

pd.merge (DataFrame1, DataFrame2, how= typuzzlúčiť)

Kde:

  • pd je alias knižnice Pandas.
  • zlúčiť je funkcia, ktorá spája DataFrames.
  • DataFrame1 a DataFrame2 sú dva dátové rámce, ktoré sa majú zlúčiť.
  • ako definuje typ zlúčenia.

K dispozícii sú niektoré dodatočné voliteľné argumenty, ktoré môžete použiť, keď máte zložitú dátovú štruktúru.

Môžete použiť rôzne hodnoty pre parameter how na definovanie typu zlúčenia, ktoré sa má vykonať. Tieto typy zlúčenia vám budú známe používa SQL na spojenie databázových tabuliek.

Ľavé zlúčenie

Ľavý typ zlúčenia zachová hodnoty prvého DataFrame nedotknuté a vytiahne zodpovedajúce hodnoty z druhého DataFrame.

Správne zlúčenie

Správny typ zlúčenia zachová hodnoty druhého DataFrame nedotknuté a vytiahne zodpovedajúce hodnoty z prvého DataFrame.

Vnútorné zlúčenie

Typ vnútorného zlúčenia zachováva zhodné hodnoty z oboch DataFrame a odstraňuje nezhodné hodnoty.

Vonkajšie zlúčenie

Vonkajší typ zlúčenia zachováva všetky zhodné a nezhodné hodnoty a konsoliduje dátové rámce dohromady.

Ako používať funkciu Concat

The konkat funkcia je flexibilná možnosť v porovnaní s niektorými ďalšími funkciami zlúčenia Pythonu. Pomocou funkcie concat môžete kombinovať DataFrame vertikálne a horizontálne.

Nevýhodou použitia tejto funkcie je však to, že štandardne zahodí všetky nezhodné hodnoty. Rovnako ako niektoré ďalšie súvisiace funkcie, aj táto funkcia má niekoľko argumentov, z ktorých len niekoľko je nevyhnutných pre úspešné zreťazenie.

concat (dataframes, axis=0, join='vonkajšie'/vnútorné)

Kde:

  • konkat je funkcia, ktorá spája DataFrames.
  • dátové rámce je sekvencia dátových rámcov na zreťazenie.
  • os predstavuje smer zreťazenia, 0 je horizontálny, 1 je vertikálny.
  • pripojiť sa určuje buď vonkajšie alebo vnútorné spojenie.

Pomocou vyššie uvedených dvoch dátových rámov si môžete vyskúšať funkciu concat nasledovne:

# definujte dátové rámce vo formáte zoznamu
df_merged_concat = pd.concat([df1, df2])

# vytlačte výsledky funkcie Concat
vytlačiť(df_merged_concat)

Neprítomnosť argumentov osi a spojenia vo vyššie uvedenom kóde spája tieto dve množiny údajov. Výsledný výstup obsahuje všetky položky bez ohľadu na stav zhody.

Podobne môžete použiť ďalšie argumenty na ovládanie smeru a výstupu funkcie concat.

Ak chcete ovládať výstup so všetkými zodpovedajúcimi položkami:

# Spojenie všetkých zodpovedajúcich hodnôt medzi dvoma dátovými rámcami na základe ich stĺpcov
df_merged_concat = pd.concat([df1, df2], os=1, spojenie = 'vnútorné')

vytlačiť(df_merged_concat)

Výsledok obsahuje všetky zhodné hodnoty iba medzi dvoma DataFrame.

Zlúčenie dátových rámov s Pythonom

Dátové rámce sú neoddeliteľnou súčasťou Pythonu vzhľadom na ich flexibilitu a funkčnosť. Vzhľadom na ich mnohostranné využitie ich môžete vo veľkej miere použiť na vykonávanie rôznych úloh s maximálnou ľahkosťou.

Ak sa stále učíte o dátových rámcoch Python, skúste importovať nejaké súbory programu Excel a potom ich skombinovať s rôznymi prístupmi.