XLSX-st CSV-ks Pythonis

Xlsx St Csv Ks Pythonis



Viimastel aastatel on Python tõusnud üheks domineerivaks programmeerimiskeeleks. Pythoni kogukond on Pythoni populaarsuse ja kasulikkuse tõttu märkimisväärselt laienenud. Selles artiklis käsitleme üksikasjalikult Pythoni kasutamist XLSX-i CSV-vormingus teisendamiseks. Oleme teadlikud, et exceli faile kasutatakse sageli finantsanalüüsi tegemiseks, andmete korrastamiseks, andmete sisestamiseks, raamatupidamiseks, andmehalduseks, diagrammide ja graafikute koostamiseks jne. Enamasti eelistame siiski andmete importimiseks ja eksportimiseks kasutada CSV-faile. Üks lähenemisviis on struktureeritud andmete edastamine lihttekstifaili abil.

Mis on Xslx-fail?

Exceli uusimates versioonides tabeleid tehes kasutab Microsoft vaikefailitüübina XLSX-faili. Sarnaselt Wordi DOCX-failitüübiga saame XLSX-faile avada mitmesuguste rakenduste/programmide abil.

Mis on CSV-fail?

CSV-failivormingut saame kasutada tabeliandmete väärtuste salvestamiseks arvutustabelitesse ja andmebaasidesse. Tabeliandmed, tekst või tekst, salvestatakse lihttekstina CSV-faili. Kirje CSV-failis on andmeväärtus, mis on salvestatud faili igale reale. Igal kirjel võib olla rohkem kui üks komadega eraldatud väli.







Peamised erinevused XLSX- ja CSV-failide vahel

Kasutajad kasutavad CSV-d ja XLSX-i sageli vaheldumisi ning nad ei ole üldiselt teadlikud nende vahelistest erinevustest, nende põhiomadustest ja toimimisest. See toimib ainult kasutaja teabeallikana. Peaaegu kõik ettevõtted ja ettevõtted kasutavad mõlemat, et aidata kasutajatel andmeid kasutaja jaoks hallata, värskendada ja salvestada. Järgmised on mõned peamised erinevused XLSX- ja CSV-failide vahel, mida peaksite teadma.



  • CSV-vorming salvestab tabeliandmed .csv-laiendiga eraldajatekstifaili. Arvestades, et Exceli või XLSX-fail on arvutustabel, mis salvestab failid oma patenteeritud vormingus, st. xls või XLSX.
  • Exceli failid on binaarfailid, mis sisaldavad andmeid töövihiku igal töölehel. CSV on aga tavaline ja lihtne tekstivorming, mille andmeväärtuste jada on eraldatud komadega.
  • CSV-failidega ei saa andmetoiminguid teha. Neid saab aga teostada Exceli failides.
  • CSV-failid on kiiremad ja kasutavad vähem mälu kui XLSX-failid. Kuid Excel kasutab andmete importimisel rohkem mälu.
  • Kui võrdleme CSV-d Exceliga, saame CSV-faile avada mis tahes Windowsi tekstiredaktoris, samas kui Exceli failid ei saa.

Kuidas saab XLSX-faili Pythoni abil CSV-ks teisendada?

XLSX-faili saab Pythonis CSV-failiks muuta, kasutades erinevaid meetodeid. Python sisaldab mitmesuguseid mooduleid ja funktsioone, mis aitavad meil seda ülesannet täita. Siin käsitleme paari meetodit, mida saab kasutada XLSX-failide teisendamiseks Pythonis CSV-failideks.



Eeltingimused Exceli CSV-ks teisendamiseks

Nõuete installimine on esimene samm. Selles õpetuses kasutame selliseid mooduleid nagu Pandas, CSV ja Openpyxl jne. Pythoni Pandase pakett võimaldab andmetega manipuleerida ja neid analüüsida. Pandas on Pythoni programmeerijate seas tuntud raamatukogu. Exceli faile saab lugeda ja kirjutada Openpyxli nime all tuntud Pythoni paketi abil. Me ei tegele selle raamatukoguga otseselt. Pandad kasutavad selle asemel Openpyxli sisemiselt.





PyPI hoidla abil saame installida mõlemad paketid:

1. meetod: XLSX-i teisendamine CSV-vormingusse Pandase mooduli abil

Näide 1: ühe XLSX-faili teisendamine CSV-vormingusse



Pandas on Pythoni programmeerimiskeele jaoks loodud avatud lähtekoodiga moodul andmete töötlemiseks ja analüüsimiseks. Aegridade ja numbriliste tabelitega töötamiseks pakub Pandas mitmesuguseid funktsioone ja funktsioone. Pandade abil saab lugeda, filtreerida ja ümber korraldada nii väikeseid kui ka suuri andmekogumeid. Ja tulemusi saab toota erinevates vormingutes, nagu Excel, JSON ja CSV. Kasutame Pandase meetodit read_excel() Exceli faili lugemiseks ja meetodit to_csv() DataFrame'i CSV-failiks muutmiseks.

