Python krijgt een steeds grotere voetprint in de interessante wereld van data science. Zo zegt KDnuggets dat Python R zelfs voorbij is als leider in het klassement der A.I. en Machine Learning platforms. Maar wat maakt Python nu zo bijzonder voor data science? Eén van de redenen is dat Python een general-purpose programming language is. Hiermee wordt bedoeld dat Python geen specifiek doel heeft, waardoor het mogelijkheden biedt om modellen direct in te zetten in een bredere context. R is daarentegen geen general-purpose language, aangezien het voornaamste doel statistisch modelleren is. Nog een reden dat Python zo populair aan het worden is, is dat het een gemakkelijke taal is om te leren, waardoor niet-programmeurs (zoals ik) toch gemakkelijk een programmeertaal kunnen leren.
Is het dan beter om alleen Python te leren en niet meer met R aan de slag te gaan? Nee! Python is complementair aan R. In een eerder artikel hebben we R en Python met elkaar vergeleken (samen met SAS en SPSS). R is sterk in zowel verklarende als voorspellende analyses, Python’s focus zit echt op de voorspellende kant: Machine Learning, Data Mining en Artificial Intelligence toepassingen worden eerder geschreven in Python dan in R. Tensorflow, het Deep Learning framework ontworpen door Google, is ook geschreven in Python. Dat Python R aan het inhalen is in Machine Learning, betekent dus niet dat Python R overal vervangt, met name bij het maken van voorspellen is R nog veel groter dan Python.
Als een algoritme onderdeel is van een groter geheel en als de uitkomsten rechtstreeks gebruikt moeten worden voor een vervolgactie valt mijn keuze vaak op Python. Zo zijn we bijvoorbeeld bezig met een koffiezetapparaat met gezichtsherkenning en dit bouwen we in Python. Nadat het algoritme de persoon heeft herkend, moet het apparaat namelijk direct actie ondernemen en koffie gaan zetten. Of bij zelfrijdende auto’s wordt Python gebruikt: Als een algoritme een bocht naar links of een overstekend persoon of kind herkend, moet het meteen naar acteren.
In 2008 besloot Guido van Rossum in de ontwikkeling van Python meer nadruk te leggen op het opschonen van de code dan op backwards compatibility (= dat oude code het blijft doen op nieuwere versies). Met als gevolg dat er nu twee versies van Python rond gaan: 2.7 en 3.5.
Je gebruikt toch altijd gewoon het nieuwste? In dit geval hoeft dat niet zo te zijn. De meeste packages zijn namelijk nog geschreven in Python 2.7, waardoor je daar nu het meeste nog mee kan. Echter, wordt er steeds meer en meer beschikbaar voor Python 3. Sommige nieuwe packages worden wel al alleen voor Python 3 ontwikkeld, kijk bijvoorbeeld naar Tensorflow. Maar het echte omslagpunt moet nog komen.
Persoonlijk gebruik ik voornamelijk nog Python 2.7, aangezien al mijn oude code hierin is geschreven. Alleen als ik Deep Learning modellen wil trainen, maak ik gebruik van Python 3, aangezien Tensorflow alleen in Python 3 is ontwikkeld. Je kunt beide naast elkaar hebben draaien op je computer. Er zijn functionaliteiten beschikbaar om Python 2 naar Python 3 code en vice versa te converteren.
De populariteit van de taal zie je ook in het aantal cursussen dat er tegenwoordig is. Coursera heeft ondertussen 115 courses en specialisaties met Python, vele universiteiten en websites hebben online courses beschikbaar gesteld en er zijn tal van boeken beschikbaar. Door de bomen zie je het bos niet meer. Dus waar begin je nu?
Een programmeertaal leren valt te vergelijken met het leren van een nieuwe taal. Je kunt het leren, maar door veel te oefenen, krijg je het echt onder de knie. Wij raden dan ook aan om te beginnen met één van deze twee cursussen: Code Academy of Udemy. Deze cursussen beginnen laagdrempelig en hebben een logische opbouw. Als je hiermee klaar bent, ga dan gewoon aan de slag. Ga dingen bouwen met Python: Bouw een keer een model in Python in plaats van de tool die je gewend bent. Of bouw bijvoorbeeld een webscraper die automatisch zoekt naar de goedkoopste tickets met de kortste tijden.
Bij het bouwen, heb Google ernaast staan. 99.9% van de dingen waar je tegen aanloopt, hebben anderen al gevraagd. Op websites zoals stackoverflow staan veelal goede instructies. Daarnaast zijn de volgende twee boeken ook erg handig als naslagwerk: Python data science Handbook van Jake VanderPlas en Python for Data Analysis van McKinney. Beide boeken leggen alles helder en laagdrempelig uit, met zeer veel voorbeeldcode.
Naast deze start-up guides zijn er wat andere tips die wij je kunnen geven:
Missen we hier interessante resources die ideaal zijn om Python te leren voor data science? Laat het ons weten!
Inmiddels hebben we een eigen training ontwikkeld van 2,5 dag. Wil je een training over Python volgen, gegeven door onze eigen collega’s? Bekijk dan nu onze Experience Python training!
17 april 2023
In elk bedrijf is het een uitdaging om ervoor te zorgen dat we alleen de documenten... lees meer
16 januari 2023
Culture eats data strategy for breakfast Bedrijven die erkennen dat ze met de inzet van data... lees meer
20 december 2022
20 jaar Cmotions is ook 20 jaar vakgeschiedenis en -ontwikkeling. Dit geeft waardevolle inzichten voor de... lees meer