Veľké dátové aktíva sú chaotické, najmä keď ich musíte stiahnuť z webových stránok, serverov alebo iných zdrojov údajov.

Aplikácie založené na používateľskom rozhraní, ako je MS Excel, sú dobré na prácu s jednoduchými súbormi údajov, ale môžu mať problémy, keď sa údaje zväčšia. To je dobrý dôvod, prečo prejsť na Python, aby ste mohli vykonávať zložitejšie operácie založené na údajoch.

Knižnica tretej strany v Pythone, Pandas, vám pomôže rýchlo triediť vaše existujúce množiny údajov. Ak chcete zoradiť svoje údaje v Pythone, tento článok sa zaoberá niekoľkými spôsobmi, ako dosiahnuť túto úlohu.

Predpoklady na používanie Pythonu na triedenie údajov

Pred triedením údajov v Pythone sa musíte postarať o niekoľko predpokladov:

  • Stiahnite si Python IDE. Môžete použiť a IDE kompatibilné s Python, ako sú okrem iného Jupyter Notebook, PyCharm a Spyder. Každá z nich je kompatibilná so všetkými verziami Pythonu.
  • Nainštalujte pandy. Budete potrebovať balík pandy, ktorý môžete nainštalovať pomocou PIP alebo vami preferovaný spôsob.
  • instagram viewer
  • Vzorový súbor údajov. Stiahnite si a vzorový súbor údajov na precvičenie uvedených kódov. Prípadne môžete tieto postupy použiť na svoje výhradné údaje.

Import knižnice Pandas v Pythone

Pandas je knižnica Python tretej strany, ktorú môžete použiť na prácu s formátmi Excel, CSV a inými formátmi údajov.

Ak chcete pracovať so vzorovým súborom programu Excel, začnite importovaním knižnice pandas. Potom budete používať postup importu na čítanie údajov programu Excel do jazyka Python.

Ak chcete importovať knižnicu

importovať pandy ako pd

Vytvorte nový údajový rámec na načítanie údajov programu Excel

súbor = "Ukážka - Superstore.xls"
df = pd.read_excel (súbor)
df.hlava()

Kde:

  • df je objekt DataFrame, ktorý ukladá importované údaje.
  • pd je alias knižnice Pandas.
  • read_excel je metóda na čítanie súboru Excel do Pythonu.
  • súbor je cesta k súboru programu Excel.
  • hlavu je metóda, ktorá vracia prvých päť riadkov z DataFrame.

Keď váš program načíta údaje, môžete použiť množstvo dostupných metód DataFrame na ich triedenie rôznymi spôsobmi.

1. Triedenie podľa jedného stĺpca v DataFrame

Keďže vaše údaje budú mať veľa riadkov a stĺpcov, často budete chcieť zoradiť údaje na základe konkrétneho stĺpca alebo stĺpcov.

Python štandardne triedi údaje vo vzostupnom poradí. Ak chcete zmeniť poradie triedenia, musíte to výslovne uviesť vo svojom kóde.

Zoradiť podľa jedného stĺpca (vzostupne)

df.sort_values ​​(podľa = "ID zákazníka")

Zoradiť podľa jedného stĺpca (zostupne)

Nastaviť vzostupne parameter do Nepravdivé na zoradenie stĺpca v zostupnom poradí.

df.sort_values ​​(podľa = "ID zákazníka", vzostupne=nepravda)

Kde:

  • df je objekt DataFrame obsahujúci údaje.
  • hodnoty_triedenia je metóda triedenia podľa údajových hodnôt.
  • podľa je parameter na definovanie názvu stĺpca.
  • vzostupne je parameter na definovanie poradia triedenia.

2. Triedenie viacerých stĺpcov v dátovom rámci

Ak si to vyžadujú vaše požiadavky, môžete svoje DataFrame (rámce) triediť aj podľa viacerých stĺpcov naraz. V takomto scenári musíte definovať odkazy na stĺpce v zozname.

Zoradiť podľa viacerých stĺpcov vzostupne

