Pandas는 멸종해야 한다

Pandas Should Go Extinct

Pandas는 멸종해야 한다

Pandas의 비효율성 때문에 대부분의 워크로드가 분산 쿼리 시스템을 도입하지만, Amazon Redshift 데이터에 따르면 94.68%의 테이블이 100GB 미만이고 86.9%의 쿼리가 80GB 이하 데이터를 다룬다. 저자는 대부분의 문제가 '빅데이터'가 아닌 '미디엄 데이터'라며, Polars와 DuckDB 같은 단일 머신 도구가 10억 행 벤치마크에서 Pandas보다 훨씬 빠르고 메모리도 적게 쓴다고 주장한다.

당신은 아마 빅데이터를 가지고 있지 않으며, 아마 영원히 그럴 것이다. 당신은 미디엄 데이터 문제를 가지고 있고, 미디엄 데이터 해결책이 필요하다.
  1. minimaxir

    Hacker News에 진짜 데이터 과학 글이 올라온 걸 본 게 꽤 오래됐다. AI가 많은 DS 작업(예: 벡터 임베딩)을 포괄하게 된 것도 있고, DS 분야에서 새로운 게 별로 없었기 때문이기도 하다. Polars는 꽤 오래전부터 있었고 언급된 대로 pandas보다 훨씬 낫지만, 그 외에는 DS 생태계가 다소 정체되어 있다.

    데이터 과학 도구 사용법에 대한 튜토리얼을 더 쓰고 싶지만, AI의 한 가지 결과는 내가 분석하던 모든 예전 데이터 소스들, 예를 들어 소셜 미디어와 Reddit이 이제 완전히 잠겨버렸다는 점이다(그래도 NYC Taxi는 아직 업데이트되고 있다니 놀랍다). 따라서 그동안 나는 더 나은 데이터 과학 도구를 만드는 작업을 하고 있다... 다만 위의 데이터 문제 때문에 어떤 목적을 위한 것인지는 불분명하다.

  2. rmunn

    귀여운 제목이다. 나는 반대 성향의 생태학자가 "식성이 매우 전문화되고 번식 행동이 까다로운 종은 진화적으로 볼 때 살아남을 자격이 없다"고 말하는 글을 읽게 될 줄 알았다. (진심으로, 판다를 사육 상태에서 번식시키는 건 정말 미친 듯이 어렵다.) 그리고 내 즉각적인 반응은 "그럴 수도 있지만, 우리가 할 수 있으니까 여전히 보존해야 한다"일 테지만, 저자가 진지한 논거를 제시하는지 볼 준비는 되어 있었다.

    그런데 대신 이건 귀여운 낚시성 제목이고, 글은 실제로 Python `pandas` 라이브러리에 관한 것이라고 처음부터 알려준다. 나는 내 경력 전체에서 아마 한 번쯤 접해봤을 것이다(나는 데이터 과학 분야가 아니다). 그래서 글 자체에 대해 할 말은 별로 없다. 다만 제목으로 나를 속인 저자를 칭찬하고 싶다. 이건 내가 존경할 수 있는 종류의 "클릭베이트"이고, 가끔은 이런 게 조금 더 있었으면 싶다. 한 번 웃고, 그다음 진짜 글.

  3. sjtrny

    > 사람들은 보통 Excel로 시작해서 GB 범위 어딘가에서 Pandas로 넘어간다. Pandas는 10GB대까지는 잘 해주다가, 그다음부터는 메모리 문제, 느린 연산에 부딪히거나 Pandas의 바로크적인 API에 좌절하게 된다.

    프로젝트가 10GB대를 넘어간다고 가정한다. pandas를 import하는 프로젝트의 99.9%는 이 임계값을 훨씬 밑돌 것 같다.

  4. mulmboy

    사람들은 보통 polars가 꽤 평범한 연산, 특히 작은 데이터셋에서 더 느릴 수 있다는 말을 듣고 놀란다. 예를 들어 float64로 된 5000 x 3 데이터프레임을 한 열 기준으로 정렬해보면 polars가 약 2.5배 더 오래 걸린다. POLARS_MAX_THREADS를 1로 설정하면 더 빠르다. 물론 이 모든 건 기계에 따라 다르다. Polars는 더 큰 데이터셋이나 쿼리 플래닝을 많이 활용할 수 있을 때 빛을 발하는 경향이 있다.

    프로파일링을 건너뛰지 마라

  5. latent-person

    내 생각에 pandas를 그만 써야 하는 더 나은 논거는 pandas가 가진 매우 직관적이지 않은 API다. 게다가 쿼리를 조금만 바꿔도 전체 쿼리를 재구성해야 하는(모든 줄을 바꿔야 하는) 반면, Polars(그리고 R의 tidyverse)에서는 간단한 한 줄 변경이면 된다.

  6. crazysim

    내가 미친 건가, 아니면 OP가 실수로 글 내용을 서로 바꿔놓은 건가?

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

  7. __mharrison__

    나는 지금 Effective Pandas 3판의 편집을 마무리하는 중이다. (Polars 책도 썼고, 이번 주에는 pandas에 대한 일주일짜리 교육 세션을 막 끝냈다.)

    pandas는 완벽하지 않고 결점도 많다. 하지만 대부분에게는 충분히 좋다. (그리고 그중 많은 사람들은 Excel이나 tableau, power bi를 쓰고 있다... 이번 주에 내가 교육한 유형들이 바로 그런 사람들이다.)

    중간 규모 데이터라면 pyarrow 기반 pandas에서 duck이나 Polars로 마이그레이션하는 건 사소하다.

  8. evolve-maz

    나는 최근 몇 년에야 SQL을 제대로 쓰기 시작했다. 그전까지는 파이프라인이 python에 있었다. 이제는 가능한 한 많이 db로 오프로드하고, python은 단순한 접착제로 유지한다. pandas나 polars의 다른 방법들에 비해 이 방식에 매우 만족한다.

    python에서 여전히 db 같은 작업을 해야 한다면 duckdb가 더 낫다고 생각한다.

이 날의 다른 글

2026-09-12