-
파이썬 데이터사이언스 핸드북 2장 - Numpy 집계데이터 분석/NumPy 2020. 5. 24. 12:25
NumPy 집계가 빠르다!!!
NumPy 배열에서 쓸 수 있는 빠른 내장 집계 함수
Python 내장함수 sum 과 NumPy 내장함수 sum 은 매우 유사하다.
그러나 NumPy 내장함수 sum 이 컴파일된 코드에서 실행되기 때문에 더 빠르다. min, max, sum 을 비롯한 다른 여러 NumPy 집계함수의 경우, 배열 객체 자체의 메서드를 사용하는 더 짧은 구문이 존재한다.NumPy 다차원 집계
NumPy 의 결과물은 Scalar 또는 NdArray 이다. 즉 Dimension 차원이란 개념을 가진다.
집계 연산의 보편적인 유형은 행이나 열을 기준으로 집계하는 것이다. 엑셀 스프레드시트를 떠올려보면 쉽다. 예를 들어 직원정보를 관리한다고 했을 때, 한 명의 직원에 대해서, 사번, 이름, 부서, 연봉(?) 등의 정보를 관리한다. 한 명의 직원에 대해서 한 행이 생성되고, 직원정보 상세를 각 열에 채워넣는다. 이 때 연봉에 대한 평균값을 알고 싶으면, 모든 행에 대한 연봉정보에 대해서 평균 집계를 해야한다. 그래서 기본적으로 집계의 대상 axis 는 0 (행) 이다. 여러 행을 하나의 값으로 축소하여 반환한다. 때에 따라 열에 대해 축소하고 싶을 때 (여러 열을 하나의 열로 축소하고 싶을 때) axis = 1 로 지정하면 된다.
아래 예시와 같이 (3,4) 배열에 대해서
axis = 0 는 행의 수 3개를 무시해서 열의 수만큼 4개의 값을 담은 배열을 반환하고
axis = 1 은 열의 수 4개를 무시해서 행의 수만큼 3개의 값을 담은 배열을 반환한다.예제: 미국 대통령의 평균 신장은 얼마일까?
파일은 아래 github 에서 다운받을 수 있다.
https://github.com/jakevdp/PythonDataScienceHandbook/blob/master/notebooks/data/president_heights.csv나는 파이썬 데이터사이언스 핸드북 실습을 동일한 디렉토리의 data 폴더에 넣었다. 파일 경로를 지정하고 notebook 에 띄워본다.
pandas 가 없다고 해서 다운받는중 (왜 없지;;)
! 는 jupyter notebook 에서 바로 터미널 환경에서 명령어를 실행시키는 것이다. (이 때가 가장 설렌다)
pandas 를 import 하고, 집계대상인 heights 를 ndarray 배열 heights 에 담았다.
배열 heights 에 대해서 기본적인 집계를 수행해본다.
25%, 50%(중간값), 75% 분포도를 확인해보았다. 중간값과 75% 차이가 안나서 그래프를 확인해보자.
나중에 배울 개념들이지만 코드를 그냥 복사해서 써봤다. 180~185 사이에 값이 몰려있음을 확인할 수 있었다.
'데이터 분석 > NumPy' 카테고리의 다른 글
파이썬 데이터사이언스 핸드북 2 장 - 비교, 마스크, 부울 로직 (0) 2020.05.31 파이썬 데이터사이언스 핸드북 2 장 - 배열 연산: 브로드캐스팅 (0) 2020.05.31 파이썬 데이터사이언스 핸드북 2 장 - NumPy 지수와 로그 함수 (0) 2020.05.23 파이썬 데이터사이언스 핸드북 2 장 - NumPy 배열연산 ufuncs 소개 (0) 2020.05.17 파이썬 데이터사이언스 핸드북 2 장 - NumPy 배열의 기본 기능 (0) 2020.05.16