Jak zostać analitykiem danych w 7 miesięcy bez wychodzenia z domu?

Skoro programowania Javy uczymy w ciągu 10 miesięcy, to analizy danych nauczymy Cię w zaledwie 7. To nawet mniej niż rok na jakichkolwiek studiach. Wiedzy natomiast dostajesz dokładnie tyle, ile potrzebujesz, by zostać analitykiem danych. I to bez wcześniejszego doświadczenia.

Z tekstu dowiesz się: jak zacząć przygodę z analizą danych ,

, jak zdobyć wykształcenie potrzebne w pracy analityka danych,

czy analizy danych można nauczyć się na kursie online,

jakich umiejętności i narzędzi potrzebuje Data Analyst,

gdzie jest praca dla analityka danych.

Stworzenie kursu związanego z analizą danych było dla nas kolejnym krokiem w rozwoju naszej szkoły IT. Dzięki partnerstwu z Pracuj.pl jesteśmy na bieżąco z trendami i rosnącą popularnością Data Science. Wiemy jednak, że dla Ciebie – jeśli dopiero wdrażasz się w zakamarki tej dziedziny – analiza danych kryje wiele niewiadomych. Dlatego dziś pokażemy Ci, jak zostać analitykiem danych. Sposobów jest, oczywiście, kilka.

Przeczytaj także: Kluczowi gracze, czyli stanowiska w projektach Big Data

Big Data – jak zacząć przygodę z analizą danych?

Czasem wystarczy drobna wskazówka, aby zdecydować o zmianie. Dla kogoś będzie to podpowiedź od znajomego, dla Ciebie być może artykuł w internecie dotyczący przyszłościowej dziedziny. A analiza danych zdecydowanie nią jest.

Zmianę ścieżki kariery warto jednak zacząć od researchu, zwłaszcza jeśli dotąd Twój zawodowy kontakt z danymi był mocno ograniczony. Sprawdź więc, jak wygląda rynek pracy dla analityków danych (np. na stronie Pracuj.pl), poznaj możliwe ścieżki kariery i dowiedz się, ile zarabia analityk danych.

Z doświadczenia naszych kursantów oraz absolwentów wiemy, że warto również wykonać test predyspozycji. Zaledwie 10 pytań, na które odpowiesz w kilka minut, pomoże Ci ocenić Twój styl działania i wskazać Ci najbardziej dopasowaną do Ciebie ścieżkę kariery. Być może Twoim przeznaczeniem jest stanowisko specjalisty ds analizy danych (tak na dobry początek!).

Przeczytaj także: Data Science – co musisz wiedzieć, by zacząć karierę analityka danych?

Analiza danych. Praca nad wykształceniem nie jedno ma imię

Studia, samodzielne kursy online lub intensywne bootcampy analityczne ze wsparciem praktyków – właśnie tak zdobywa się zawód przyszłości. Zastanówmy się jednak, które z tych rozwiązań ma największy sens i najszybszy zwrot z inwestycji nie tylko pieniędzy, ale i czasu.

Studia magisterskie

Kiedyś analitycy danych – jeśli byli po studiach – najczęściej kończyli takie kierunki jak informatyka, telekomunikacja, inżynieria baz danych lub zarządzanie. To one dawały przyszłym specjalistom ds analizy danych najszersze pojęcie na temat pracy z dużymi zbiorami danych. W przypadku przebranżowienia studia praktycznie nie wchodzą w grę, ponieważ angażują Cię przez co najmniej 3 lata, a życie – zawodowe i prywatne – toczy się dalej.

Samodzielne kursy online

Z biegiem czasu pojawiło się dużo materiałów do self-learningu, czyli samodzielnej nauki. Najpierw były to artykuły w internecie, następnie filmy na Youtube, a w końcu – kursy online w formie nagranego wcześniej wideo. Młodszy analityk danych lub osoba aspirująca do tego stanowiska może jednak nieco się tu pogubić. Każde wideo generuje pytania, których nie ma komu zadać. Ta forma nauki wymaga też dużo samozaparcia, by regularnie odstawiać prywatne zobowiązania i zdobywać niezbędną wiedzę.

Bootcampy z analizy danych

