본문 바로가기
파이썬/통계분석

[파이썬 강의] 50. 2차원 배열(행렬)의 정의, 인덱싱, 슬라이싱

by 만다린망고 2021. 10. 14.
반응형

넘파이 패키지의 배열 자료구조를 이용하여 벡터를 정의하고 인덱싱과 슬라이싱을 해봅시다. 

먼저 넘파이 패키지를 불러옵시다. 

>>> import numpy as np


행렬은 리스트를 중첩하여 정의합니다. 

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


위 행렬은 아래와 같은 행렬입니다. 

$\begin{bmatrix}
1 &2 \\ 
3 &4 
\end{bmatrix}$

인덱싱은 리스트의 인덱싱과 동일한 방식으로 하면 됩니다. 예를들어 2라는 원소에 접근하고 싶은 경우, [1,2]라는 원소에 먼저 접근하고 나서 2에 접근하면 됩니다. 

>>> m1[0]
array([1, 2])
>>> m1[0][1]
2


배열의 경우 아래와 같이 입력해도 인덱싱이 가능합니다. 이 방법을 주로 사용합니다. 

>>> m1[0,1]
2


슬라이싱을 해보기 위해 다른 행렬을 하나 정의하겠습니다. 

>>> m2=np.array([[1,2,3],[4,5,6],[7,8,9]])
>>> m2
array([[1, 2, 3],
       [4, 5, 6],
       [7, 8, 9]])


2행의 5,6에 접근해봅시다. 

>>> m2[1]
array([4, 5, 6])
>>> m2[1,1:3]
array([5, 6]

 

반응형

댓글