Table of Contents

Python

Numpy 크기차원변경

꼬꼬마코더 2024. 4. 20. 16:29
728x90

Numpy 2차원을 1차원으로 크기변경하려면?

numpy.reshape(a, newshape, order='C')

numpy.ravel(a, order='C')

numpy.ndarray.flatten(order='C')

numpy.ndarray.ravel([order])

import numpy as np
a = np.arange(12) #1차원 
b = a.reshape(3,4) #2차원으로 변경
 
print(a)
>>>
[ 0  1  2  3  4  5  6  7  8  9 10 11]

print(b)
>>>
[[ 0  1  2  3]
 [ 4  5  6  7]
 [ 8  9 10 11]]

print(b.ravel()) # 2차원을 1차원으로 변경
>>>
[ 0  1  2  3  4  5  6  7  8  9 10 11]

print(b.reshape(-1)) # 2차원을 1차원으로 변경
>>>
[ 0  1  2  3  4  5  6  7  8  9 10 11]

print(b.reshape(2,6)) # 2차원 b.shape (3,4)을 2차원 b.shape (2,6)으로 변경
>>>
[[ 0  1  2  3  4  5]
 [ 6  7  8  9 10 11]]

 

 

Numpy 3차원을 1,2차원으로 크기변경하려면?

import numpy as np

# 3차원 배열 생성
# 예를 들어, shape가 (높이=2, 행=3, 열=4)인 배열
array3d = np.array([[[ 1,  2,  3,  4],
                     [ 5,  6,  7,  8],
                     [ 9, 10, 11, 12]],
                    
                    [[13, 14, 15, 16],
                     [17, 18, 19, 20],
                     [21, 22, 23, 24]]])
                     
print(array3d.ravel())
>>>
[ 1  2  3  4  5  6  7  8  9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24]

print(array3d.reshape(-1))
>>>
[ 1  2  3  4  5  6  7  8  9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24]

print(array3d.flatten())
>>>
[ 1  2  3  4  5  6  7  8  9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24]

print(array3d.reshape(3,2,4))
>>>
[[[ 1  2  3  4]
  [ 5  6  7  8]]

 [[ 9 10 11 12]
  [13 14 15 16]]

 [[17 18 19 20]
  [21 22 23 24]]]

 

 

2024.04.20 - [분류 전체보기] - Numpy Array 쪼개기

'Python' 카테고리의 다른 글

Numpy Array를 쌓기  (0) 2024.04.20
Numpy Array 쪼개기  (0) 2024.04.20
예외처리문 try - except - else - finally 구문  (0) 2024.04.20
Numpy.arange / Numpy.linespace  (0) 2024.04.20
.MD파일? 마크다운MarkDown 파일!!  (0) 2024.04.19