Intensywne kursy z analizy danych, które odbywają się online, ale ze wsparciem grupy, wykładowców oraz mentora to rozwiązanie najbardziej optymalne. Po pierwsze – przy takich kursach nie jest brane pod uwagę ani Twoje wcześniejsze wykształcenie (np. wyniki matury z konkretnych przedmiotów), ani dotychczasowe doświadczenie (np. zatrudnienie w zupełnie innej branży). Po drugie kursy tego typu nie tylko trwają krócej, ale zawierają też najbardziej aktualną wiedzę. W końcu wykładowcy na zajęciach mogą aktualizować ją na bieżąco.

Według badań Polskiego Instytutu Ekonomicznego aż 92% maturzystów deklarowało w 2019 roku chęć podjęcia dalszej nauki na uczelniach wyższych. Pandemia jednak nieco weryfikuje te dane i coraz więcej osób szuka alternatywnych dróg zdobycia nie tyle wykształcenia, co przydatnych kompetencji. Po zainteresowaniu naszymi kursami analitycznymi, które ukończyło już ponad 200 osób (w ciągu niecałego roku i to w czasach pandemii), widzimy, że kursy online w Wirtualnej Klasie cieszą się dużą popularnością wśród kursantów w każdej grupie wiekowej.

Data Science. Kurs online szansą na zawód przyszłości!

Wszyscy wiedzą, że dziś nie chodzi już o wykształcenie, a o posiadanie realnych umiejętności. Właśnie dlatego w Coders Lab uczymy przez praktykę i pracę z danymi zaczynasz już od pierwszych zajęć.

Wielu naszych kursantów mówi nam na początku, że obawia się nie tylko zmiany branży, ale też nauki zdalnej, zwłaszcza podczas przebranżowienia. Jeśli trapią Cię podobne myśli, po prostu musisz przeczytać 3 poniższe punkty. Nawet jeśli to miałby być jedyny fragment, który przeczytasz uważnie.

Data Lab to: unikatowy kurs ułożony w przemyślany proces edukacyjny. W trakcie zajęć stopniowo rozwijasz swoje kompetencje, coraz łatwiej łączysz kropki i z każdym kolejnym modułem jesteś coraz bliżej zawodu analityka danych. Nasi wykładowcy i mentorzy towarzyszą Ci na każdym etapie nauki. To praktycy, którzy na co dzień pracują w zawodzie, dlatego masz pewność, że otrzymujesz od nich najświeższą oraz najbardziej potrzebną wiedzę. Nauka na żywo w Wirtualnej Klasie razem z grupą innych kursantów to stała mobilizacja do pracy oraz okazja do wymiany doświadczeń. Bez problemu przedyskutujecie realizowane projekty, a także – na bazie waszych wcześniejszych zajęć – pomożecie sobie wzajemnie naprawdę szeroko patrzeć na dane.

Dodatkowo kurs analityka danych Data Lab trwa jedynie 7 miesięcy i odbywa się weekendowo. Pogodzisz go więc z pracą oraz życiem prywatnym.

Analityk danych – zawód a umiejętności i narzędzia

Czy jesteś w stanie wyobrazić sobie analityka danych, który pracuje jedynie w oparciu o swoje naturalne predyspozycje? No właśnie, my też nie. Każdy Data Analyst musi posiadać konkretne umiejętności i umieć pracować na szeregu narzędzi, dzięki którym przeprowadzenie procesu Data Science będzie proste. I pozwoli zaoszczędzić sporo czasu.

Do umiejętności analityka danych zaliczamy m.in. programowanie czy storytelling danych.

Narzędzia do analizy danych są oczywiście różne. Nasi wykładowcy oraz Dział Edukacji Coders Lab zdecydowali, by przyszłych analityków danych uczyć tego, czego wymagają pracodawcy. Kończysz więc Data Lab ze znajomością takich języków programowania jak Python oraz SQL. A dodatkowo umiesz posługiwać się m.in.:

Pandas,

Requests,

Selenium,

Matplotlib,

Openpyxl,

Seaborn i Plotly,

Dash,

GeoPandas i GeoSeries,

Tableau.

Przeczytaj także: Umiejętności analityka danych potrzebne do procesu Data Science

