Práca so súbormi Excel pomocou Pandas

Práca so súbormi Excel pomocou Pandas

Tabuľky programu Excel sú veľmi inštinktívne a užívateľsky prívetivé, vďaka čomu sú ideálne na manipuláciu s veľkými súbormi údajov aj pre menej technických ľudí. Ak hľadáte miesta, kde sa môžete naučiť manipulovať a automatizovať veci v súboroch Excelu Python , nehľadaj ďalej. Ste na správnom mieste.

V tomto článku sa dozviete, ako používať pandy pracovať s tabuľkami Excel. V tomto článku sa dozvieme o:

  • Čítať Súbor Excel pomocou Pandy v Pythone
  • Inštalácia a import Pandy
  • Čítanie viacerých hárkov Excelu pomocou Pandas
  • Aplikácia rôznych funkcií Pandas

Čítanie súboru Excel pomocou Pandas v Pythone

Inštalácia Pandy

Na inštaláciu Pandy v Pythone môžeme použiť nasledujúci príkaz v príkazovom riadku:

pip install pandas 

Ak chcete nainštalovať Pandy v Anaconda, môžeme použiť nasledujúci príkaz v Anaconda Terminal:

conda install pandas 

Import Pandy

Najprv musíme importovať modul Pandas, čo je možné vykonať spustením príkazu:

Python3




import> pandas as pd>

Vstupný súbor: Predpokladajme, že súbor programu Excel vyzerá takto

Hárok 1:

1

List 1

Hárok 2:

2

List 2

Teraz môžeme importovať súbor Excel pomocou funkcie read_excel v Pandas na čítanie súboru Excel pomocou Pandas v Pythone. Druhý príkaz načíta údaje z Excelu a uloží ich do dátového rámca pandas, ktorý predstavuje premenná newData.

Python3




df> => pd.read_excel(> 'Example.xlsx'> )> print> (df)>

Výkon:

   Roll No. English Maths Science   0 1 19 13 17 1 2 14 20 18 2 3 15 18 19 3 4 13 14 14 4 5 17 16 20 5 6 19 13 17 6 7 14 20 18 7 8 15 18 19 8 9 13 14 14 9 10 17 16 20 

Načítanie viacerých listov pomocou metódy Concat().

Ak je v zošite programu Excel viacero hárkov, príkaz importuje údaje z prvého hárka. Ak chcete vytvoriť dátový rámec so všetkými hárkami v zošite, najjednoduchším spôsobom je vytvoriť rôzne dátové rámce samostatne a potom ich zreťaziť. Metóda read_excel preberá argument názov_hárka a index_col, kde môžeme určiť hárok, z ktorého by mal byť rám vyrobený, a index_col určuje stĺpec nadpisu, ako je uvedené nižšie:

Príklad:

Tretí príkaz spája oba listy. Teraz, aby sme skontrolovali celý dátový rámec, môžeme jednoducho spustiť nasledujúci príkaz:

Python3




file> => 'Example.xlsx'> sheet1> => pd.read_excel(> file> ,> > sheet_name> => 0> ,> > index_col> => 0> )> sheet2> => pd.read_excel(> file> ,> > sheet_name> => 1> ,> > index_col> => 0> )> # concatinating both the sheets> newData> => pd.concat([sheet1, sheet2])> print> (newData)>

Výkon:

Roll No. English Maths Science 1 19 13 17 2 14 20 18 3 15 18 19 4 13 14 14 5 17 16 20 6 19 13 17 7 14 20 18 8 15 18 19 9 13 14 14 10 17 16 20 1 14 18 20 2 11 19 18 3 12 18 16 4 15 18 19 5 13 14 14 6 14 18 20 7 11 19 18 8 12 18 16 9 15 18 19 10 13 14 14 

Metódy Head() a Tail() v Pandas

Na zobrazenie 5 stĺpcov zhora a zospodu dátového rámca môžeme spustiť príkaz. Toto hlava () a chvost() metóda tiež berie argumenty ako čísla pre počet stĺpcov, ktoré sa majú zobraziť.

Python3




print> (newData.head())> print> (newData.tail())>

Výkon:

 English Maths Science Roll No. 1 19 13 17 2 14 20 18 3 15 18 19 4 13 14 14 5 17 16 20 English Maths Science Roll No. 6 14 18 20 7 11 19 18 8 12 18 16 9 15 18 19 10 13 14 14 

metóda Shape().

The metóda shape(). možno použiť na zobrazenie počtu riadkov a stĺpcov v dátovom rámci takto:

Python3




newData.shape>

Výkon:

(20, 3) 

Metóda Sort_values() v Pandas

Ak niektorý stĺpec obsahuje číselné údaje, môžeme tento stĺpec zoradiť pomocou sort_values() metóda v pandách takto:

Python3




sorted_column> => newData.sort_values([> 'English'> ], ascending> => False> )>

Teraz predpokladajme, že chceme prvých 5 hodnôt zoradeného stĺpca, môžeme tu použiť metódu head():

Python3




sorted_column.head(> 5> )>

Výkon:

 English Maths Science Roll No. 1 19 13 17 6 19 13 17 5 17 16 20 10 17 16 20 3 15 18 19 

Môžeme to urobiť pomocou ľubovoľného číselného stĺpca dátového rámca, ako je uvedené nižšie:

Python3




newData[> 'Maths'> ].head()>

Výkon:

Roll No. 1 13 2 20 3 18 4 14 5 16 Name: Maths, dtype: int64 

Metóda Pandas Describe().

Teraz predpokladajme, že naše údaje sú väčšinou číselné. Štatistické informácie ako priemer, max, min atď. o dátovom rámci môžeme získať pomocou opísať () metóda, ako je uvedené nižšie:

Python3




newData.describe()>

Výkon:

 English Maths Science count 20.00000 20.000000 20.000000 mean 14.30000 16.800000 17.500000 std 2.29645 2.330575 2.164304 min 11.00000 13.000000 14.000000 25% 13.00000 14.000000 16.000000 50% 14.00000 18.000000 18.000000 75% 15.00000 18.000000 19.000000 max 19.00000 20.000000 20.000000 

Môžete to urobiť aj samostatne pre všetky číselné stĺpce pomocou nasledujúceho príkazu:

Python3




newData[> 'English'> ].mean()>

Výkon:

14.3 

Pomocou príslušných metód je možné vypočítať aj ďalšie štatistické informácie. Podobne ako v Exceli je možné použiť aj vzorce a vytvoriť vypočítané stĺpce takto:

Python3




newData[> 'Total Marks'> ]> => > newData[> 'English'> ]> +> newData[> 'Maths'> ]> +> newData[> 'Science'> ]> newData[> 'Total Marks'> ].head()>

Výkon:

Roll No. 1 49 2 52 3 52 4 41 5 53 Name: Total Marks, dtype: int64 

Po operácii s dátami v dátovom rámci môžeme dáta exportovať späť do excelovského súboru metódou to_excel. Na tento účel musíme špecifikovať výstupný súbor Excel, do ktorého sa majú zapísať transformované údaje, ako je uvedené nižšie:

Python3




newData.to_excel(> 'Output File.xlsx'> )>

Výkon:

3

Záverečný list