XLSX do CSV v Pythone

Xlsx Do Csv V Pythone



V posledných rokoch sa Python stal jedným z dominantných programovacích jazykov. Komunita Pythonu sa výrazne rozšírila v dôsledku popularity a užitočnosti Pythonu. V tomto článku sa budeme podrobne zaoberať tým, ako používať Python na konverziu XLSX na CSV. Uvedomujeme si, že excelové súbory sa často používajú na vykonávanie finančnej analýzy, organizáciu údajov, zadávanie údajov, účtovníctvo, správu údajov, vytváranie tabuliek a grafov atď. Pre import a export údajov však väčšinou preferujeme použitie súborov CSV. Jedným z prístupov je prenos štruktúrovaných údajov pomocou obyčajného textového súboru.

Čo je súbor Xslx?

Pri vytváraní tabuliek v najnovších verziách Excelu používa Microsoft ako predvolený typ súboru súbor XLSX. Podobne ako pri type súboru DOCX vo Worde môžeme súbory XLSX otvárať pomocou rôznych aplikácií/programov.

Čo je súbor CSV?

Formát súboru CSV je to, čo môžeme použiť na ukladanie tabuľkových údajových hodnôt v tabuľkových procesoroch a databázach. Tabuľkové údaje, text alebo text, sú uložené ako obyčajný text v súbore CSV. Záznam v súbore CSV je hodnota údajov uložená v každom riadku súboru. Každý záznam môže mať viac ako jedno pole oddelené čiarkami.







Kľúčové rozdiely medzi súbormi XLSX a CSV

Používatelia často používajú CSV a XLSX zameniteľne a vo všeobecnosti si neuvedomujú rozdiely medzi nimi, aké sú ich základné charakteristiky a ako fungujú. Slúži len ako zdroj informácií pre používateľa. Takmer každý podnik a podnik ich používa na pomoc používateľom pri správe, aktualizácii a ukladaní údajov pre používateľa. Nasleduje niekoľko kľúčových rozdielov medzi súbormi XLSX a CSV, ktoré by ste mali vedieť:



  • Formát CSV ukladá tabuľkové údaje do textového súboru s oddeľovačom s príponou .csv. Zatiaľ čo súbor Excel alebo XLSX je tabuľkový procesor, ktorý ukladá súbory vo svojom proprietárnom formáte, tj. xls alebo XLSX.
  • Súbory programu Excel sú binárne súbory, ktoré obsahujú údaje na každom pracovnom hárku v zošite. Zatiaľ čo CSV je obyčajný a jednoduchý textový formát so sekvenciou údajových hodnôt oddelených čiarkami.
  • Dátové operácie nie je možné vykonávať so súbormi CSV. Môžu sa však vykonávať na súboroch programu Excel.
  • Súbory CSV sú rýchlejšie a využívajú menej pamäte ako súbory XLSX. Excel však pri importe údajov využíva viac pamäte.
  • Ak porovnáme CSV s Excelom, môžeme otvoriť súbory CSV v ľubovoľnom textovom editore Windows, zatiaľ čo súbory Excel nie.

Ako možno súbor XLSX previesť na CSV pomocou Pythonu?

Súbor XLSX je možné transformovať na súbor CSV v Pythone pomocou rôznych metód. Python obsahuje množstvo modulov a funkcií, ktoré nám môžu pomôcť splniť túto úlohu. Tu si prejdeme niekoľko metód, ktoré možno použiť na konverziu súborov XLSX na súbory CSV v Pythone.



Predpoklady na vykonanie prevodu Excel do CSV

Inštalácia požiadaviek je prvým krokom. V tomto návode používame moduly ako kombinovať Pandy, CSV a Openpyxl atď. Balík Python Pandas umožňuje manipuláciu a analýzu údajov. Pandas je medzi programátormi Pythonu známa knižnica. Súbory Excel je možné čítať a zapisovať pomocou balíka Python známeho ako Openpyxl. S touto knižnicou sa nebudeme priamo zaoberať. Pandy namiesto toho interne využívajú Openpyxl.





Pomocou úložiska PyPI môžeme nainštalovať oba balíčky:

Metóda 1: Konverzia XLSX na CSV pomocou modulu Pandas

Príklad 1: Konverzia jedného súboru XLSX na CSV



Pandas je open-source modul vytvorený pre programovací jazyk Python na manipuláciu a analýzu údajov. Na prácu s časovými radmi a numerickými tabuľkami poskytuje Pandas množstvo funkcií a funkcií. Pomocou pand je možné čítať, filtrovať a preskupovať malé aj veľké súbory údajov. A výsledky možno vytvárať v rôznych formátoch, ako sú Excel, JSON a CSV. Na čítanie excelového súboru používame metódu read_excel() Pandas a metódu to_csv() na transformáciu DataFrame na súbor CSV.

