XLSX în CSV în Python

Xlsx In Csv In Python



În ultimii ani, Python a devenit unul dintre limbajele de programare dominante. Comunitatea Python s-a extins semnificativ ca urmare a popularității și utilității lui Python. Vom intra în detaliu în acest articol despre cum să folosiți Python pentru a converti XLSX în CSV. Suntem conștienți de faptul că fișierele Excel sunt frecvent utilizate pentru a efectua analize financiare, organizarea datelor, introducerea datelor, contabilitate, gestionarea datelor, crearea de diagrame și grafice etc. Cu toate acestea, preferăm de cele mai multe ori să folosim fișiere CSV pentru importul și exportul de date. O abordare este de a transfera datele structurate folosind un fișier text simplu.

Ce este un fișier Xslx?

Când face foi de calcul în cele mai recente versiuni de Excel, Microsoft folosește un fișier XLSX ca tip de fișier implicit. Similar cu tipul de fișier DOCX al Word, putem deschide fișierele XLSX folosind o varietate de aplicații/programe.

Ce este un fișier CSV?

Formatul de fișier CSV este ceea ce putem folosi pentru a stoca valorile datelor tabelare în foi de calcul și baze de date. Datele tabelare, text sau text, sunt stocate ca text simplu într-un fișier CSV. O înregistrare în fișierul CSV este valoarea datelor stocate pe fiecare rând al fișierului. Fiecare înregistrare poate avea mai mult de un câmp care este separat prin virgule.







Diferențele cheie între fișierele XLSX și CSV

Utilizatorii folosesc adesea CSV și XLSX în mod interschimbabil și, în general, nu sunt conștienți de distincțiile dintre ele, care sunt caracteristicile lor fundamentale și cum funcționează. Acesta servește doar ca sursă de informații pentru utilizator. Aproape toate companiile și companiile folosesc ambele pentru a ajuta utilizatorii să gestioneze, să actualizeze și să stocheze datele pentru utilizator. Următoarele sunt câteva diferențe cheie între fișierele XLSX și CSV pe care ar trebui să le cunoașteți:



  • Formatul CSV salvează datele tabelare într-un fișier text delimitator cu extensia .csv. În timp ce fișierul excel sau XLSX este o foaie de calcul care stochează fișiere în formatul său proprietar, adică. xls sau XLSX.
  • Fișierele Excel sunt fișiere binare care conțin datele din fiecare foaie de lucru dintr-un registru de lucru. În timp ce, CSV este un format text simplu și simplu, cu o secvență de valori de date separate prin virgule.
  • Operațiunile de date nu pot fi efectuate pe fișiere CSV. Cu toate acestea, acestea pot fi efectuate pe fișiere Excel.
  • Fișierele CSV sunt mai rapide și folosesc mai puțină memorie decât fișierele XLSX. Cu toate acestea, Excel folosește mai multă memorie atunci când importă datele.
  • Dacă comparăm CSV cu Excel, putem deschide fișierele CSV în orice editor de text Windows, în timp ce fișierele Excel nu pot.

Cum poate fi convertit un fișier XLSX în CSV folosind Python?

Un fișier XLSX poate fi transformat într-un fișier CSV în Python folosind o varietate de metode. Python include o varietate de module și funcții care ne pot ajuta să îndeplinim această sarcină. Aici, vom parcurge câteva metode care pot fi utilizate pentru a converti fișierele XLSX în fișiere CSV în Python.



Cerințe preliminare pentru a efectua conversia Excel în CSV

Instalarea cerințelor este primul pas. Folosim module precum combinarea Pandas, CSV și Openpyxl etc. în acest tutorial. Pachetul Pandas de la Python permite manipularea și analiza datelor. Pandas este o bibliotecă binecunoscută printre programatorii Python. Fișierele Excel pot fi citite și scrise folosind pachetul Python cunoscut sub numele de Openpyxl. Nu vom avea de-a face direct cu această bibliotecă. Pandas folosesc în schimb Openpyxl intern.





Folosind depozitul PyPI, putem instala ambele pachete:

Metoda 1: Conversia XLSX în CSV utilizând modulul Pandas

Exemplul 1: conversia unui fișier XLSX în CSV



Pandas este un modul open-source creat pentru limbajul de programare Python pentru a manipula și analiza datele. Pentru a lucra cu serii temporale și tabele numerice, Pandas oferă o varietate de funcționalități și caracteristici. Folosind panda, seturile de date mici și mari pot fi citite, filtrate și rearanjate. Iar rezultatele pot fi produse într-o varietate de formate, cum ar fi Excel, JSON și CSV. Folosim metoda read_excel() a lui Pandas pentru a citi un fișier Excel și metoda to_csv() pentru a transforma DataFrame într-un fișier CSV.

