Sloupec indexu Pandas Drop: Vysvětleno s příklady

Pandas je široce používaná knihovna Pythonu pro manipulaci a analýzu dat. Jednou ze základních funkcí, které vám pandy mohou poskytnout, je schopnost upravit strukturu datové sady. Konkrétně odstranění indexů v DataFrame je klíčovou operací při práci s datovými sadami. Umožňuje vám odstranit nežádoucí řádky nebo sloupce z dat.

Chcete-li zrušit index pomocí pand, můžete použít metody .drop() a .reset_index(). Metoda .drop() umožňuje odstranit konkrétní řádky nebo sloupce. Na druhou stranu metoda .reset_index() umožňuje odstranit index a obnovit jej na výchozí RangeIndex.

Sloupec indexu Pandas Drop: Vysvětleno s příklady

V tomto článku budeme diskutovat o použití těchto metod k poklesu indexů v pandas DataFrames. Projdeme si různé příklady, abychom ukázali, jak efektivně manipulovat se strukturou datové sady tak, aby vyhovovala různým analytickým potřebám. Prostřednictvím těchto příkladů získáte hlubší pochopení toho, jak lze knihovnu pandas využít pro manipulaci s daty.

Jdeme do toho!

Obsah

Pochopení Pandas Drop Index

Než se ponoříme do vypouštění indexu s pandami, je velmi důležité, abyste rozuměli tomu, co je pandas DataFrame. Kromě toho byste měli být také obeznámeni s konceptem indexů a sloupců v pandas DataFrame.

Sloupec indexu Pandas Drop: Vysvětleno s příklady

V této části pokryjeme základy datového rámce pandas, indexu a sloupců. Poté se podíváme na příklad vypuštění indexu pomocí pand.

1. Co je to Pandas Dataframe?

Pandas je open-source knihovna Pythonu, která poskytuje vysoce výkonné nástroje pro manipulaci a analýzu dat. Jednou z jeho klíčových datových struktur je DataFrame .

Pandas DataFrame je dvourozměrná datová struktura s označenými osami (řádky a sloupce). DataFrame si můžete představit jako reprezentaci objektu Pythonic pro tabulku SQL nebo tabulku Excel.

Následuje typický datový rámec pandy:

Sloupec indexu Pandas Drop: Vysvětleno s příklady

2. Co jsou indexy a sloupce?

V datovém rámci pandas slouží index jako „adresa“ pro datové body. Poskytuje prostředky pro přístup a organizaci dat napříč DataFrame. Může to být buď výchozí sekvence celých čísel přiřazená pandami, nebo uživatelsky definovaný vlastní index.

Sloupce jsou proměnné, které hostí různé typy dat v DataFrame. Každý sloupec je v podstatě řada dat. Může obsahovat různé typy dat, jako jsou celá čísla, plovoucí čísla nebo řetězce. Popisek sloupce, běžně označovaný jako název sloupce, identifikuje tuto řadu dat.

V pandas DataFrame manipulace s daty často zahrnuje práci s popisky řádků (indexy) nebo popisky sloupců.

Některé běžné operace, které můžete provádět s víceindexovým DataFrame, zahrnují výběr, přejmenování a vypuštění řádků nebo sloupců na základě jejich štítků.

3. Jak vypustit sloupec indexu s pandami

V pandách můžete použít metodu DataFrame reset_index() k odstranění a resetování indexu.

Předpokládejme, že máme následující DataFrame:

Sloupec indexu Pandas Drop: Vysvětleno s příklady

Chcete-li odstranit sloupec indexu, můžeme použít následující kód:

df.reset_index(drop=True)

Po spuštění tohoto kódu získáte níže uvedený příklad:

Sloupec indexu Pandas Drop: Vysvětleno s příklady

Ve výstupu můžete vidět, že index je zrušen a nahrazen původními hodnotami indexu.

Můžete také použít metodu drop v pandách k odstranění určených štítků z řádků nebo sloupců.

Syntaxe této metody je:

DataFrame.drop(labels=None, *, axis=0, index=None, columns=None, level=None, inplace=False, errors='raise')

