본문 바로가기
파이썬(Python)

넘파이 / numpy 1 - 개념, 배열생성, 배열복제

by 무지성개발자 2021. 8. 3.

numpy 란?


다차원 배열을 제공하는 모듈입니다.(범용적 데이터 처리에 가능한 다차원 컨테이너)

메모리를 효울적으로 사용하고, 백터 산술연산, 브로드케스팅 기능을 제공합니다.

pandas, 딥러닝의 각종 엔징들의 기반이 됩니다.

배열을 이용한 연산으로 행렬 연산을 위한 핵심 라이브러리입니다.

반복문을 쓰지 않고도 고속의 연산 처리가 가능합니다.

선형대수, 난수발생, 푸리에 변환 등에도 사용가능합니다.

C, C++, 포트란과의 연동 작업에도 사용합니다.


numpy 기본 모듈 가져오기


# 모듈 가져오기
import numpy as np

 

# as np 로 numpy의 별칭을 정해줍니다.


numpy 배열 생성 => array, arrange


# np.array() : 입력 데이터를 배열로 변환해줍니다.

# .dtype : 출력물의 데이터 타입을 변환해줍니다.

 

data = [1,2,3,4,5]
arr = np.array(data, dtype = np.float64)
arr, arr.dtype

 

# np.arrange() : 배열의 연속수 배치할 때 사용합니다.

# .ndim : 배열의 차원을 알려줍니다.

 

arr3 = np.arange(1,11, 2)          # 1부터 10까지 2간격으로 뽑아라
arr3, arr3.ndim

 

arr1 = np.array([[1,2,3], [4,5,6]])
arr1


numpy 배열 복제 => asarray


 

arr2 = np.asarray(arr, dtype = np.int32)
arr2


numpy 구성원이 0인 배열 생성 => zeros, zeros_like


# np.zeros() : 모든 구성원이 0인 배열 생성합니다.

 

arr4 = np.zeros((4,3))
arr4, arr4.shape

 

# (4, 3) 은 데이터가 4개에 특성 3개를 가지는 것을 말합니다.

arr4 = np.zeros((4,3,7))
arr4, arr4.shape, arr4.ndim 

 

# 3차원의 데이터입니다.

 

# np.zeros_like() : 괄호 안에 들어있는 배열의 모양을 본따서 배열을 만들고, 구성원의 값을 0으로 초기화 시킵니다.

 

arr5 = np.zeros_like(arr2)
arr5, arr5.shape


numpy 구성원이 1인 배열 생성 => ones, ones_like


# np.ones() : 모든 구성원이 1인 배열 생성합니다.

 

arr6 = np.ones((5,5))
arr6, arr6.shape

 

# np.ones_like() : 괄호 안에 들어있는 배열의 모양을 본따서 배열을 만들고, 구성원의 값을 1으로 초기화 시킵니다.

 

arr7 = np.ones_like(arr3)
arr7, arr7.shape


numpy 단위 행렬을 만드는 함수 => eye, identity


np.eye(5)

np.identity(3)