Prindime oma .csv-faili DataFrame'ina, nagu on näha väljundis. Eelmine skript teisendab meie XLSX-faili CSV-vormingusse ja loob praeguses kataloogis faili 'salary.csv'.

Näide 2: XLSX-faili (mitme lehega) teisendamine CSV-vormingusse

Järgmises näites loeme esmalt Exceli faili lehtede nimed. Seejärel vaadatakse läbi üksikute lehtede nimed ja salvestatakse eraldi CSV-failidena. Skript salvestab CSV-d samasse asukohta.

Kasutame XLSX-i näidisfaili, millel on kaks või enam töölehte või arvutustabelit.

Nagu näha, koosneb meie XLSX-fail kahest lehest (leht1 ja leht2). Nüüd kirjutame selle XLSX-faili CSV-vormingus teisendamiseks koodi.

Väljund:

Skript teisendas kahe lehega XLSX-faili edukalt üheks CSV-failiks ühe lehega.

Näide 3: mitme XLSX-faili teisendamine eraldi CSV-failideks

Mõelge stsenaariumile, mille puhul peate oma töökataloogis mitu Exceli faili CSV-vormingusse teisendama. Võite seda meetodit kasutada. Alustame eeldades, et iga fail sisaldab ainult ühte lehte. Seejärel laiendame oma meetodit mitme faili ja mitme lehe käsitlemiseks. Järgnev Pythoni kood kasutab globaalset standardmoodulit. Failiteed sobitame mustrite abil Globiga. See sobitab töökataloogis kõik failid laiendiga .xlsx. Pärast seda töötame välja funktsiooni, mis loeb Exceli faile ja salvestab need CSV-failidena. Kutsume seda funktsiooni igal leitud failiteel.

See eelmine skript teisendab kõik praeguses kataloogis olevad xlsx-failid CSV-failideks.

Nüüd teisendame mitme arvutustabeliga XLSX-failid CSV-vormingusse. See on tõenäoliselt kõige raskem osa. Kolm Exceli faili on meie töökataloogis. Samuti koosnevad mõned neist rohkem kui ühest lehest. Meie eesmärk on:

  1. Looge iga arvutustabelifaili jaoks kataloog,
  2. Teisendage Exceli faililehed CSV-vormingusse ja neid tuleks hoida vastloodud kataloogis.

Skript teisendab ühe ja mitme lehe XLSX-i eraldi CSV-failideks ja salvestab need uutesse sama nimega kataloogidesse.

Iga praeguses kataloogis asuva Exceli faili toomiseks kasutatakse funktsiooni glob. Pärast seda luuakse iga XLSX-faili jaoks kaustad funktsiooni os.mkdir abil. Seejärel luuakse uues kataloogis iga lehe jaoks CSV-fail, silmuse abil üle lehe nime.

2. meetod: XLSX-i teisendamine CSV-ks Openpyxli ja CSV-moodulite abil

Selle meetodi puhul kasutame XLSX-failide CSV-vormingus teisendamiseks openpyxl- ja CSV-mooduleid. 2010. aasta xlsx, xlsm, xltx ja xltm failide lugemiseks ja kirjutamiseks saab kasutada Pythoni moodulit openpyxl. CSV-moodul sisaldab klasse, mis võimaldavad lugeda ja kirjutada CSV-vormingus tabeliandmeid.

Meie xlsx-faili lugemiseks või laadimiseks kasutame openpyxl-mooduli funktsiooni load_workbook(). Saate seda funktsiooni kasutada, kui peate Pythonis kirjutama või lugema olemasolevat XLSX/Exceli faili. Pärast Exceli aktiveerimist kasutame CSV-faili loomiseks funktsiooni csv.writer(). Seejärel kasutatakse for-loopi andmete salvestamiseks CSV-faili andmelahtritesse. Teisendame faili example.xlsx failiks myfile.csv, nagu on näha järgmisel pildil:

Järeldus

Selles õpetuses tutvustasime teile lühidalt XLSX-faile ja CSV-faile. Selgitasime mõlema failivormingu peamisi erinevusi. Arutasime kahte meetodit koos mitme näitega, et õpetada, kuidas ühe või mitme lehe XLSX-faile saab teisendada CSV-failideks. Rakendasime näite mitme XLSX-faili samaaegseks teisendamiseks CSV-failideks. Andmete teisendamine Excelist CSV-vormingusse võib olla lihtne või keeruline. Kui teil on ainult üks fail väikese arvu lehtedega, on see lihtne. Aga kui ei, võib see olla keeruline.