Tipărim fișierul nostru .csv ca DataFrame, așa cum se poate vedea în rezultat. Scriptul anterior convertește fișierul nostru XLSX în CSV și creează un fișier „salary.csv” în directorul curent.

Exemplul 2: Conversia fișierului XLSX (cu mai multe foi) în CSV

În exemplul care urmează, citim mai întâi numele foilor fișierului Excel. Numele foilor individuale sunt apoi trecute în buclă și salvate ca fișiere CSV distincte. Scriptul salvează fișierele CSV în aceeași locație.

Folosim un exemplu de fișier XLSX care conține două sau mai multe foi de lucru sau foi de calcul.

După cum se vede, fișierul nostru XLSX este format din două foi (sheet1 și sheet2). Acum, scriem un cod pentru a converti acest fișier XLSX în CSV.

Ieșire:

Scriptul a convertit cu succes fișierul XLSX cu două foi într-un singur fișier CSV cu o singură foaie.

Exemplul 3: Conversia mai multor fișiere XLSX în fișiere CSV separate

Luați în considerare un scenariu în care aveți nevoie să convertiți mai multe fișiere Excel din directorul de lucru în CSV. Ai putea folosi această metodă. Începem prin a presupune că fiecare fișier conține o singură foaie. Apoi, ne extindem metoda pentru a gestiona mai multe fișiere și mai multe foi. Codul Python care urmează utilizează modulul standard glob. Potrivim căile fișierelor folosind modele cu Glob. Se potrivește cu toate fișierele cu extensia .xlsx din directorul de lucru. După aceea, dezvoltăm o funcție care citește fișierele Excel și le salvează ca fișiere CSV. Numim această funcție pe fiecare cale de fișier care este găsită.

Acest script anterior convertește toate fișierele xlsx din directorul curent în fișiere CSV.

Acum, convertim fișierele XLSX cu mai multe foi de calcul în CSV. Aceasta este cel mai probabil partea dificilă. Trei fișiere Excel se află în directorul nostru de lucru. De asemenea, unele dintre ele constau din mai mult de o foaie. Ne propunem să:

  1. Creați un director pentru fiecare fișier de foaie de calcul,
  2. Convertiți foile de fișier Excel în CSV și ar trebui să fie păstrate în directorul nou creat.

Scriptul convertește XLSX cu coli unice și multiple în fișiere CSV separate și le stochează în directoare noi cu același nume.

Pentru a prelua fiecare fișier Excel aflat în directorul curent, se folosește funcția glob. După aceea, folderele sunt create pentru fiecare fișier XLSX folosind funcția os.mkdir. Un fișier CSV este apoi creat pentru fiecare foaie din noul director, parcurgând bucla peste numele foii.

Metoda 2: Conversia XLSX în CSV utilizând modulele Openpyxl și CSV

În această metodă, vom folosi modulele openpyxl și CSV pentru a converti fișierele XLSX în CSV. Pentru a citi și scrie fișiere 2010 xlsx, xlsm, xltx și xltm, poate fi utilizat modulul Python openpyxl. Modulul CSV include clase care permit citirea și scrierea datelor tabelare în format CSV.

Pentru a citi sau încărca fișierul nostru xlsx, folosim funcția load_workbook() a modulului openpyxl. Puteți utiliza această funcție dacă aveți nevoie să scrieți sau să citiți un fișier XLSX/Excel existent în Python. După activarea Excel, folosim funcția csv.writer() pentru a crea fișierul CSV. Apoi, bucla for este folosită pentru a stoca datele în celulele de date ale fișierului CSV. Convertim fișierul nostru example.xlsx în myfile.csv, așa cum se vede în următoarea imagine:

Concluzie

În acest tutorial, v-am oferit o scurtă introducere în fișierele XLSX și fișierele CSV. Am explicat diferențele cheie dintre ambele formate de fișiere. Am discutat două metode cu mai multe exemple pentru a învăța cum fișierele XLSX cu foi simple sau multiple pot fi convertite în fișiere CSV. Am implementat un exemplu pentru a converti mai multe fișiere XLSX în fișiere CSV simultan. Convertirea datelor din Excel în CSV poate fi simplă sau dificilă. Dacă aveți un singur fișier cu un număr mic de foi, este simplu. Dar dacă nu, poate fi dificil.