Níže jsou uvedeny klíčové parametry metody drop :

  • štítky : Štítky, které se mají odstranit. V závislosti na parametru osy to mohou být řádky nebo sloupce .

  • osa : Určuje, zda se má vypustit z řádků ( 0 nebo 'index' ) nebo sloupců ( 1 nebo 'sloupců' ).

  • index : Alternativa k určení axis=0 . Umožňuje označit štítky řádků, které mají být odstraněny.

  • columns : Alternativa k určení axis=1 . Umožňuje označení sloupců, které mají být odstraněny.

  • inplace : Pokud je nastaveno na True , operace bude provedena na místě, což znamená, že původní DataFrame bude upraven. Pokud je False (výchozí), bude vrácen nový DataFrame s odstraněnými určenými štítky.

  • chyby : Řídí, jak zacházet s chybějícími štítky. Pokud je 'raise' (výchozí), dojde k chybě, když nebudou nalezeny štítky. Pokud je 'coerce' , chybějící štítky budou tiše ignorovány.

Předpokládejme, že máme následující DataFrame:

Sloupec indexu Pandas Drop: Vysvětleno s příklady

Rádi bychom zrušili řádek s indexem 1. Chcete-li to provést pomocí metody drop, můžete napsat následující kód, počínaje importem pandas:

import pandas as pd

# Drop row with index 1
df.drop(1, axis=0)

Argument axis =0 dropu říká interpretu, že provádíme operaci po řádcích. Druhý argument 1 je index řádku. Řekne interpretovi, aby zrušil řádek s indexem 1.

Po výše uvedené operaci získáme následující DataFrame:

Sloupec indexu Pandas Drop: Vysvětleno s příklady

Nyní řekněme, že bychom chtěli z našeho DataFrame vypustit sloupec s věkem jako záhlavím sloupce. Abychom toho dosáhli, můžeme napsat následující kód:

# Drop column 'Age'
df.drop('Age', axis=1)

Argument axis=1 říká interpretu, že provádíme operaci po sloupcích. Argument 'Věk' říká interpretovi, aby vypustil sloupec s názvem 'Věk'.

Po spuštění výše uvedeného kódu získáte následující DataFrame:

Sloupec indexu Pandas Drop: Vysvětleno s příklady

Jak vypustit více řádků a sloupců

Výše uvedený příklad ukazuje vypuštění jednoho řádku nebo sloupce. Co když chcete vypustit více řádků nebo sloupců?

Abychom toho dosáhli, použijeme stejný kód s malými změnami. Namísto použití jedné hodnoty můžeme funkci drop poskytnout několik argumentů pro odstranění více řádků a sloupců najednou.

Řekněme, že chci vypustit první 2 řádky v našem DataFrame. Abychom toho dosáhli, můžeme použít následující kód:

# Dropping first 2 rows by index
df = df.drop([0, 1], axis=0)

V tomto kódu říkáme interpretu, aby zahodil řádky 0 a 1. Výstup tohoto kódu je uveden níže:

Sloupec indexu Pandas Drop: Vysvětleno s příklady

Můžete vidět, že řádky 0 a 1 již nejsou v DataFrame.

Vynechme také sloupce Oddělení a Plat. K tomu můžeme použít následující kód:

# Dropping columns by name
df = df.drop(['Salary', 'Department'], axis=1)

V tomto skriptu žádáme tlumočníka, aby vypustil sloupce se záhlavím sloupců Plat a Oddělení. Výstup tohoto kódu je uveden níže:

Sloupec indexu Pandas Drop: Vysvětleno s příklady

Toto je náš konečný DataFrame. Celkem jsme z našeho DataFrame pomocí metody drop odstranili dva řádky a dva sloupce.

Chcete-li se dozvědět více o MultiIndexu v pandách, podívejte se na následující video:

Jak vypustit řádky a sloupce pomocí Inplace

V předchozím příkladu můžete vidět, že nejprve provedeme změny v DataFrame a poté jej uložíme jako nový DataFrame. Toto však není účinný způsob odstraňování řádků a sloupců.

Další alternativou k odstranění řádků a sloupců je nastavit argument inplace funkce drop na hodnotu True .

Nastavením parametru inplace na hodnotu True můžete objekt DataFrame trvale upravit, aniž byste jej museli znovu přiřazovat.

To je užitečné při práci s velkými DataFrame, protože to může ušetřit paměť tím, že se vyhnete vytváření nového DataFrame.

Následuje příklad vypuštění řádků a sloupců s inplace :

# Dropping rows by index inplace
df.drop(labels=[0, 1], axis=0, inplace=True)

# Dropping columns by name inplace
df.drop(['Salary', 'Department'], axis=1, inplace=True)

Výstup výše uvedeného kódu je uveden níže:

Sloupec indexu Pandas Drop: Vysvětleno s příklady

