Datová analytička hozená do vody

Už je to téměř rok od momentu, kdy jsem publikovala svůj závěrečný projekt v rámci Digitální akademie s Czechitas a je to víc než půl roku, co jsem si na LinkedIn přidala položku Data analyst. Navíc dnes, kdy moje kamarádka dostala odpověď, že byla vybrána pro účast na již třetím pražském běhu Digitální akademie, mám potřebu bilancovat. Digitální akademie rozhodně byla jen začátek.

Původně jsem chtěla psát klasický blog s pravidelnými příspěvky o tom, jak postupuji ve své kariéře, a co všechno už umím. Jeden článek jsem chtěla napsat o tom, jak se stát živnostníkem, protože mi trvalo pěkně dlouho, než jsem ten proces na všech možných úřadech pochopila a úspěšně absolvovala. Teď už si to taky nepamatuju, a stejně jako moji známí říkali mě, říkám i já potenciálním živnostníkům, že to zvládnou, není to těžký (haha). Místo toho mě teď čeká další zkouška a to je podání daňového přiznání, o kterém také pravděpodobně nenapíšu.

Zkrátka po dlouhé době chci napsat krátký článek o tom, jaké to je s daty, když vás prostě hodí do vody abyste se naučili plavat.

Data se zpravidla ukládají v databázích, to je něco jako regály se šanony, ty šanony jsou tabulky a v tabulkách jsou řádky a sloupce s daty (papíry v šanonech). Takovou databázi může člověk mít úplně malinkou u sebe na počítači, nebo může být obří uložená na druhém konci světa. Každopádně taková databáze potřebuje server na kterém běží (něco jako místnost na ty regály). Takže jeden z prvních a zásadních poznatků, které jsem učinila, když jsem měla začít sama používat nějaká data bylo, že si musím nainstalovat server! Taková věc pro člověka začínajícího od nuly v oblasti dat vůbec není samozřejmá.

Tady hraje roli ještě celá řada věcí, například serverů jsou mraky druhů, databází jsou mraky druhů, lze používat různé jazyky pro komunikaci s nimi, atd. Na to, abych o tom psala ale fakt nemám znalosti, takže to nechám pro vaši vlastní rešerši.

Když ale přijdete k již existujícímu serveru s funkční databází plnou dat, chcete se podívat, co tam je za data a třeba je analyzovat. K tomu slouží SQL (opět existuje víc druhů SQL podle toho, jakého typu je daná databáze). Zde už jsme doma, SQL jsme se zevrubně naučili na Digitální akademii! Ovšem když máte smůlu, data jsou uložena ve více různých databázích, které jsou navíc různého typu (například jedna je MySQL a druhá je Postgre), tak už není tak jednoduché se k datům dostat. Navíc když máte tu čest pracovat s daty, která jdou do milionů řádků, už taky nemusí utáhnout váš počítač.

Zde nastupuje další super znalost, kterou jsem se trochu naučila na Digitální akademii – programování.

Protože jediný způsob, jak spojit data ze dvou různých databází a následně je stáhnout, je pokud vím napsat skript (v mém případě v Pythonu), který to provede. Takže první věc, kterou uděláte je, že jdete na stackoverflow.com a hledáte tam, jestli někdo již takový problém řešil. Toto je velmi důležitý hint (tak se říká v IT dobré radě), protože umět správně napsat dotaz do Googlu a najít dané téma na stackoverflow.com je základ práce každého člověka, co se pokouší něco vytvořit v IT.

Následně se vynoří další hora překážek, o kterých třeba napíšu zase za rok, jako třeba kódování (proč není vždycky Unicode?), konce řádků (\n nebo \r\n???), špatně zvolená knihovna (proč se proboha jmenuje Psycopg2?), apod.

A když se to vše nakonec nějak podaří vyřešit, narazíte na limity svého počítače musíte se naučit pouštět onen skript na serveru.

Paráda, nakonec máte ta data u sebe. Jsou ve formátu csv, ale když je chcete otevřít v Excelu, tak se to nepodaří, protože mají dva tisíce sloupců a statisíce řádků a to je na excel trochu moc. Na tohle je opět skvělý Python a jeho knihovna Pandas! Ta je totiž dělaná na velká data a velmi dobře se s ní pracuje i když nejste opravdický programátor/opravdická programátorka. Opět nastupuje stackoverflow.com v kombinaci s dokumentací Pandas a jestli chcete grafy, tak ty zas umí jiné knihovny jako třeba Matplotlib.

A tak se člověk dostane až k analyzování dat, které je teprve ta správná zábava.

Tak ten článek je delší, než jsem měla v plánu. A to jsem spoustu zajímavých problémů k řešení a poznatků ani nezmínila. Objevila jsem svět, kde se do smrti mám co učit a objevovat.

Datová analytička hozená do vody