4. diel - Dátový formát CSV
V predchádzajúcej lekcii, Štruktúrované a neštruktúrované údaje, sme sa zoznámili s rozdielmi medzi štruktúrovanými a neštruktúrovanými dátami a s možnosťami ich kombinácie.
V tomto tutoriáli sa ponoríme do základov dátových formátov, ktoré sú kľúčové na ukladanie, výmenu a analýzu dát. Zameriame sa na CSV. Preskúmame jeho štruktúru, výhody aj nevýhody a ukážeme si, ako s ním pracovať v praxi.
Dátové formáty
Pre kompatibilitu medzi rôznymi systémami a na zabezpečenie jednoduchého spracovania a následnej analýzy vznikli štandardizované dátové formáty. Tie definujú štruktúru a spôsob zápisu dát. Medzi najpoužívanejšie patrí už spomínané CSV, ďalej potom JSON, XML a SQL. Správna voľba formátu môže výrazne ovplyvniť efektivitu dátovej analýzy a interpretáciu výsledkov.
CSV formát
CSV (Comma-Separated Values – hodnoty oddelené čiarkou) je obľúbený formát vďaka svojej jednoduchosti a kompatibilite s mnohými nástrojmi. Napríklad ho možno jednoducho otvoriť v aplikácii Excel. Väčšina databázových systémov umožňuje import dát z CSV aj export dát z databázy do CSV (napríklad pri práci s dátami z e-shopu).
Štruktúra CSV
CSV sa používa na ukladanie tabuľkových dát. CSV súbor evidujúci napr. dve osoby by vyzeral takto:
FirstName;LastName;Street;City;ZIP John;Smith;31 Queen Street;Liverpool;13 Jane;Davis;19 Park Avenue;Leeds;28
Hodnoty sú oddelené čiarkami (prípadne bodkočiarkami). Dáta sú usporiadané do riadkov, každá položka na jednom. CSV zvyčajne obsahuje prvý, teda hlavičkový riadok, kde je popísané, čo ktorý stĺpec znamená.
CSV je najkratší zo spomínaných formátov, ale tiež najhoršie čitateľný. Nie je univerzálny – nepodporuje zložité dátové štruktúry (ako sú hierarchie) ani binárne dáta (napr. obrázky).
Problémy môžu nastať s čiarkami vo vnútri hodnôt. Ak hodnota sama obsahuje čiarku, program, ktorý súbor CSV číta, ju môže mylne interpretovať ako oddeľovač medzi hodnotami. To môže viesť k chybnému spracovaniu dát. Preto sa často používa bodkočiarka.
Príprava nástrojov - Excel a Google Sheets

V kurze si môžete vybrať, či budete pracovať s Microsoft Excel alebo s Google Sheets. Obe aplikácie umožňujú základnú aj pokročilú prácu s dátami, ale je tu niekoľko variantov a rozdielov, ktoré vás môžu zmiasť. Poďme si ich opísať:
- Excel (napr. Excel 2024) je súčasťou balíka Microsoft 365. Balík obsahuje desktopové aplikácie Office, webové verzie aplikácií a webové úložisko. Desktopová verzia je štandardom v praxi a odporúčame si ju zakúpiť na stránke www.office.com. Má širšiu funkcionalitu a lepšiu podporu pre veľké datasety. V desktopovom Exceli 2024 bol tento kurz vytváraný a je preň odskúšaný.
- Microsoft ponúka aj 30-dňovú skúšobnú verziu Microsoft 365, ktorá zahŕňa plnohodnotný desktopový Excel (vyžaduje zadanie platobnej metódy, ale dá sa kedykoľvek zrušiť).
- Existuje aj bezplatne dostupná webová verzia Excelu, na ktorú sa dostanete po prihlásení do svojho účtu Microsoft na https://www.office.com. Webová verzia neobsahuje všetky funkcie (napr. chýba Power Query, pokročilé grafy atď.). Webová verzia môže mať nastavený iný jazyk než aký chceme, prípadne jazyk prepnete v menu File -> Options -> Regional Settings:

Webová verzia bude mať tiež pravdepodobne zjednodušené rozhranie kariet. Pre náš kurz bude lepšie prepnúť do plného zobrazenia pomocou šípky vpravo a výberu možnosti Classic Ribbon:

- Google Sheets (Google Tabuľky) je bezplatná alternatíva od Google, vhodná pre začiatočníkov alebo ak nemáte a nechcete si zaobstarať Excel. Kurz je odskúšaný aj pre Google Sheets. Niekedy však postup pre Sheets neobsahuje tie isté kroky ako postup pre Excel, pretože Sheets nepodporujú všetky funkcie.
Medzi postupom pre Excel a Sheets si môžete prepínať záložkami, pozrite ďalej.
Využitie CSV súborov v praxi
Pre praktickú ukážku práce s CSV súbormi sme si vybrali dataset elektromobilov z portálu Kaggle. Súbory stiahneme a rozbalíme.
Portál Kaggle vyžaduje pred stiahnutím registráciu. Ak sa nechcete registrovať, pripravili sme pre vás súbor na stiahnutie v archíve na konci tejto lekcie. Po stiahnutí sa vráťte späť na toto miesto.
Práca s csv
súbormi v Exceli a Google Sheets
Archív si rozbalíme do nejakej zložky. Nájdeme v ňom súbory
ElectricCarData_Clean.csv a ElectricCarData_Norm.csv.
Verzia ElectricCarData_Clean.csv obsahuje hodnoty bez jednotiek,
druhá verzia má potom pri každej hodnote napísanú aj jednotku (napr. km/h).
To nie je na prácu s dátami úplne šikovné, preto si otvoríme verziu
Clean.
Podľa toho, či používate Excel alebo Google Sheets, si môžete prepnúť ďalší postup kliknutím na príslušnú záložku.
-
Otvorenie CSV priamo v Exceli
Niekedy stačí len na súbor poklepať vo Windows a zvoliť Otvoriť v Exceli. Excel však dáta naimportuje podľa regionálneho nastavenia a môže použiť nesprávny oddeľovač, typicky bodkočiarku (
;), ktorá je vo východzom nastavení slovenských Windows. Či všetko prebehlo v poriadku, ľahko overíte. Excel musí zobrazovať niekoľko stĺpcov s hodnotami a nesmie byť všetko v jednom:
Na obrázku vyššie Excel zobrazuje textový CSV súbor prehľadne rozdelený do stĺpcov a riadkov. To je oveľa lepšie, než čítať ho ako prostý text. Prvý riadok navyše hodnoty opisuje. Vidíme tu: značku elektromobilu, model, zrýchlenie, maximálnu rýchlosť a ďalšie parametre. Každý ďalší riadok je jedno vozidlo.
Import CSV do Excelu
V prípade problémov s otvorením možno najprv spustiť Excel, vytvoriť nový prázdny súbor a na záložke Data zvoliť From File → From Text/CSV:

Následne vyberieme súbor
ElectricCarData_Clean.csv. Excel nám v tomto prípade zobrazí náhľad s prednastaveným oddeľovačomčiarka(prípadne ho vyberte) a kódovaním (v slovenskej verzii pravdepodobne prednastaví kódovanie1250: Stredná Európa (Windows). Pri súboroch zo zahraničia bude najčastejšie potrebné zvoliť65001: Unicode UTF-8(to je východiskové medzinárodné kódovanie textu). Ak však v texte nie sú žiadne špeciálne znaky ako ěščřžý, čo v tomto súbore nie sú, je to jedno. Znaky A-Z a 0-9 budú fungovať v každom kódovaní. Zmenou nastavenia môžeme importovať súbory v rôznom kódovaní alebo s inými oddeľovačmi a v náhľade vidíme, či sa rozdelia do stĺpcov správne:
Skôr než import potvrdíme, môžeme ešte dáta jednoducho transformovať tlačidlom Transformovať dáta. Tým prevedieme napr. na anglické desatinné bodky. Kliknutie na tlačidlo otvorí nástroj Editor Power Query. V záhlaví požadovaného stĺpca (my si vyskúšame zmeniť formát čísla v stĺpci
AccelSec, čo je akcelerácia vozidla) klikneme na ikonu na začiatku a vyberieme možnosť Change locale type..., Data type nastavíme na Decimal Number a Locale na English (United States):
Podobne môžeme transformovať aj dáta v iných stĺpcoch. V ľavom hornom rohu Editora Power Query zvolíme Close and Load. Otvorí sa nám do stĺpcov roztriedená tabuľka:

-
Otvorenie CSV v Google Sheets
Na https://sheets.google.com vytvoríme Novú tabuľku a následne vyberieme v menu File -> Import:

Vyberieme záložku Upload a tlačidlom Browse vyberieme súbor
ElectricCarData_Clean.csvz nášho počítača:
Nakoniec necháme Sheets automaticky zistiť typ oddeľovača. Ak by sa import nepodaril, môžeme oddeľovač zvoliť. V prípade tohto súboru je oddeľovač čiarka. Klikneme na tlačidlo Import data:

Dáta sa z textového súboru automaticky zobrazia prehľadne v stĺpcoch a riadkoch. Zostáva súbor pomenovať v záhlaví:

Na obrázku vyššie Sheets zobrazujú textový CSV súbor prehľadne rozdelený do stĺpcov a riadkov. To je oveľa lepšie, než čítať ho ako prostý text. Prvý riadok navyše hodnoty opisuje. Vidíme tu: značku elektromobilu, model, zrýchlenie, maximálnu rýchlosť a ďalšie parametre. Každý ďalší riadok je jedno vozidlo.
Ak sú všetky hodnoty v jedinom stĺpci a stále oddelené čiarkami, import sa nepodaril. V tomto prípade ho skúste znova a vyberte ako oddeľovač čiarku.
V nasledujúcom cvičení, Riešené úlohy k 1.-4. lekciu úvodu do dátovej analýzy, si precvičíme nadobudnuté skúsenosti z predchádzajúcich lekcií.
Stiahnuť
Stiahnutím nasledujúceho súboru súhlasíš s licenčnými podmienkamiStiahnuté 653x (7.09 kB)