Náš súbor .csv vytlačíme ako DataFrame, ako je vidieť na výstupe. Predchádzajúci skript prevedie náš súbor XLSX do CSV a vytvorí súbor „salary.csv“ v aktuálnom adresári.

Príklad 2: Konverzia súboru XLSX (s viacerými hárkami) na CSV

V nasledujúcom príklade si najprv prečítame názvy hárkov súboru Excel. Názvy jednotlivých hárkov sa potom prechádzajú a ukladajú ako samostatné súbory CSV. Skript uloží súbory CSV na rovnaké miesto.

Používame vzorový súbor XLSX s dvoma alebo viacerými pracovnými hárkami alebo tabuľkami.

Ako je možné vidieť, náš súbor XLSX pozostáva z dvoch listov (list1 a list2). Teraz napíšeme kód na konverziu tohto súboru XLSX na CSV.

Výkon:

Skript úspešne previedol súbor XLSX s dvoma hárkami na jeden súbor CSV s jedným hárkom.

Príklad 3: Konverzia viacerých súborov XLSX na samostatné súbory CSV

Zvážte scenár, v ktorom potrebujete previesť niekoľko súborov Excel vo vašom pracovnom adresári do CSV. Môžete použiť túto metódu. Začneme predpokladom, že každý súbor obsahuje iba jeden hárok. Potom rozšírime našu metódu na spracovanie viacerých súborov a niekoľkých listov. Nasledujúci kód Pythonu využíva štandardný modul glob. Cesty k súborom spájame pomocou vzorov s Glob. Zhoduje sa so všetkými súbormi s príponou .xlsx v pracovnom adresári. Potom vyvinieme funkciu, ktorá načíta súbory programu Excel a uloží ich ako súbory CSV. Túto funkciu voláme pri každej nájdenej ceste k súboru.

Tento predchádzajúci skript skonvertuje všetky súbory xlsx v aktuálnom adresári na súbory CSV.

Teraz konvertujeme súbory XLSX s viacerými tabuľkami do CSV. Toto je s najväčšou pravdepodobnosťou najťažšia časť. V našom pracovnom adresári sú tri súbory programu Excel. Niektoré z nich tiež pozostávajú z viac ako jedného listu. Naším cieľom je:

  1. Vytvorte adresár pre každý tabuľkový súbor,
  2. Preveďte hárky so súbormi programu Excel na CSV a mali by byť uložené v novovytvorenom adresári.

Skript konvertuje XLSX s jedným a viacerými hárkami do samostatných súborov CSV a uloží ich do nových adresárov s rovnakým názvom.

Na načítanie každého súboru Excel umiestneného v aktuálnom adresári sa používa funkcia glob. Potom sa pomocou funkcie os.mkdir vytvoria priečinky pre každý súbor XLSX. Potom sa pre každý hárok v novom adresári vytvorí súbor CSV tak, že sa prejde cez názov hárku.

Metóda 2: Konverzia XLSX na CSV pomocou modulov Openpyxl a CSV

V tejto metóde použijeme moduly openpyxl a CSV na konverziu súborov XLSX na CSV. Na čítanie a zápis súborov xlsx, xlsm, xltx a xltm 2010 je možné použiť modul Python openpyxl. Modul CSV obsahuje triedy, ktoré umožňujú čítanie a zápis tabuľkových údajov vo formáte CSV.

Na čítanie alebo načítanie nášho súboru xlsx používame funkciu load_workbook() modulu openpyxl. Túto funkciu môžete použiť, ak potrebujete zapísať alebo prečítať existujúci súbor XLSX/Excel v Pythone. Po aktivácii excelu použijeme funkciu csv.writer() na vytvorenie nášho CSV súboru. Potom sa for-loop použije na uloženie údajov do dátových buniek súboru CSV. Náš súbor example.xlsx konvertujeme na súbor myfile.csv, ako je vidieť na nasledujúcom obrázku:

Záver

V tomto návode sme vám poskytli krátky úvod do súborov XLSX a CSV. Vysvetlili sme kľúčové rozdiely medzi oboma formátmi súborov. Diskutovali sme o dvoch metódach s viacerými príkladmi, aby sme naučili, ako možno súbory XLSX s jedným alebo viacerými hárkami previesť na súbory CSV. Implementovali sme príklad na konverziu viacerých súborov XLSX na súbory CSV súčasne. Prevod údajov z Excelu do CSV môže byť jednoduchý alebo náročný. Ak máte iba jeden súbor s malým počtom listov, je to jednoduché. Ale ak nie, môže to byť ťažké.