df.sort_values ​​(podľa = ["ID zákazníka", "Mesto"])

Zoradiť podľa viacerých stĺpcov zostupne

Použite funkciu vzostupne = nepravda na zoradenie stĺpcov v zostupnom poradí. Nezabudnite, že musíte zadať názvy stĺpcov v zozname, aby ste ich mohli zoradiť súčasne.

df.sort_values ​​(podľa = ["ID zákazníka", "Mesto"], vzostupne = False)

Triedenie podľa viacerých stĺpcov v rôznych zoradeniach

Čo sa stane, keď budete chcieť zoradiť jeden stĺpec zostupne a druhý vzostupne, keď vám prekážajú základy triedenia? Aby ste začlenili tieto požiadavky, musíte svoj kód mierne upraviť.

Napríklad triediť región a Mesto stĺpce v zostupnom a vzostupnom poradí:

df.sort_values ​​(podľa = ["región", "Mesto"], vzostupne = [False, True])

Vysvetlenie tohto kódu je jednoduché; definujete názov DataFrame a odošlete ho hodnoty_triedenia spolu s názvami stĺpcov v zozname. Mali by ste použiť Boolean hodnoty na určenie poradia zoradenia.

Takéto volanie funkcie znamená, že Python bude najprv triediť podľa stĺpca Región DataFrame v zostupnom poradí. Potom sa riadky s identickým regiónom ďalej zoradia podľa stĺpca Mesto vo vzostupnom poradí.

3. Ako triediť stĺpce v dátovom rámci podľa indexu

Indexová premenná je predvolená hodnota priradená ku každému riadku v rámci dátového rámca Pythonu. Môžete definovať hodnoty indexu alebo nechať Python nastaviť hodnotu indexu samostatne.

Ak chcete zoradiť údaje podľa ich indexovej hodnoty, môžete použiť sort_index funkciu. Táto funkcia triedi na základe indexu, nie na základe hodnôt obsiahnutých v pôvodnej množine údajov.

df.index_triedenia()

Rovnako ako v prípade hodnôt sort_values, môžete odovzdať súbor vzostupne parameter na určenie smeru triedenia. Napríklad odovzdajte hodnotu Nepravdivé zoradiť údaje v zostupnom poradí:

df.sort_index (vzostupne = Nepravdivé)

4. Triedenie stĺpcov v dátovom rámci namiesto riadkov

Namiesto triedenia riadkov v DataFrame môžete triediť jeho stĺpce. Môžete to urobiť volaním metódy sort_index a jej odovzdaním os parameter s hodnotou 1:

df.sort_index (os=1)

Tento krok zoradí DataFrame podľa jeho stĺpcov vo vzostupnom poradí. Ak chcete zoradiť stĺpce DataFrame v zostupnom poradí, môžete zadať poradie zoradenia v kroku zoradenia.

df.sort_index (os=1, vzostupne = Nepravdivé)

5. Úprava dátového rámca pri jeho triedení

Tieto dve metódy triedenia fungujú tak, že vracajú kópiu pôvodných údajov v ich novom zoradenom stave. Ak chcete ušetriť úložný priestor alebo jednoducho napísať stručnejší kód, môžete namiesto toho upraviť pôvodné údaje DataFrame. Každá metóda akceptuje na mieste booleovský parameter, ktorý upravuje údaje namiesto toho, aby vrátil upravenú kópiu.

df.sort_values ​​(podľa = ["ID zákazníka", "Mesto"], vzostupne = nepravda, na mieste = pravda)

Naučiť sa triediť dáta v Pythone

Python replikuje mnoho vstavaných funkcií Excelu pomocou niekoľkých riadkov kódu. Od triediacich procedúr až po vytváranie prepracovaných kontingenčných tabuliek na vašich údajoch, môžete to pomenovať a môžete to urobiť v Pythone.

Ak ste v Pythone ešte nováčik a učíte sa laná, tieto kroky vylepšia vaše kódovacie zručnosti pomerne ľahko.