작성
·
119
0
array=np.array([[1,2,3],[4,5,6],[7,8,9]])
에서 row=0인 [[1,2,3]]을 뽑고 싶은데
print(array[0]) 이렇게 하면 [1,2,3]의 1차원 (3,0) ndarray가 나오는데 만약 [[1,2,3]] 인 2차원 (1,3)으로 뽑고 싶으면
array[0:1] 이렇게 말고 더 쉬운 방법은 없을까요??
애초에 array[0]으로 했는데 왜 1차원 array로 반환해주는 것인가요? 어떤 경우에 굳이 2차원을 1차원으로 줄여서 반환하는 것이 편리한지 궁금합니다.
답변 1
3
안녕하십니까,
개인적인 인지의 차이가 있는것 같습니다.
array[0]과 같이 단일값 인덱싱을 사용해서 원본 array에서 차원이 하나 줄어드는 array를 반환하는 것이 저는 큰 문제가 아니라고 생각합니다. : 와 같은 연속 인덱싱을 이용하면 거기에 맞는 차원을 반환하는 것이 좋다고 바람직 하다고 생각합니다. 단일 인덱싱이나 연속 인덱싱이냐의 차이에 따라 차원을 줄이던가, 아니면 원래 해당하는 차원을 반환하는 것이 더 직관성이 있다고 생각합니다.
감사합니다.