Miejsca pracy analityka danych – spróbuj właśnie tam!

Kto powiedział, że analityk danych może pracować tylko w finansach? Dziś – czyli w świecie, w którym internauci dziennie generują ok. 2,5 tryliona bajtów danych – Data Analyst przyda się dosłownie wszędzie.

Warto więc zdobyć zawód przyszłości i wykorzystać go do pracy w dokładnie tej branży, w której chcesz. Wierz nam, z każdym miesiącem będzie Ci coraz łatwiej pokazać pracodawcom, co zyskają dzięki zatrudnieniu Ciebie. Zwłaszcza jak argumenty opatrzysz ciekawymi danymi i opowiesz inspirowaną nimi historię.

Analitycy danych są potrzebni np. w firmach: finansowych,

medycznych,

farmaceutycznych,

edukacyjnych.

Bardzo często pracują także w instytutach badawczych, np. przy przewidywaniu trendów. Twój wkład w budowę naszego jutra może być naprawdę duży.

Brzmi interesująco, prawda? Dlatego już teraz zdecyduj się na Data Lab – kompleksowy kurs rozwijający kompetencje Data Science – i złóż portfolio z projektów wykonanych w trakcie nauki. To Twoja przepustka do świata analizy danych.

Bazy danych

Żyjemy w czasach, gdzie dane, ich gromadzenie, przechowywanie oraz, przede wszystkim, przetwarzanie jest kluczowe, tak z punktu widzenia rozwoju cywilizacji, jak i w zakresie pojedynczego, nawet najmniejszego programu. Nie da się być programistą i nie pracować z danymi.

W tym przedmiocie poruszamy m.in. takie zagadnienia, jak hurtownie danych, relacyjne bazy danych, techniki programowania baz danych, bazy obiektowe i obiektowo-relacyjne. Wprowadzimy Cię również w zagadnienia Big Data i Business Intelligence.

Bardzo ważnym elementem nauki będzie praktyczne poznanie jednej z najpopularniejszych baz relacyjnych - MySQL oraz składni języka SQL.

Szczegółowy wykaz wykładów:

Relacyjne bazy danych

Uczymy się, czym są bazy danych i czym są relacyjne bazy danych. Wyjaśniam, dlaczego taka nazwa i co to są relację. Ogólnie poznajemy trochę teorii, która pozwala wejść nam głębiej w temat baz danych.

XAMPP

Instalujemy XAMPP i tworzymy pierwszą bazę danych, korzystając z graficznego środowiska. Czyli jeszcze nie potrzebujemy znajomości MySQL’a.

MySQL oparty o MariaDB

Dużą część przedmiotu poświęcamy na poznanie języka MySQL, ale naprawdę na dość zaawansowanym poziomie. Dodatkowym atutem jest fakt, że wszystkich komend używamy w terminalu.

Poznajemy grafową bazę danych NoSQL o nazwie Neo4j

Przyszedł czas na poznanie grafowej bazy danych. Jeśli wiemy, co to są grafy i znamy ich podstawowe własności, to bazy grafowe powinny być dla nas bardzo czytelne. Poznamy język Cypher, który dla Neo4j jest odpowiednikiem MySQL w przypadku relacyjnych baz danych.

Business Intelligence

Czyli analityka biznesowa. Poznajemy środowisko Power BI Desktop. Uczymy się przygotowywać dane pod analizę i przedstawiać je w postaci automatycznych raportów. Poznajemy podstawy języka DAX.

Hurtownie danych

Omawiam, czym są hurtownie danych i przedstawiam pojęcia z nimi związane. Dzięki temu zaczynamy rozumieć, jaki ogrom informacji jest wokół nas i że do obróbki tak wielkiej ilości danych potrzebujemy całkiem innego podejścia.

#11 — korzystamy z bazy danych

Lekcja

Relacyjne bazy danych — teoria

