Pokud používáte Python, dokonce i pro ty nejjednodušší úkoly, pravděpodobně si uvědomujete důležitost jeho knihoven třetích stran. Knihovna Pandas se svou vynikající podporou pro DataFrames je jednou z takových knihoven.

Do datových rámců Pythonu můžete importovat více typů souborů a vytvářet různé verze pro ukládání různých sad dat. Jakmile importujete data pomocí DataFrames, můžete je sloučit a provést podrobnou analýzu.

Zvládnutí základů

Než začnete se slučováním, musíte mít DataFrames ke sloučení. Pro účely vývoje můžete vytvořit nějaká fiktivní data, se kterými budete experimentovat.

Vytvořte DataFrames v Pythonu

Jako první krok naimportujte knihovnu Pandas do svého souboru Python. Pandas je knihovna třetí strany, která zpracovává DataFrames v Pythonu. Můžete použít import prohlášení k používání knihovny takto:

import pandy tak jako pd

K názvu knihovny můžete přiřadit alias a zkrátit tak odkazy na kód.

Potřebujete vytvořit slovníky, které můžete převést na DataFrames. Nejlepších výsledků dosáhnete vytvořením dvou proměnných slovníku –

instagram viewer
diktát1 a diktát 2 —pro uložení konkrétních informací:

dict1 = {"uživatelské ID": ["001", "002", "003", "004", "005"],
"FName": ["John", "Brade", "Rone", "Roald", "Chrisi"],
"LName": ["Harley", "Cohen", "Dahl", "Harrington", "Kerr-Hislop"]}

dict2 = {"uživatelské ID": ["001", "002", "003", "004"], "Stáří": [15, 28, 34, 24]}

Pamatujte, že musíte mít společný prvek v obou hodnotách slovníku, aby fungoval jako primární klíč pro pozdější kombinování vašich datových rámců.

Převeďte své slovníky do datových rámců

Chcete-li převést hodnoty slovníku na DataFrames, můžete použít následující metodu:

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

Některá IDE umožňují zkontrolovat hodnoty v DataFrame odkazem na funkci DataFrame a stisknutím Spustit/provést. Je jich mnoho IDE kompatibilní s Pythonem, takže si můžete vybrat ten, který je pro vás nejjednodušší se naučit.

Jakmile budete spokojeni s obsahem vašich datových rámců, můžete přejít ke kroku sloučení.

Kombinace rámců s funkcí sloučení

Funkce sloučení je první funkcí Pythonu, kterou můžete použít ke spojení dvou DataFrame. Tato funkce přebírá následující výchozí argumenty:

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

Kde:

  • pd je alias knihovny Pandas.
  • spojit je funkce, která spojuje DataFrames.
  • DataFrame1 a DataFrame2 jsou dva DataFrames ke sloučení.
  • jak definuje typ sloučení.

K dispozici jsou některé další volitelné argumenty, které můžete použít, když máte složitou datovou strukturu.

Můžete použít různé hodnoty pro parametr how k definování typu sloučení, které se má provést. Tyto typy sloučení vám budou známé používá SQL ke spojení databázových tabulek.

Levé sloučení

Levý typ sloučení zachová hodnoty prvního DataFrame nedotčené a vytáhne odpovídající hodnoty z druhého DataFrame.

Správné sloučení

Správný typ sloučení zachová hodnoty druhého DataFrame nedotčené a vytáhne odpovídající hodnoty z prvního DataFrame.

Vnitřní sloučení

Vnitřní typ sloučení zachová odpovídající hodnoty z obou DataFrame a odstraní neshodné hodnoty.

Vnější sloučení

Vnější typ sloučení zachovává všechny odpovídající a neodpovídající hodnoty a konsoliduje DataFrames dohromady.

Jak používat funkci Concat

The konkat funkce je flexibilní možnost ve srovnání s některými dalšími funkcemi sloučení Pythonu. Pomocí funkce concat můžete kombinovat DataFrames vertikálně a horizontálně.

Nevýhodou použití této funkce je však to, že ve výchozím nastavení zahodí všechny neodpovídající hodnoty. Stejně jako některé další související funkce má tato funkce několik argumentů, z nichž pouze několik je nezbytných pro úspěšné zřetězení.

concat (datové rámce, osa=0, join='vnější'/vnitřní)

Kde:

  • konkat je funkce, která spojuje DataFrames.
  • datové rámce je posloupnost DataFrames ke zřetězení.
  • osa představuje směr zřetězení, 0 je horizontální, 1 je vertikální.
  • připojit určuje buď vnější nebo vnitřní spojení.

Pomocí výše uvedených dvou DataFrames můžete vyzkoušet funkci concat následovně:

# definovat datové rámce ve formátu seznamu
df_merged_concat = pd.concat([df1, df2])

# vytisknout výsledky funkce Concat
tisk(df_merged_concat)

Absence argumentů osy a spojení ve výše uvedeném kódu kombinuje tyto dvě datové sady. Výsledný výstup obsahuje všechny položky bez ohledu na stav shody.

Podobně můžete použít další argumenty k řízení směru a výstupu funkce concat.

Chcete-li ovládat výstup se všemi odpovídajícími položkami:

# Zřetězení všech odpovídajících hodnot mezi dvěma datovými rámci na základě jejich sloupců
df_merged_concat = pd.concat([df1, df2], osa=1, spojení = 'vnitřní')

tisk(df_merged_concat)

Výsledek obsahuje všechny odpovídající hodnoty pouze mezi dvěma DataFrames.

Sloučení datových rámců s Pythonem

DataFrames jsou nedílnou součástí Pythonu s ohledem na jejich flexibilitu a funkčnost. Vzhledem k jejich mnohostrannému použití je můžete široce používat k provádění různých úkolů s maximální lehkostí.

Pokud se stále učíte o Python DataFrames, zkuste importovat nějaké soubory Excelu a pak je kombinovat s různými přístupy.