IT 및 코딩/Numpy

<꿀팁모아 : 213번째 포스팅> Numpy 배열 재구성?

희망주기 2022. 8. 19. 14:40
반응형

<꿀팁모아 : 213번째 포스팅> Numpy 배열 재구성?

 

안녕하세요 꿀팁모아의 희망주기입니다

 

오늘 알아볼 주제는

 

배열 재구성입니다

 

1 배열 재구성

  Reshaping은 배열의 모양을 변경하는 것을 의미하는데요. 배열의 모양은 각 차원의 요소를 뜻합니다. 모양을 변경하여 차원을 추가 또는 제거하거나 각 차원의 요소 수를 변경할 수 있습니다 

 

  1차원에서 2차원으로 변경

 

  12개의 요소가 있는 다음 1 차원 배열을 2차원 배열로 변환합니다. 가장 바깥쪽 차원에는 각각 3개의 요소가 있는 4개의 배열이 있습니다. 

 

1차원에서 2차원으로 변형

   

   1차원에서 3차원으로 변형

 

   12개의 요소가 있는 다음 1차원 배열을 3차원 배열로 변환합니다. 가장 바깥쪽 차원에는 각각 2개의 요소가 있는 3개의 배열이 포함된 2개의 배열이 있습니다. 

1차원에서 3차원으로 변형

 

2 어떤 형태로든 변형할 수 있을까?

 

  결론부터 이야기하자면 변형할 수 있습니다. 모양 변경에 필요한 요소가 두 모양에서 동일하기만 하면 됩니다. 8개 요소 1D 배열을 2행 2D 배열의 4개 요소로 변형할 수 있지만 3x3 = 9개 요소가 필요하므로 3개 요소 3행 2D 배열로 변형할 수 없습니다. 

오류 발생

 

3 Copy or View 반환하기?

   

  반환된 배열이 복사본인지 뷰인지 확인합니다 

 

Copy or View 반환

 

4 알 수 없는 차원 

   하나의 "알 수 없는" 차원을 가질 수 있습니다. 즉, reshape 방법에서 치수 중 하나에 대해 정확한 수를 지정할 필요가 없습니다. 값으로 -1를 전달하면 Numpy가 이 숫자를 계산합니다 

 

8개의 요소가 있는 1D 배열을 2x2요소가 있는 3D 배열로 반환

 

5 어레이 병합 

   배열을 병합한다는 것은 다차원 배열을 1D 배열로 변환하는 것을 의미하는데요. 우리는 reshape(-1)로 진행할 수 있습니다.

 

배열을 1D 배열로 변환

 

반응형