Pandas sollte aussterben

Pandas Should Go Extinct

Pandas sollte aussterben

Pandas ist zu langsam und speicherhungrig für moderne Workloads. Der Autor argumentiert, dass die meisten Datenprobleme im Bereich von 100 GB liegen – zu groß für Pandas, aber zu klein für verteilte Systeme wie Spark. Er vergleicht Pandas mit Polars und DuckDB anhand der 1-Milliarde-Zeilen-Herausforderung: Polars und DuckDB sind deutlich schneller und benötigen weniger Speicher. DuckDB verbraucht 19-mal weniger Speicher als Pandas.

Sie haben wahrscheinlich keine Big Data und werden sie wahrscheinlich nie haben. Sie haben Medium-Data-Probleme und brauchen Medium-Data-Lösungen.
  1. minimaxir

    Es ist eine Weile her, dass ich einen echten Data-Science-Beitrag auf Hacker News gesehen habe: sowohl weil KI viele DS-Aufgaben übernommen hat (z. B. Vektor-Embeddings), als auch weil in der DS nicht viel Neues passiert ist. Polars gibt es schon eine Weile und wie erwähnt ist es viel besser als pandas, aber ansonsten ist das DS-Ökosystem etwas stagniert.

    Ich würde mehr Tutorials darüber schreiben, wie man Data-Science-Tools verwendet, aber eine Konsequenz von KI ist, dass alle alten Datenquellen, die ich früher analysiert habe, wie soziale Medien und Reddit, jetzt völlig abgeschottet sind (ich bin überrascht, dass NYC Taxi noch aktualisiert wird). Daher arbeite ich in der Zwischenzeit daran, bessere Data-Science-Tools zu entwickeln ... obwohl unklar ist, zu welchem Zweck, wegen des oben genannten Datenproblems.

  2. rmunn

    Süßer Titel; ich dachte, ich würde gleich einen konträren Ökologen lesen, der sagt: „Eine Art, die so sehr auf ihre Ernährung spezialisiert und so wählerisch in ihrem Fortpflanzungsverhalten ist, verdient es evolutionär gesehen nicht zu überleben.“ (Im Ernst, es ist verdammt schwierig, Pandas in Gefangenschaft zur Fortpflanzung zu bringen). Und obwohl meine instinktive Reaktion wäre: „Vielleicht, aber wir sollten sie trotzdem erhalten, weil wir es können“, war ich darauf vorbereitet zu sehen, ob der Autor ein ernsthaftes Argument vorbringt.

    Stattdessen ist es ein süßer Bait-and-Switch-Titel, und der Artikel sagt einem gleich zu Beginn, dass es eigentlich um die Python-Bibliothek `pandas` geht. Der ich in meiner gesamten Karriere vielleicht einmal begegnet bin (ich bin nicht im Data-Science-Bereich), also habe ich nicht viel Sinnvolles zum Artikel selbst zu sagen. Ich möchte den Autor nur dafür loben, dass er mich mit dem Titel reingelegt hat. Das ist die Art von „Clickbait“, die ich respektieren kann und von der ich mir manchmal tatsächlich ein bisschen mehr wünschen würde. Ein nettes Kichern, dann ein echter Artikel.

  3. sjtrny

    > Leute beginnen typischerweise mit Excel und steigen irgendwo im GB-Bereich auf Pandas um. Pandas dient ihnen gut bis in die 10er-GB-Bereiche, und dann stoßen sie auf Speicherprobleme, langsame Berechnungen oder werden von der barocken API von Pandas frustriert.

    Geht davon aus, dass ein Projekt über 10er-GBs hinausgeht. Ich schätze, 99,9 % der Projekte, die pandas importieren, liegen weit unter dieser Schwelle.

  4. mulmboy

    Leute sind normalerweise überrascht zu hören, dass polars bei ziemlich alltäglichen Operationen langsamer sein kann, besonders bei kleineren Datensätzen. Zum Beispiel: Nimm einen 5000 x 3 DataFrame mit float64 und sortiere nach einer Spalte, und du wirst feststellen, dass polars etwa 2,5-mal so lange braucht. Wenn du POLARS_MAX_THREADS auf 1 setzt, ist es schneller. Allerdings hängt das alles von der Maschine ab. Polars glänzt tendenziell bei größeren Datensätzen oder wenn es das Query-Planning stark ausnutzen kann.

    Überspringe nicht dein Profiling

  5. latent-person

    Meiner Meinung nach ist ein besseres Argument, pandas nicht mehr zu verwenden, die sehr unintuitive API von pandas. Außerdem kann eine kleine Änderung in der Abfrage dazu führen, dass man die gesamte Abfrage umstrukturieren muss (alle Zeilen ändern), während es in Polars (und tidyverse in R) nur eine einfache einzeilige Änderung ist.

  6. crazysim

    Bin ich verrückt oder hat der OP versehentlich die Inhalte der Beiträge vertauscht?

    https://eddie.codes/posts/pandas-should-go-extinct/ <=> https://eddie.codes/posts/source-code-comments/

  7. __mharrison__

    Ich bin gerade dabei, die Bearbeitungen für Effective Pandas 3rd Edition abzuschließen. (Ich habe auch ein Polars-Buch geschrieben und gerade diese Woche eine einwöchige Schulung zu pandas abgeschlossen.)

    Pandas ist nicht perfekt, es hat eine Menge Macken. Aber es ist gut genug für die meisten. (Und viele dieser Leute verwenden Excel oder Tableau oder Power BI ... Das waren die Typen, die ich diese Woche geschult habe).

    Wenn du mittelgroße Daten hast, ist die Migration von pyarrow-gestütztem pandas zu duck oder Polars trivial.

  8. evolve-maz

    Erst in den letzten Jahren habe ich angefangen, SQL richtig zu verwenden. Davor lebten meine Pipelines in Python. Jetzt lagere ich so viel wie möglich an die DB aus und halte mein Python als einfachen Kleber. Ich bin damit sehr zufrieden, verglichen mit anderen Methoden in pandas oder polars.

    Wenn ich immer noch DB-ähnliche Dinge in Python erledigen muss, finde ich duckdb besser.

Mehr von diesem Tag

2026-09-12