#002 Python kao najbolji alat za Data Scientist-a
Python vs R
U Data Science-u stvari se veoma brzo menjaju. U 2015. godini popularni sajt za Data Science online obuku nudio je isključivo obuku za programski jezik R. Procene pokazuju da je Python u 2017. godini traženiji kada je u pitanju Machine Learning. Svakako za uspešnog Data Scientiest-a neophodno je poznavati oba programska jezika.
Obzirom da dataHacker prati svetske trendove, kao radno okruženje koristićemo distribuciju Python Anaconda u kreiranju ovog bloga.
Python koristimo u Jupyter Notebook-u.
Za mašinsko učenje u okviru Python-a najviše se koriste sledeće biblioteke:
- NumPy (“Nam-paj”) Numerical Python. Visoko optimizovana za rad sa numeričkim vektorima/nizovima i matricama koje predstavljaju osnovnu strukturu za većinu najmodernijih algoritama.
- SciPy (“Sci-paj”) Scientific Python. Koristi NumPy nizove i omogućava brza numerička izvršavanja algoritama koji se koriste u inženjerskim i naučnim problemima.
- Matplotlib – za crtanje kvalitetnih grafikona i dijagrama u Python-u.
Sada smo spremni da izvršimo prvih nekoliko naredbi. Naredbe se kucaju u “Cells”, a možete ih izvršiti pritiskom na Shift + Enter.
Vektorizacija
Vektorizacija (engl. vectorization) je važan koncept u NumPy-ju. Moguće je procesirati nizove na brz način bez korišćenja loop petlji. Često se ovakav kod izvršava oko 300 puta brže nego sa “for petljom”. Kada se ne bi koristio koncept vektorizacije bilo bi neophodno da se napravi for petlja sa 6 iteracija u kojoj bi se svaki element pojedinačno množio sa 3.
Indeksiranje niza
Pojedinačnim elementima NumPy niza pristupamo indeksiranjem. Moguće je pristupiti i tačno određenom odsečku niza. Na engleskom se ova operacija zove slicing. Pogledajmo izvršavanja sledećih ćelija: