더북(TheBook)

 

icon_solution 이 장에서 다루는 내용

 

보통 원천 데이터는 온갖 종류의 텍스트 문서에서 얻을 수 있다. 그리고 그 텍스트는 숫자로 되어 있을 때가 많다. 엑셀과 CSV 스프레드시트, 특히 데이터베이스 테이블은 100만 혹은 억 단위의 수치형 데이터를 보관할 수 있다. 파이썬의 기본 함수들은 텍스트 처리에 매우 능하지만, 정확한 수치 연산을 처리하느라 때때로 애먹고는 한다. 이때 구원투수로 numpy가 등판한다.

 

NumPy는 Numeric Python(numpy로 임포트한다)으로 고성능 수치 연산을 구현하는 효율적이고 병렬화된 함수들에 접근할 수 있는 인터페이스다. numpy 모듈은 새로운 파이썬 데이터 구조인 배열(array)과 배열에 특화된 함수를 제공하며, 난수 생성, 데이터 집계, 선형대수, 푸리에 변환 등 유용한 함수를 지원한다.

 

icon_wait

 

테라바이트의 나라로

여러분의 프로그램이 엄청나게 큰 수치형 데이터(테라바이트나 그보다 큰)를 다루어야 한다면 h5py 모듈을 사용하는 것이 좋다. h5py 모듈은 IDL이나 MATLAB 등 다양한 서드파티(third-party) 소프트웨어에서 지원하는 HDF5 바이너리 데이터 포맷을 지원한다. h5py 모듈은 배열과 딕셔너리 같은 익숙한 numpy와 파이썬 메커니즘을 제공한다. numpy 사용 방법을 익히고 나면, 그다음은 h5py다. 하지만 이 책에서는 다루지 않는다.

 

이 장에서는 다양한 데이터 소스에서 여러 형태의 numpy 배열을 만들고, 배열의 형태를 변형하거나 자르고, 인덱스를 붙이고, 사칙·논리 연산과 데이터 집계 함수를 배열에 적용하는 방법을 배울 것이다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.