728x90
Numpy란 무엇인가?
Numpy의 경우는 Numerical Python의 약자로, Python에서 대규모 다차원 배열을 다룰 수 있게 도와주는 라이브러리 이다.
그럼 python에 있는 list를 통해서 하는것과 무엇이 다른가?
그것보다 빠르고 메모리를 효율적으로 사용하여 대용량 데이터를 처리할 때 효율적으로 처리가 가능한 장점이 있다.
그렇다면 Numpy를 이용하여 배열을 만드는 방법을 알아보자
Numpy 배열 만드는 방법
list(range(10)) #0부터 시작하여 10개의 배열을 만든다.
# [0,1,2,3,4,5,6,7,8,9]
import numpy as np
np.array([1,2,3,4,5])
# [1 2 3 4 5]
Numpy 를 이용하게 되면 이렇게 array 안쪽에 필요한 배열을 설정해서 만들어 넣을 수 있다.
배열 데이터 타입 - dtype
arr = np.array([1,2,3,4], dtype=float)
# array([1.,2.,3.,4.])
arr.dtype
# dtype('float64')
arr.astype(int)
# array ([1,2,3,4])
python에서 사용하는 list와 다르게 array 는 단일타입으로 구성되어있다.
배열 데이터 타입 dtype
dtype | 설명 | 다양한 표현 |
int | 정수형 타입 | i, int_, int32, int64, i8 |
float | 실수형 타입 | f,float_, float32, float64, f8 |
str | 문자열 타입 | str, U, U32 |
bool | 부울 타입 | ?, bool_ |
다양한 배열 만들기
# 10개의 0으로 채워진 int 배열을 만들기
np.zeros(10, dtype=int)
#array([0,0,0,0,0,0,0,0,0,0])
# 3x5의 float 타입으로 이루어진 1로 채운 배열 만들기
np.ones((3,5), dtype=float)
# array([[1., 1., 1., 1., 1.],
# [1., 1., 1., 1., 1.],
# [1., 1., 1., 1., 1.]])
# Start부터 End까지 2만큼 올려가며 배열 만들기
np.arange(0, 20, 2) # (start, end, step)
# array([0,2,4,6,8,10,12,14,16,18])
# Start부터 End사이의 값을 N 등분 해서 배열로 채우기
np.linspace(0, 1, 5) # (start, end, N)
# array([0., 0.25, 0.5, 0.75, 1.])
#난수로 채워진 배열 만들기
np.random.random((2,2))
# array ([0.198232837, 0.93847593],
# [0.547382745, 0.34757545]])
#정규 분포로부터 샘플링 된 난수 배열 만들기
np.random.normal(0,1,2) # N(0,1^2)로 부터 얻은 난수 2개
# array ([0.34543566, -0.9378456])
#임의의 int 배열 만들기
np.random.randint(0,10,2)
# array ([5,2])
728x90
'Computer Science > Python' 카테고리의 다른 글
[Python] Numpy 배열 사용법 (0) | 2022.08.10 |
---|
댓글