Zde můžete vidět, že nevytváříme žádný nový DataFrame, ale provádíme změny původního.

Jak pracovat s indexy v Pandas

V této části probereme, jak pracovat s indexy v pandas DataFrame. Budeme se zabývat následujícími dvěma podkapitolami:

  1. Nastavte a resetujte index

  2. ID a index Sloupec

1. Jak nastavit a resetovat index

Jedním z důležitých aspektů práce s pandami je pochopení toho, jak nastavit a resetovat sloupce indexu. Index je klíčový identifikátor pro každý řádek a existují případy, kdy jej můžete chtít změnit.

Nastavení nového indexu

Chcete-li nastavit nový index, můžete použít metodu set_index() . Syntaxe set_index je uvedena níže:

df.set_index('column_name', inplace=True)

Argument inplace=True zde znamená, že provádíme změny ve stávajícím DataFrame.

Abychom to demonstrovali, použijeme následující DataFrame:

Sloupec indexu Pandas Drop: Vysvětleno s příklady

Řekněme, že bychom chtěli udělat ze sloupce Name index našeho DataFrame. Abychom toho dosáhli, můžeme použít následující kód:

df.set_index('Name', inplace=True)

Tento skript Python učiní Name indexem našeho DataFrame. Výstup tohoto kódu je uveden níže:

Sloupec indexu Pandas Drop: Vysvětleno s příklady

Resetování hodnot indexu

Chcete-li obnovit index na jeho výchozí formát (tj. RangeIndex od 0 do délky DataFrame mínus 1), můžete použít metodu reset_index() .

Syntaxe reset_index() je uvedena níže:

df.reset_index(drop=True, inplace=True)

Nastavením drop=True bude odstraněn aktuální sloupec indexu, zatímco inplace=True zajistí, že změny budou aplikovány přímo na DataFrame bez vytvoření nového.

Když použijeme tento kód na předchozí DataFrame, získáme následující výstup:

Sloupec indexu Pandas Drop: Vysvětleno s příklady

Můžete vidět, že název, který byl dříve naším indexem, je resetován na výchozí hodnoty.

2. Další operace se sloupcem indexu

Když importujete DataFrame například ze souboru CSV, můžete pomocí parametru index_col určit sloupec, který se má použít jako index.

Syntaxe index_col je uvedena níže:

df = pd.read_csv('data.csv', index_col='column_name')

Kromě toho, pokud chcete exportovat DataFrame bez indexového sloupce, můžete nastavit parametr index na False.

Syntaxe této metody je uvedena níže:

df.to_csv('output.csv', index=False)

Nyní, když rozumíte metodě odstranění indexu, v další části se podíváme na to, jak můžete zacházet s chybami při použití funkce drop.

Jak zacházet s chybami při používání funkce Drop v Pandas

V této části prozkoumáme, jak zacházet s chybami a zvláštními případy při použití funkce pandas drop k odstranění sloupců indexu z DataFrame.

Konkrétně budeme diskutovat o následujícím:

  1. Zpracování KeyError

  2. Práce s duplicitními řádky

1. Jak zacházet s KeyError

Při použití funkce drop v pandách se můžete setkat s KeyError, pokud zadaný index nebo sloupec není nalezen v DataFrame.

Chcete-li zabránit této chybě, můžete použít parametr chyby . Parametr errors má dvě možnosti: 'raise' a 'ignore'. Ve výchozím nastavení je nastaveno na 'raise', což znamená, že pokud nebude nalezen zadaný index nebo sloupec, bude vyvolána chyba KeyError.

Můžete jej však nastavit na „ignorovat“, pokud chcete chybu potlačit a pokračovat ve spouštění kódu.

Předpokládejme, že máme následující DataFrame, zkusíme vypustit řádek, který v DataFrame neexistuje, a uvidíme, co se stane:

# Attempt to drop a non-existent index, will raise KeyError
# df.drop(5, inplace=True)

Skript Python zobrazí následující chybu:

Chcete-li takové chyby zvládnout, ujistěte se, že odkazujete na řádky, které jsou přítomny v datové sadě.

2. Jak pracovat s duplicitními řádky

Při čištění dat je důležitým úkolem hledat duplikáty a odstraňovat je.

Práce s duplicitními řádky v DataFrame může při použití funkce drop přidat složitost .

Pokud chcete zrušit řádky na základě duplicitních hodnot indexu, můžete použít duplikovanou funkci a poté pomocí logického indexování vybrat pouze neduplikované řádky.

Předpokládejme, že máme následující DataFrame:

