왜 NumPy와 Pandas가 필수적인가: AI/ML에서 초보자의 깨달음
Source: Dev.to
Introduction
시험이 빡빡한 한 학기를 마치고 AI와 머신러닝(ML) 공부를 시작했습니다. 수업에서 NumPy를 다뤄본 적은 있었고, 주로 데이터를 배열로 변환하고 간단한 연산을 수행하는 정도였지만, AI/ML 작업에 적용하면서 그 깊은 기능들을 금방 깨달았습니다.
Why NumPy Is Essential
NumPy는 1‑D 혹은 2‑D 배열을 넘어섭니다. 다음과 같은 기능을 제공합니다:
- 대규모 데이터셋에 대한 정밀한 제어
- 효율적인 행렬 연산, 브로드캐스팅, 리쉐이핑, 벡터화
- 재현 가능한 실험을 위한 랜덤 시드 설정
- 최적화된 C 구현 덕분에 순수 Python 루프에 비해 현저한 속도 향상
이러한 기능 덕분에 행렬 곱셈이나 원소별 연산 같은 복잡한 수학 작업을 기본 변수 다루듯이 간단하게 수행할 수 있습니다.
Why Pandas Is Essential
처음엔 Pandas가 또 다른 NumPy 래퍼에 불과하다고 생각했지만, 구조화된 데이터를 다루는 강력한 도구임이 증명되었습니다:
- CSV, Excel, JSON, SQL 등 다양한 데이터 소스를 손쉽게 가져오기
head(),tail(),iloc,loc로 직관적인 데이터 선택describe()를 통한 빠른 통계 요약(평균, 개수, 표준편차 등)
Pandas는 데이터 정제, 전처리, 결측값 처리, 그룹화, 집계, 변환 등에 뛰어나며, 모델링 전에 고품질 데이터를 준비하는 데 필수적인 단계들을 지원합니다.
Conclusion
NumPy와 Pandas는 선택적인 부가 기능이 아니라, 데이터 중심 워크플로우에 있어 기본적인 요소입니다. NumPy는 무거운 수학 연산을 담당하고, Pandas는 데이터를 정리·정제·준비하여 모델링에 활용합니다. 이 두 라이브러리를 마스터하면서 AI와 ML에 대한 진입 장벽이 크게 낮아졌고, 앞으로 더 고급 개념을 탐구해 나가고 싶습니다.