Python/개념정리
파이썬) [numpy] reshape 함수
powerdeng
2022. 7. 16. 17:57
1. Axis = Numbering
1- Dimension | ||||
axis | x | |||
Numbering | 0 |
2- Dimension | ||||
axis | y | x | ||
Numbering | 0 | 1 |
3- Dimension | ||||
axis | z | y | x | |
Numbering | 0 | 1 | 2 |
4- Dimension | ||||
axis | t | z | y | x |
Numbering | 0 | 1 | 2 | 3 |
차원이 하나씩 늘어날수록 기존의 차원 Numbering이 하나씩 뒤로 밀린다.
2. 1차원 연산
import numpy as np
arr = np.arange(1, 11).reshape(10)
print(arr)
<실행 결과>
[1 2 3 4 5 6 7 8 9 10]
3. 2차원 연산
import numpy as np
arr = np.arange(1, 11).reshape(2,5)
print(arr)
<실행 결과>
[[1 2 3 4 5]
[6 7 8 9 10]]
4. 3차원 연산
import numpy as np
arr = np.arange(1, 21).reshape(2,2,5)
print(arr)
<실행 결과>
[[[ 1 2 3 4 5]
[6 7 8 9 10]]
[[11 12 13 14 15]
[16 17 18 19 20]]]
5. 4차원 연산
import numpy as np
arr = np.arange(1, 41).reshape(-1,2,2,5) # reshape(2,2,2,5)와 동일
print(arr)
<실행 결과>
[[[[ 1 2 3 4 5]
[ 6 7 8 9 10]]
[[11 12 13 14 15]
[16 17 18 19 20]]]
[[[21 22 23 24 25]
[26 27 28 29 30]]
[[31 32 33 34 35]
[36 37 38 39 40]]]]
-1은 자동으로 계산한다. 예를 들어 위에서 총 40개의 요소가 있으니 2*2*2*5 = 40이다. 이때 -1을 t에 넣으면 z*y*x를 계산하여 맞는 숫자를 알아서 t에 넣어준다.
<참고 자료>
https://separang.tistory.com/87
[Numpy] 다중 차원(Dimension) 연산 쉽게 익히기 (꿀팁)
포스팅을 보기에 앞서, 이 글을 읽는 사람이 4차원쯤은 머릿속에서 그릴 수 있다. 하면 뒤로 가기를 누르길 바란다. 그럼 시작한다. 1. Axis = Numbering 부터 확인 np.sum([array], axis = # )가 기본 차원 연
separang.tistory.com