Python/Python Programming

[ Python ] numpy를 이용한 1차원 배열 2 차원 배열로 변환

Pydole 2023. 5. 12. 14:07

 

 

 list 데이터를 처리하다 보면, 1차원 배열을 2차원 배열로 변경해야할 때가 있는데, numpy를 이용하면 쉽게

이용할 수 있다.

 


 

reshape : 데이터를 변동시키지 않고, 새로운 배열을 만든다.

 

import numpy as np

# 3 X 10

a = [ x for x in range(30) ]
a = np.array(a)

a = a.reshape(10,3) # (2차원 원소수, 원소당 갯수)

print(a)



array([[ 0,  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]])

 

# 5 X 6


a = a.reshape(6,5)
print(a)



[[ 0  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]]

 

 

 

ndarray.tolist() : numpy array 형식을 list 형식으로

 

print(a.tolist())

-----------------------------

[[0, 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]]