본문 바로가기
5-2 . Numpy 제공 자료구조/Array

[파이썬 numpy] 배열(array) 소개, 정의

by 만다린망고 2020. 3. 28.
반응형

[파이썬 numpy] 

배열(array) 소개, 정의


파이썬에서 제공하는 기본 자료구조가 있지만, 수학적인 계산에는 적합하지 않습니다. R이나 매트랩과 같이 수치계산을 위해 만들어진 프로그램에서는 '배열'이라는 자료구조를 제공합니다.

 

배열은 행렬과 벡터를 포함하는 개념입니다. 1차원 배열이 '벡터', 2차원 배열이 '행렬'입니다. 따라서 배열을 정의할 수 있다는 것은 행렬계산이 가능하다는 의미입니다.

 

파이썬 라이브러리 중 numpy 를 설치하면 배열을 사용할 수 있습니다.

 



numpy 설치

 

numpy를 먼저 설치해봅시다. [시작]-[실행]에 cmd를 검색해서 까만 창을 실행합니다. 아래와 같이 입력하면 numpy가 설치됩니다.

 

pip install numpy

 

혹시 에러가 뜨는 경우, 에러 메시지를 구글에 입력하면 대처 방법들이 나옵니다 .

 



1차원 Array 정의 (벡터)

 

numpy의 설치가 끝나면, array를 정의해봅시다. 먼저 numpy를 import해야합니다. 설치만 한다고 사용할 수 있지 않고, 파이썬에서 numpy라는 라이브러리를 불러와야 합니다. 아래와 같이 입력합니다.

 

 >>> import numpy as np

 

numpy를 np라는 약어로 사용하겠다는 의미입니다. numpy 안에 정의되어 있는 함수들을 사용하려면 'numpy.함수이름' 이라는 형식으로 사용해야 하는데 그 불편함을 줄이기 위함입니다. 이제 array를 정의해봅시다. 배열을 정의할 때 사용하는 요소는 list 입니다. 예를 들면 [1,2,3] 이 리스트입니다. 

 

>>> A=np.array([1,2,3,4,5])
>>> A
array([1, 2, 3, 4, 5])


숫자가 아니라 문자를 넣어도 됩니다. 


>>> A_c=np.array(['a','b','c'])

>>> A_c

array(['a', 'b', 'c'], dtype='<U1')


숫자와 문자를 둘다 넣는 경우 숫자가 문자로 인식됩니다. 


>>> A_c2=np.array(['a','b',1])

>>> A_c2

array(['a', 'b', '1'], dtype='<U1')




2차원 Array 정의 (행렬)


2차원 배열인 행렬을 정의해봅시다. 아래와 같이 정의합니다. 


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

>>>A2

array([[1, 2, 3],

       [4, 5, 6]])


2행 3열인 행렬이 만들어집니다. 




3차원 Array 정의


3차원 배열을 정의해봅시다. 2행3열의 행렬을 두층으로 쌓겠습니다. 


>>> A3=np.array([ [[1,2,3],[4,5,6]], [[10,20,30],[40,50,60]] ])

>>> A3

array([[[ 1,  2,  3],

        [ 4,  5,  6]],


       [[10, 20, 30],

        [40, 50, 60]]])


4차원 이상의 배열도 정의가 가능합니다. 예를 들지는 않겠습니다. 



반응형

댓글