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 –
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.