파이썬/numpy

numpy 2. ndarray

eprj12 2020. 10. 23. 02:08

 

파이썬의 list처럼 numpy의 배열은 ndarray 객체가 있습니다.

이를 생성하는 가장 쉬운 방법은 array 함수를 이용하는 방법입니다.

 

import numpy as np

arr = [1, 2, 3, 4, 5]

arr_np = np.array(arr)

 

다차원 배열도 생성할 수 있습니다.

 

 

배열의 형태는 다음과 같이 확인할 수 있습니다.

arr_shape = NDARRAY_OBJECT.shape

 

numpy 배열은 생성될 때 명시적으로 자료형을 선언하지 않는다면, 적절한 자료형을 추론해 dtype 객체에 저장합니다.

다음과 같이 확인할 수 있습니다.

arr_dtype = NDARRAY_OBJECT.dtype

 

자료형의 형태는 배열을 선언할 때 추가하거나, 선언된 뒤에도 변경할 수 있습니다.

 

선언 시 자료형 명시

 

자료형 변경

변경사항은 배열 전체에 적용됩니다.

 

array 메서드를 이용하지 않더라도 ndarray 배열 객체를 생성할 수 있는 방법은 많습니다.

 

np.zeros()

0으로 채워진 ndarray 객체를 생성합니다. 인자로는 원하는 크기를 받습니다. 1차원 객체라면 숫자 1개로도 가능하고, 2차원 객체부터는 튜플을 이용해 범위를 지정할 수 있습니다.

 

np.ones()

1로 채워진 ndarray 객체를 생성합니다. zeros 메서드와 0과 1의 차이 말고는 동일합니다.

 

이 외에도

일정 범위를 입력받아 배열을 생성하는 arange (파이썬 list의 range와 비슷합니다)

zeros나 ones처럼 초기화된 값이 아닌 가비지값으로 배열을 생성하는 empty

N*N 크기의 단위행렬을 생성하는 eye / identity 

 

등이 있습니다.