python vs excel

Bij onze trainingen krijgen wij vaak de vraag wat de voordelen van Python ten opzichte van Excel zijn. Alhoewel Excel (een computerprogramma) en Python (een programmeertaal) twee hele andere dingen zijn dienen ze in de praktijk vaak wel dezelfde doelen, namelijk grote hoeveelheden data verwerken, analyseren en/of visualiseren. Dus: waarom zou je Python gebruiken in plaats van Excel?

Het is niet altijd nodig om voor Python te kiezen, je moet voor de juiste klus de juiste tool kiezen en soms kan dat Excel zijn. Echter, als je structureel data wilt omzetten in waardevolle informatie, ontkom je niet aan Python. Het is daarom beter om direct met Python van start te gaan.

Echter, als je structureel data wilt omzetten in waardevolle informatie, ontkom je niet aan Python

Omdat Excel een programma met een gebruiksvriendelijke interface is en Python een programmeertaal, is Excel in eerste instantie makkelijker maar het kent ook beperkingen, een programmeertaal als Python heeft dat niet. In deze blog lichten we de belangrijkste voordelen van Python toe.

1. Python is reproduceerbaar

Indien je (ruwe) data omzet in informatie doorloop je vak één of meerdere van de volgende stappen:

  • verbinden met één of meerdere databronnen
  • toevoegen van kolommen of andere logica toepassen
  • aggregeren van data
  • visualiseren van informatie

Bovenstaande lijst is een keten van verschillende handelingen die elkaar opvolgen. In Excel kan dit prima, maar vaak kom je in de knel op het moment dat je dergelijke handelingen wilt gaan herhalen of automatiseren. Excel is namelijk moeilijk te automatiseren omdat het is ontworpen vanuit de gedachte dat het wordt bediend door een gebruiker. Een Python-script daarentegen is heel makkelijk te reproduceren, indien op een computer Python is geïnstalleerd zal het werken.

Daarnaast wordt het bij Excel vaak lastig indien je iets in deze keten wilt wijzigen, omdat alle voorgaande stappen hiervan afhankelijk zijn. Stel dat er een kolomnaam in de bron wijzigt, dan moet dat in alle opvolgende stappen gewijzigd worden op verschillende manieren. In Python zou je dit makkelijk op kunnen lossen door met variabelen te werken waardoor je op slechts één plek de naam hoeft te wijzigen.

Met vertrouwen waardevolle inzichten halen uit data? Schrijf je in voor een van onze Python trainingen.

2. Python is flexibel

Excel is zeer veelzijdig, maar niet zo flexibel als Python. Omdat Python een programmeertaal is en geen programma, kan je elke functionaliteit denkbaar zelf implementeren. Vaak is dit echter niet eens nodig omdat er al packages beschikbaar zijn die je op weg helpen.

In Python is het geen probleem om de output van een analyse weg te schrijven in een SQL-tabel of om te verbinden met een bepaalde sensor waarvan je de de data direct verwerkt en/of visualiseert.

Sommigen zullen zeggen dat dit ook met Excel kan omdat je de mogelijkheid hebt om middels macro’s te programmeren. Dat is juist, maar macro’s zijn op nagenoeg alle gebieden inferieur aan Python. Zo is de taal (Visual Basic) verouderd en is beheer van code complex omdat dit gekoppeld zit aan Excel bestanden. Desalniettemin werkt het wel, maar als je toch gaat programmeren is het verstandig om dan direct voor Python te kiezen. In beide gevallen schrijf je code, alleen in het geval van Python is het simpeler en moderner. 

3. Python is geschikt voor algoritmes

Vaak pas je logica toe op een dataset. Soms is deze logica simpel en niet meer dan een if-else statement, hetgeen prima kan met een Excel-formule. Dat echter ook direct de beperking: logica in Excel toepassen doe je door middel van formules.

Iets ingewikkelders dan dat wordt al gauw vervelend in Excel. Idealiter deel je code dan namelijk op in aparte blokken. Python-code is dan veel overzichtelijker dan de formulebalk van Excel.

Indien het nog complexer wordt is het zelfs onmogelijk in Excel. Een machine learning model maken is in Excel niet aan de orde terwijl in het Python slechts een paar regels code is indien je de juiste packages gebruikt.

python vs excel blog

4. Python heeft meer functionaliteit

Simpele functionaliteit in Python ontbreekt vaak in Excel. Een voorbeeld is het aan elkaar koppelen van tabellen. In Python kan dit middels Pandas erg makkelijk op allerlei manieren door te dataframes te mergen, in Excel ben je beperkt tot de VLOOKUP-formule (VERT.ZOEKEN in het Nederlands) waarmee je slechts 1 kolom koppelt in plaats van een hele tabel.

Een ander voorbeeld is de mogelijkheid om met enkele regels code meerdere grafieken te maken. Middels het package seaborn kan je met slechts een paar regels code een scatter plot maken waarbij alle mogelijke relaties onderzocht worden. Dat is met Excel simpelweg onmogelijk.

5. Python is schaalbaar

Indien je met grote hoeveelheden data werkt wordt Excel problematisch. Datasets met miljoenen rijen zijn tegenwoordig niet ongewoon, Excel is daar niet op gebouwd en loopt dan vaak vast. Python gaat met dergelijk bestanden vaak veel efficiënter en probleemloos mee om.

Er zijn echter meer voordelen aan Python. Een computer heeft limieten: processorkracht en geheugen zijn niet onbeperkt, ook als je Python gebruikt. Hiervoor zijn echter oplossingen beschikbaar die naadloos met Python samenwerken.

Een simpel voorbeeld van zo’n oplossing is het opzetten van een server voor Jupyter notebook zoals in veel bedrijven wordt gedaan. Je gaat dan nog steeds in de browser op je eigen pc naar Jupyter notebook, maar de code wordt in dit geval niet gerund op jouw eigen pc maar op een bedrijfsserver die betere specificaties heeft. De werkwijze blijft hetzelfde, alleen beschik je over meer processorkracht en geheugen.

Een ander voorbeeld is PySpark: een omgeving waarin Python-code ‘achter de schermen’ wordt gerund op meerdere computers tegelijk waardoor logica uitvoeren op (tientallen) miljoenen rijen geen enkel probleem. Ook dit is binnen bedrijven een populaire oplossing.

Met vertrouwen waardevolle inzichten halen uit data? Schrijf je in voor een van onze Python trainingen.

Tot slot

Alhoewel Python voor het opzetten van analyses veel meer mogelijkheden kent en minder beperkingen heeft Excel wel degelijk waarde. Voor relatief kleine en simpele analyses is het prima geschikt. Een ander sterk punt is dat Excel bestanden makkelijk te delen zijn en nagenoeg iedereen bekend is met de werking van Excel. Ook voor simpele dashboards is Excel geschikt, het maken van grafieken is eenvoudig en je kan deze ook heel makkelijk koppelen aan een database. Desalniettemin blijft Excel beperkingen houden terwijl er binnen het ecosysteem van Python voor elk denkbaar probleem een goede oplossing is.

Wil je nog veel meer leren over de mogelijkheden van Python en samenwerken met andere geïnteresseerden en goede trainers? Schrijf je dan in voor onze Python cursus voor data science en vergroot je vaardigheden gecombineerd met mooie voorbeelden en praktijkcases.

by: