Numpy란
Numpy는 C언어를 기반으로 구현된 파이썬 라이브러리로써, 고성능 수치계산을 위해 제작되었다.
Numerical Python의 줄임말이기도 한 Numpy는 벡터 및 행렬 연산에 있어 매우 편리한 기능을 제공해준다.
Numpy는 기본적으로 배열(Array)로 데이터를 관리하며 이에 대해 연산을 수행한다.
코딩을 통해 살펴보자.
#numpy 모듈 불러오기
import numpy
#단축어로 불러오기
import numpy as np
위는 기본적인 내용이므로 생략.
#Array 정의 및 사용
data_1=[1,2,3,4,5]
data_2=[1,2,3,4,4.5,6,7]
print(data_1,data_2)
[1, 2, 3, 4, 5] [1, 2, 3, 4, 4.5, 6, 7]
단순히 배열을 생성한다.
#numpy를 이용한 array 정의
#단순 리스트 numpy array로 사용
np_arr1=np.array(data_1)
print(np_arr1)
#array의 형태(크기)를 확인하는 메서드.
print(np_arr1.shape)
[1 2 3 4 5]
(5,)
넘파이에서의 형태출력은 보통 이차원 배열로 출력해준다. 그렇기에 (5,)으로 출력된다.
#직접 numpy array 선언
np_arr2=np.array([1,2,3,4,5])
print(np_arr2)
#array의 형태(크기)를 확인하는 메서드.
print(np_arr2.shape)
#array의 자료형 확인 메서드.(dtype: datatype 약자)
print(np_arr2.dtype)
[1 2 3 4 5]
(5,)
int32
dtype를 통해 integer임을 확인할 수 있다.
np_arr3=np.array(data_2)
print(np_arr3)
print(np_arr3.dtype)
[1. 2. 3. 4. 4.5 6. 7. ]
float64
dtype을 통해 float을 확인할 수 있다.
np_arr4=np.array([[1,2,3],[3,4,5],[5,6,7],[7,8,9]])
print(np_arr4)
print(np_arr4.shape)
[[1 2 3]
[3 4 5]
[5 6 7]
[7 8 9]]
(4, 3)
이차원 배열을 정의한 후, 형태까지 확인해본 결과이다.
numpy shape
numpy에서는 해당 array의 크기를 알 수 있다.
shape 을 확인함으로써 몇개의 데이터가 있는지, 몇 차원으로 존재하는지 등을 확인할 수 있다.
위에서 arr1.shape의 결과는 (5,) 으로써, 1차원의 데이터이며 총 5라는 크기를 갖고 있음을 알 수 있다.
arr4.shape의 결과는 (4,3) 으로써, 2차원의 데이터이며 4 * 3 크기를 갖고 있는 array 이다.
numpy 자료형
arr1이나 arr2는 int64라는 자료형을 갖는 것에 반해 arr3는 float64라는 자료형을 갖는다.
이는 arr3내부 데이터를 살펴보면 3.5라는 실수형 데이터를 갖기 때문임을 알 수 있다.
numpy에서 사용되는 자료형은 아래와 같다. (자료형 뒤에 붙는 숫자는 몇 비트 크기인지를 의미한다.)
- 부호가 있는 정수 int(8, 16, 32, 64)
- 부호가 없는 정수 uint(8 ,16, 32, 54)
- 실수 float(16, 32, 64, 128)
- 복소수 complex(64, 128, 256)
- 불리언 bool
- 문자열 string_
- 파이썬 오프젝트 object
- 유니코드 unicode_
'Data analysis > Numpy' 카테고리의 다른 글
5. Array boolean 인덱싱(마스크) (0) | 2021.03.19 |
---|---|
4. Array 인덱싱 (0) | 2021.03.19 |
3. Array 연산 (0) | 2021.03.19 |
2. zeros(),ones(),arange() 함수 (0) | 2021.03.19 |
배열(Array) 과 리스트(List)의 정의 및 차이점 (0) | 2021.03.19 |