Apache Hudi
Apache Hudi is een open tabelformaat dat een data lake op object storage transactioneel maakt. Het blinkt uit in snelle upserts, verwijderin...
Lees meerPandas is de Python-bibliotheek voor data-analyse. Met Series en DataFrames lees, transformeer en schrijf je tabelgegevens in dezelfde flow. Sinds 2008 de de-facto standaard voor Python-datawerk, van notebooks tot productiepipelines.
Pandas is de Python-bibliotheek voor data-analyse. Je leest er CSV's, Excel-bestanden, Parquet, JSON en SQL-tabellen mee in, transformeert ze met een rijke set operaties, en schrijft het resultaat terug. De twee kernstructuren zijn de Series (een getagde één-dimensionale array) en de DataFrame (een tabel met rijen en kolommen, waar elke kolom een eigen datatype heeft).
Wes McKinney begon het project in 2008 bij AQR Capital Management en zette het in 2009 open source. Sindsdien is pandas in praktisch elke Python-datastack beland, van lokale notebooks tot productie-pipelines. De bibliotheek is gebouwd bovenop NumPy, met delen in Cython en C voor snelheid.
Je kan pandas zien als het Excel van Python: dezelfde vertrouwde tabel-mentaliteit, maar met een volledige programmeertaal eromheen. Wat in Excel een formule-cel is, wordt in pandas een expressie over een hele kolom of groep.
Een paar redenen waarom pandas moeilijk te vermijden is in data-analyse.
Alles zit in één bibliotheek
Inlezen van tientallen formaten, opkuisen, aggregeren, mergen, pivoteren, tijdreeksen, exporteren. Eén API dekt het werk dat anders over vijf tools verspreid zit.
Directe integratie met de Python-stack
Een DataFrame gaat zo door naar NumPy voor numerieke operaties, scikit-learn voor machine learning, matplotlib of plotly voor visualisatie, SQLAlchemy voor databases. Geen tussenlaag nodig.
Community en docs
Met bijna twee decennia aan Stack Overflow-antwoorden en tutorials kan je bijna elke taak nazoeken op een uitgewerkt voorbeeld.
Excel-vervanger in notebooks
Voor data-analisten die van Excel komen, voelt pandas vertrouwd: rijen, kolommen, filters, groepen, formules. Maar reproduceerbaar, versie-gecontroleerd en schaalbaar tot miljoenen rijen.
Zowel Microsoft Fabric als Databricks ondersteunen pandas out-of-the-box in hun notebook-ervaring.
In Fabric-notebooks zit pandas standaard geïnstalleerd. Je kan Lakehouse- en Warehouse-tabellen ermee lezen, het resultaat manipuleren en terugschrijven naar OneLake. Voor grotere datasets biedt Fabric ook de Pandas API op Spark: dezelfde syntax als pandas, maar verdeeld over een Spark-cluster zodat je uit de single-node RAM-grens breekt.
In Databricks werkt hetzelfde patroon. Kleine datasets blijven pandas, grote verhuizen naar Spark-DataFrames of naar de pandas API on Spark. De Databricks-runtime maakt de overstap aangenaam bij notebooks waar je verschillende groottes door elkaar gebruikt.
Vuistregel: start met pandas. Zodra je tegen geheugen- of snelheidslimieten loopt, schakel je over naar Spark of Polars.
De laatste jaren is er serieuze concurrentie bijgekomen.
Polars
Een Rust-bibliotheek met een pandas-achtige API. Gebruikt lazy evaluation (een queryplan vóór uitvoering), multi-core en vectorized execution. In benchmarks tien tot vijftig keer sneller dan pandas op analytische queries. De overstap kost een paar dagen, omdat de API net anders is. Voor workloads boven een paar miljoen rijen vaak de betere keuze.
DuckDB
Een ingebedde analytische database, geen DataFrame-bibliotheek. Je schrijft SQL, DuckDB voert het uit. Leest Parquet direct, praat met pandas en Polars. Ideaal voor mensen die SQL verkiezen boven method-chaining. Presteert op laptop-niveau mee met Spark op tien gigabyte datasets.
Wanneer wat?
Voor kleinere datasets, prototyping of als de rest van je codebase al pandas gebruikt, blijft pandas de logische keuze. Voor grote datasets op één machine wint Polars. Voor SQL-first workflows en lake-bestanden is DuckDB vaak de snelste route.
RAM-gebruik
Pandas laadt alles in geheugen. Wes McKinney zelf adviseert vijf tot tien keer zoveel RAM als de dataset zelf. Een tien gigabyte CSV is dus snel een probleem op een laptop. Voor grotere datasets overweeg je Polars, DuckDB, of Pandas API op Spark.
SettingWithCopyWarning
Pandas' eeuwige ergernis: een assignment op een slice kan óf het origineel aanpassen, óf een kopie. De waarschuwing verschijnt, maar je code werkt soms toch. Oplossing: gebruik expliciete .loc[] of .copy(), en lees één keer grondig de "Returning a view versus a copy"-documentatie door.
Datatypes die stilletjes schuiven
Een kolom met getallen en een paar NaN's wordt float, ook als je integer verwacht. Een parse-fout op één datum verandert de hele kolom naar object. Gebruik expliciete dtypes bij read_csv en controleer achteraf met .dtypes.
Tijdzones
Pandas kent tz-naive en tz-aware datetime-kolommen. Mengen leidt tot TypeError of tot stilletjes foute vergelijkingen. Kies bij inlezen een tijdzone-strategie en houd je eraan.
Versie-breuken
Pandas 2.0 (april 2023) introduceerde Arrow-gebaseerde dtypes. Latere major releases maakten een paar default-gedragingen strenger. Code die jaren probleemloos draaide, kan bij een upgrade struikelen. Pin je versie in productie en test upgrades apart.
Apache Hudi is een open tabelformaat dat een data lake op object storage transactioneel maakt. Het blinkt uit in snelle upserts, verwijderin...
Lees meerApache Iceberg is een open tabelformaat voor grote analytische datasets op object storage. Het transformeert een map met Parquet-bestanden i...
Lees meerApache Kafka is een open-source platform dat stromen van events opslaat en doorgeeft: producenten schrijven berichten naar een topic, afneme...
Lees meerApache Spark is een open-source engine voor grootschalige data-analyse op een cluster. Je schrijft SQL of DataFrames in Python, Scala of Jav...
Lees meerEen berekeningsgroep past één DAX-patroon toe op elke meting in je model. Schrijf YTD, MTD en YoY% één keer in plaats van voor elke meting a...
Lees meer
Nieuw in Microsoft Fabric? Zo verschillen een lakehouse en een warehouse, in mensentaal: wat ze doen, wanneer je wat kiest en wanneer je bei...
AI zit standaard in Google Workspace for Education en Microsoft 365 Education. Wat krijg je gratis, wat kost extra, wie mag wat per leeftijd...