Sloupec indexu Pandas Drop: Vysvětleno s příklady

Můžete vidět, že v naší datové sadě máme duplicitní indexy. Chcete-li duplikáty odstranit, nejprve identifikujeme duplicitní hodnoty pomocí následujícího kódu:

# Find duplicated index values
duplicated_rows = df.index.duplicated(keep='first')

Poté vybereme pouze neduplikované řádky a uložíme je do předchozího DataFrame s následujícím kódem:

# Select only non-duplicated rows
df = df[~duplicated_rows]

Konečný výstup je uveden níže:

Konečný výstup již nemá duplicitní řádky.

Závěrečné myšlenky

Jak budete pokračovat ve své cestě za datovou vědou a analytikou, pochopení toho, jak manipulovat a spravovat data, je dovednost, která se ukáže jako nejdůležitější.

Zvládnutí operací, jako je pouštění indexů v pandách, je klíčovou součástí. Vědět, jak resetovat nebo zrušit index, je odrazovým můstkem k čištění, transformaci a získávání cenných poznatků z vašich dat.

Naučíte-li se, jak vypustit indexy, budete moci efektivněji přetvářet své datové rámce. Budete také moci vytvářet čistší datové sady, které se snáze čtou a analyzují. Kromě toho může být resetování indexů zásadní při slučování nebo zřetězení více datových rámců, kde by mohlo dojít ke konfliktům indexů.

Schopnost zrušit indexy vám umožňuje mít větší kontrolu a flexibilitu nad vašimi datovými sadami!


Scatter Plot In R Script: Jak vytvořit a importovat

Scatter Plot In R Script: Jak vytvořit a importovat

V tomto tutoriálu se naučíte, jak vytvořit vizualizaci R bodového grafu v LuckyTemplates pomocí vizuálu R Script.

Zvýšte úroveň ponuky externých nástrojov v LuckyTemplates

Zvýšte úroveň ponuky externých nástrojov v LuckyTemplates

Spoznajte najlepšie externé nástroje v LuckyTemplates a naučte sa, ako ich nainštalovať na plochu LuckyTemplates. Poskytujú vašim prehľadom viac možností.

Vytvořte rychlé měření v LuckyTemplates s Quick Measures Pro

Vytvořte rychlé měření v LuckyTemplates s Quick Measures Pro

V tomto blogu se naučíme a procvičíme si používání Quick Measures Pro, nepostradatelného externího nástroje při provádění rychlých měření v LuckyTemplates.

Zobrazte dátum/čas posledného obnovenia v prehľadoch LuckyTemplates

Zobrazte dátum/čas posledného obnovenia v prehľadoch LuckyTemplates

Zistite, ako nájsť presný dátum posledného obnovenia prehľadu LuckyTemplates. Všetko, čo musíte urobiť, je použiť M kód a pokročilý editor.

Dynamické filtrovanie finančného roka v správach LuckyTemplates

Dynamické filtrovanie finančného roka v správach LuckyTemplates

V tomto návode Ill diskutujeme o tom, ako môžete efektívne filtrovať viacero údajov cez finančný rok v rámci prehľadov LuckyTemplates.

Príručka a ovládanie jazyka Power Query M

Príručka a ovládanie jazyka Power Query M

Tento tutoriál bude diskutovať o tom, ako úspešne implementovať jazyk M a vyriešiť bežné chyby v editore Power Query.

Sloupec indexu Pandas Drop: Vysvětleno s příklady

Sloupec indexu Pandas Drop: Vysvětleno s příklady

Sloupec indexu Pandas Drop: Vysvětleno s příklady

7 způsobů, jak zkontrolovat, zda řetězec Pythonu obsahuje podřetězec

7 způsobů, jak zkontrolovat, zda řetězec Pythonu obsahuje podřetězec

7 způsobů, jak zkontrolovat, zda řetězec Pythonu obsahuje podřetězec

Prehľad dynamického obsahu Power Automate

Prehľad dynamického obsahu Power Automate

Pochopte, čo je dynamický obsah Power Automate a ako umožňuje používateľom vyberať odkazy na polia z predchádzajúcich krokov alebo zapisovať výrazy.

Změna umístění souboru pomocí parametru dotazu v LuckyTemplates

Změna umístění souboru pomocí parametru dotazu v LuckyTemplates

V tomto tutoriálu se naučíte, jak sdílet soubor s osobou, která není součástí vaší společnosti, pomocí parametru dotazu sql v LuckyTemplates.