Na wstępie należy zaz­naczyć, że nie będziemy zaj­mować się teorią baz danych od strony matem­aty­cznej (zain­tere­sowanych zachę­cam do zapoz­na­nia się z artykułem na wikipedii lub doku­mentem “A Rela­tion­al Mod­el of Data for Large Shared Data Banks” autorstwa Edgara Cod­da), ale spo­jrzymy na to, co to oznacza dla nas od strony prak­ty­cznej. Nie będziemy się też sku­pi­ać na pro­jek­towa­niu baz danych, posta­ci­ach nor­mal­nych itp — to omówimy szerzej w uzu­peł­ni­a­ją­cym wpisie w przyszłoś­ci. To, czemu ma służyć ta lekc­ja to zapoz­nanie się z pod­stawa­mi baz danych, aby rozu­mieć co robimy w kodzie i być w stanie samodziel­nie szukać infor­ma­cji i posz­erzać wiedzę według potrzeb.

Tabele

Tabele to pod­sta­wowy sposób orga­ni­za­cji danych w rela­cyjnych bazach danych (moż­na też spotkac się z określe­niem RDBMS — rela­tion­al data­base man­age­ment sys­tem). Tabele wyglą­da­ją podob­nie jak w rzeczy­wis­toś­ci — mają kolum­ny oraz wier­sze, gdzie kolum­ny są określone przez struk­turę tabeli, a poszczególne wier­sze zaw­ier­a­ją dane (dzi­ała to trochę jak np. w Excelu, z tą różnicą, że kolum­ny mają też nazwy). Kolum­ny określa­ją też, jakie dane moż­na w nich prze­chowywać (np. licz­ba, dane tek­stowe o określonej dłu­goś­ci itp).

Wier­sze tabeli są też określane krotka­mi lub enc­ja­mi (nie jest to do koń­ca praw­da, ponieważ określe­nia te są bardziej pojemne i w bazach danych obe­j­mu­ją także pow­iązane reko­rdy i infor­ma­c­je; nie moż­na więc powiedzieć, że wier­sz w tabeli to krot­ka czy enc­ja, ale nie są to poję­cia odd­alone — intu­icyjnie, słysząc ‘enc­ja’ czy ‘krot­ka’ moż­na więc mieć na myśli właśnie wier­sz tabeli).

Tabele mają określoną struk­turę, tzn kolum­ny są z góry określone (choć oczy­wiś­cie moż­na zmienić to w trak­cie dzi­ała­nia aplikacji, ale jest to zmi­ana struk­tu­ry tabeli i wyni­ka ona jedynie z oper­acji na tabeli, poprzez manip­u­lację dany­mi nie da się zmienić struk­tu­ry tabeli / deklaracji kol­umn) i defini­u­ją one, jaki typ danych może­my prze­chowywać w danej kolum­nie oraz jaki jest rozmi­ar tej kolum­ny (tzn. jaka jest pre­cyz­ja prze­chowywanych liczb, ich maksymalne/minimalne wartoś­ci lub maksy­mal­na dłu­gość ciągu znaków).

Tabele są właśnie tą relacją, od której nazwę wzięły rela­cyjne bazy danych. Jest to nieco niein­tu­icyjne w jezyku pol­skim, ponieważ o relac­jach mówimy także w kon­tekś­cie zależnoś­ci między tabela­mi (omówimy je za chwilę). Się­ga­jąc jed­nak do języ­ka ang­iel­skiego jest jed­nak różni­ca (Matem­aty­czne relac­je — ‘rela­tion’ — są tym, o co chodzi w nazwie ‘rela­tion­al data­base’; zależnoś­ci pomiędzy tabela­mi określane sa ter­minem rela­tion­ship; dyskusję na tem­at rózni­cy w znacze­niu tych pojęć moż­na znaleźć np. pod adresem — warto te różnice zapamię­tać i mieć je na uwadze czy­ta­jąc doku­men­tac­je związaną z baza­mi danych lub komu­niku­jąc się z inny­mi. Relacją (matem­aty­czną) nazy­wamy więc tabelę, rozu­mi­aną jako jej schemat (nazwę, kolum­ny) oraz dane razem.

Relacje pomiędzy tabelami (klucze obce)

Ponown­ie, w tym przy­pad­ku powiemy sobie tylko czym są relac­je pomiędzy tabela­mi ale na ten moment nie będziemy zgłębi­ać ich szczegółów. Złączenia tabel w języku SQL to obsz­erny tem­at sam w sobie, który moż­na samodziel­nie zgłębi­ać mając pod­sta­wową zna­jo­mość SQL, a w codzi­en­nej pra­cy współczes­nego pro­gramisty nie jest on wykony­wany zbyt często.

Bard­zo częs­to wys­tepu­je sytu­ac­ja, że jeden obiekt jest pow­iązany z innym za pomocą jakichś zależnoś­ci (np. w aplikacji która służyła­by do zarządza­nia pro­jek­ta­mi w fir­mie, ist­nieje zależność typu jeden-do-wielu (o typach zależnosci powiemy sobie za chwilę): jed­na fir­ma ma wiele pro­jek­tów, ale jeden pro­jekt jest przyp­isany tylko do jed­nej firmy (oczy­wiś­cie to pewne uproszcze­nie rzeczy­wis­toś­ci, ale załóżmy, że tak jest). W języku pol­skim takie pow­iązanie między tabela­mi także określamy mianem relacji.

W tym miejs­cu należy jeszcze krótko wspom­nieć o pro­ce­sie nor­mal­iza­cji i posta­ci­ach nor­mal­nych (nor­mal form, NF). Nor­mal­iza­c­ja to for­mal­ny pro­ces, który ma zapewnić, że w bazie danych nie ma niepotrzeb­nych powtórzeń, odpowied­nie tabele są praw­idłowo połac­zone i mod­el jest spójny i inte­gral­ny. O samym pro­ce­sie nor­mal­iza­cji i jak go wykon­ać moż­na poczy­tać w artykule na Wikipedii, w uproszcze­niu pole­ga on na doprowadze­niu mod­elu do założonej postaci nor­mal­nej (najczęś­ciej czwartej) poprzez iter­a­cyjne doprowadze­nie najpierw do pier­wszej postaci nor­mal­nej, drugiej itp. Każ­da postać nor­mal­na ma pewne założe­nia, które mod­el musi speł­ni­ać, żeby moż­na było o nim powiedzieć, że jest w danej postaci nor­mal­nej. Przykład­owe założe­nia to np, że każ­da kolum­na zaw­iera tylko jed­ną infor­ma­cję (więc imię i nazwisko trzy­mamy w osob­nych kolum­nach) czy też, że infor­ma­c­ja nie jest dup­likowana (w przy­pad­ku np. firmy i pra­cown­ików, dane firmy trzy­mamy w osob­nej tabeli i odnosimy się do nich jedynie za pomocą klucza). Z pro­ce­sem nor­mal­iza­cji wiąże się także denor­mal­iza­c­ja — czyli świadome ode­jś­cie od zasad nor­mal­iza­cji. Cza­sem robi się tak, ponieważ albo moż­na pewne rzeczy założyć (np. że samochód ma jed­nego właś­ci­ciela, albo że właś­ci­ciele samo­chodów mieszka­ją zawsze pod różny­mi adresa­mi) albo jest to ważne z punk­tu widzenia wyda­jnoś­ci zapy­tań. Nato­mi­ast kluc­zowa jest świado­mość, co się robi oraz jak to wpłynie na sys­tem, decyz­ja o denor­mal­iza­cji powin­na być pode­j­mowana tylko przez doświad­c­zonych programistów/projektantów i tylko w wyjątkowych sytuacjach.

Ist­nieją trzy log­iczne typy relacji:

— jeden-do-wielu

— jeden-do-jed­nego — ten typ relacji jest najm­niej intu­icyjny, jego prak­ty­czne zas­tosowanie sprowadza się najczęś­ciej do opty­mal­iza­cji (cza­su zapy­tań lub rozmi­aru danych). Oczy­wiś­cie ma on swo­je uza­sad­nie­nie pod­czas pro­ce­dury nor­mal­iza­cji. Przykła­dem mogą być szczegóły użytkown­i­ka, np. jego pref­er­enc­je czy kom­plet danych (np. w pro­filu por­talu społecznoś­ciowego). Mamy więc użytkown­i­ka oraz szczegóły użytkown­i­ka, jeden reko­rd jest zawsze związany z jed­nym reko­r­dem drugiego typu, ale podzi­ał ma sens (np. z uży­ciem tabeli użytkown­ików dokonu­je­my uwierzytel­nienia, pobieranie za każdym razem wszys­t­kich danych pro­filu mija się z celem i było­by niewyda­jne). Dru­ga sytu­ac­ja kiedy częs­to jest to stosowane to wybiór­cze dane (np. przy dziedz­icze­niu i hier­ar­chi­ach) — np. w szkole, mamy uczniów i nauczy­cieli, obie te role to po pros­tu oso­by. Oso­ba ma imię i nazwisko, nauczy­ciel dodatkowo przed­miot, doświad­cze­nie, stopień i klasę, której jest wychowaw­cą, uczeń z kolei ma rok nau­ki i klasę w której jest. Moż­na trzy­mać wszys­tkie te dane w jed­nej tabeli, moż­na całkiem osob­no w 2, ale najwygod­niej jest trzy­mać część wspól­ną (imię, nazwisko) w jed­nej, szczegóły uczniów w drugiej i szczegóły nauczy­cieli w trze­ciej. Reko­rd oso­by jest więc pow­iązany z zero lub jed­nym reko­r­dem szczegółów ucz­nia (i ana­log­icznie nauczy­ciela), a szczegóły ucz­nia są pow­iązane zawsze z jed­nym reko­r­dem oso­by. To też dobry przykład do zobra­zowa­nia różni­cy pomiędzy encją (krotką) a wier­szem w tabeli (reko­r­dem) — reko­rd obe­j­mu­je jed­ną tabelę. Enc­ja to wszys­tkie te infor­ma­c­je, czyli np. wszys­tkie infor­ma­c­je o uczniu ‘pobrane’ z 2 tabel

— wiele-do-wielu — w prak­tyce wyma­ga to utworzenia dodatkowej tabeli, która jest w relacji jeden-do-wielu z obiema tabela­mi, które są log­icznie połąc­zone relacją wiele-do-wielu. Przykła­dem zas­tosowa­nia może być sys­tem do zarządza­nia plana­mi lekcji, w których mamy zaję­cia (lekc­je) oraz uczniów. Każdy uczeń może uczęszczać na wiele zajęć, ale też każde zaję­cia są uczęszczane przez wielu uczniów.

Dygresja — NoSQL, czym jest i zastosowania

Ostat­nio dość pop­u­larne są tzw. bazy NoSQL, na pewno pracu­jąc w IT w niedługim cza­sie spotkasz się z tym określe­niem lub nawet będziesz mogła uży­wać takiego opro­gramowa­nia w praktyce.

NoSQL to ogól­na nazwa dla wszys­t­kich baz danych, które odchodzą od mod­elu rela­cyjnego — rodza­jów takich baz jest wiele (key-val­ue store, col­umn fam­i­ly itp), dlat­ego ter­min ten nie określa jakiego rodza­ju jest dana baza danych, a raczej jakiego rodza­ju nie jest. W tym kur­sie nie będziemy zaj­mować się baza­mi NoSQL, warto jed­nak wiedzieć, że częs­to ofer­u­ją lep­szą wyda­jność od baz rela­cyjnych oraz bardziej elasty­czny mod­el. Potenc­jal­ny­mi wada­mi tych rozwiązań są nie­s­tandar­d­owe sposo­by odpy­ty­wa­nia ich, elasty­czny mod­el (tak, to zarówno wada jak i zale­ta) oraz mniejsze możli­woś­ci w zakre­sie pow­iązań pomiędzy obiek­ta­mi. Branża cały czas ‘uczy się’ z nich korzys­tać, ale świa­towi gigan­ci nie mogli­by osiągnąć obec­nego rozmi­ary bez ich uży­cia — np. Google uży­wa włas­nego rozwiąza­nia o nazwie Big­Da­ta, pod­czas gdy Ama­zon także korzys­ta (i udostęp­nia w ramach usług AWS) z włas­nego sys­te­mu o nazwie DynamoDB. Kon­cep­cyjnie sys­te­my te bard­zo się różnią, zain­tere­sowanych odsyłam do prac naukowych oraz blue­print­ów na ten tem­at (pier­wsze lin­ki po wpisa­niu tych fraz w google).