Numpy

열수철·2024년 2월 14일

List
1) 객체의 reference의 리스트
2) 실체 객체는 흩어져 저장되어 있음

array
1) 동일한 자료형만 다룰 수 있음
2) 객체(데이터)가 한 곳에 모여있음

ndim (number of dimension) - n차원
shape 차원의 길이(원소의 개수)
axis
size 총 원소 개수

) 주의 차원이 추가될 때 axis 0이 추가되고 기존 축들은 하나씩 밀린다.

astype() 자료형 변경 method

numpy 배열 생성
np.zeros(shape) shape 모양의 모든 원소가 0.0인 배열
np.ones(shape) shape 모양의 모든 원소가 1.0인 배열
np.full(shape, reset_num) shape 모양의 모든 원소가 reset_num인 배열

np.eye(n) n * n 모양의 대각 성분만 1.0인 배열

np.random.random(shape) shape 모양의 float 난수로 채워진 배열

np.arrange(first, end, interval) first부터 end사이의 원소들 모음(interval만큼 띄어서)
np.linspace(first, end, num) first와 end 사이의 간격을 num개수로 동일하게 나누어 만든 배열

array간의 기본 연산 가능(shape이 동일할 때만)

np.concatenate() arr1과 arr2를 같은 배열로 합침
np.hstack()
np.vstack(arr1, arr2) arr1에 arr2를 차원을 늘려 추가

arr.reshape(axis0, axis1) 기존 배열을 axis0, axis1 shape의 배열로 재생성
이때 총 크기는 기존의 shape 크기와 같아야한다.

indexing 사용은 list와 비슷
다차원배열에서 차이가 존재
np.arr[axis0, axis1]
np.arr[axis0][axis1]
후자는 arr[axis0]배열을 생성하고 계산해 더 느리다.

arr[조건식] -> 조건을 만족하는 원소만의 배열 생성
조건식 -> 각 원소들마다 조건을 만족하는 확인 후 bool 배열 생성

profile
그래픽스, 수학, 물리, 게임 만세

0개의 댓글