pandas는 파이썬을 사용해 구조화된 데이터를 만들고 조작하기 위한 라이브러리다. 구조화했다는 것은 무슨 의미일까? 구조화란 스프레드시트나 데이터베이스에서와 같이 행과 열의 테이블 형식으로 된 데이터를 의미한다. 데이터 과학자, 분석가, 프로그래머, 엔지니어 등은 데이터를 활용하고자 이런 형식의 데이터를 활용하고 있다.
pandas는 '작은 데이터'(단일 시스템 메모리에 들어갈 수 있는 데이터)만 다룰 수 있다. 그러나 pandas의 구문과 연산은 PySpark, Dask, Modin, cuDF, Baloo, Dexplo, Tabel, StaticFrame 등 다른 프로젝트에 채택되거나 영감을 줬다. 프로젝트에는 다양한 목표가 있지만 일부 프로젝트는 빅데이터로 확장된다. 따라서 pandas는 구조화된 데이터와 상호작용하기 위한 사실상 표준 API가 되고 있으므로 작동 방식을 이해할 가치가 있다.
내 이름은 매트 해리슨(Matt Harrison)이며 기업 교육을 수행하는 메타스네이크(MetaSnake)라는 회사를 운영한다. 내가 하는 일은 파이썬과 데이터 기술을 향상시키고자 하는 대기업을 훈련하는 것이다. 따라서 수년 동안 수천 명의 파이썬과 pandas 사용자를 가르쳤다.
2판을 쓸 때 내 목표는 pandas와 관련해 많은 사람이 혼동을 겪는 부분을 열심히 돕는 것이었다. pandas는 여러 이점이 있지만 어렵고 혼란스러운 점이 있다. 독자 여러분이 실제 환경에서 그러한 문제점을 해결할 수 있도록 돕고자 한다. 라이브 교육에 관심이 있다면 언제든지 문의하라(matt@metasnake).