이번에 사용할 예시 배열

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

 

세 가지 방법으로 위에 배열에서 필요한 요소만 잘라내보자.


1. ndarray를 슬라이싱 하는 첫번째 방법은 가로 세로 줄을 그려 영역을 crop하는 느낌이라고 생각하면 된다.

    [n:c , n1:c1] n:c만큼 가로로 먼저 영역 긋고 n1:c1만큼 또 세로로 영역을 긋는 것이다.

arr_1 = arr[:2,1:3]            # [:2]= 위에서 아래로 0에서 2이전 까지 이동, [1:3] = 좌에서 우로 1에서 3 이전까지 이동 해서 슬라이싱
print(arr_1)

출력>
[[2 3]
 [5 6]]

 

2. 내가 원하는 요소를 바로 가져오는 방법 : 배열이름[N, N1] 여기사 N은 배열, N1은 인덱스 넘버

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


arr [0,2]              # 배열0번의 2번째 데이터 가져와라

출력>
3

 

 

3. 조건을 달아서 조건에 맞는 데이터/안맞는 데이터로 나눈 후 참인 것만 나오게 하는 방법

arr = np.array([[1,2,3],[4,5,6]])
idx = arr > 3                   # arr에서 3이상인것    조건식을 달면 조건에 따른 값 따로 나타난다
print(idx)
[[False False False]                    #위의 print의 결과
 [ True  True  True]]              
arr[idx]                                    # 이 조건을 배열 옆에 각진괄호 안에 써준다!


출력>
array([4, 5, 6])                       # 조건식에 참인 데이터만 나온다

+ Recent posts