5-2 . Numpy 제공 자료구조/Array

[파이썬 numpy] 2차원 배열의 인덱싱/수정

만다린망고 2020. 10. 16. 13:36
반응형

[파이썬 numpy] 2차원 배열의 인덱싱/수정


2차원 배열의 인덱싱과 수정방법을 알아봅시다. 배열의 인덱싱은 배열의 특정 원소(들)에 접근하는 것입니다. 특정원소에 접근하면 그 값을 다른 값으로 바꿀 수 있기 때문에 배열의 수정도 함께 배울 것입니다.


먼저 배열을 하나 정의합시다. 


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

>>> A2

array([[ 1,  2,  3],

       [ 4,  5,  6],

       [ 7,  8,  9],

       [10, 11, 12]])




하나의 원소에 접근


1행2열에 접근


>>> A2[0,1]

2




구간을 이용하여 여러 원소에 접근


1행에 접근


>>> A2[0]

array([1, 2, 3])


2열에 접근


>>> A2[:,1]

array([ 2,  5,  8, 11])




처음부터 또는 마지막까지 접근


두번째 열의 첫 원소부터 3번째 원소까지 접근


>>> A2[:2,1]

array([2, 5])



두번째 열의 세번째 원소부터 끝 원소까지 접근


>>> A2[2:,1]

array([ 8, 11])




불연속하게 접근


세번째 행의 첫번째, 세번째 원소에 접근


>>> A2[2,[0,2]]

array([7, 9])




조건부 인덱싱


2보다 큰 원소에만 접근해봅시다.


>>> A2[A2>2]

array([ 3,  4,  5,  6,  7,  8,  9, 10, 11, 12])




원소 수정


2행3열의 원소를 100으로 변경


>>> A2[1,2]=100

>>> A2

array([[  1,   2,   3],

       [  4,   5, 100],

       [  7,   8,   9],

       [ 10,  11,  12]])



반응형