python

[numpy] numpy 병합 | 열 병합 | 행 병합

전감자(◔◡◔) 2022. 9. 29. 01:17

-열 병합(열의 개수가 늘어남, 가로로 길어짐 => hstack 이라고 외우기)

'''
열병합==>
1) np.hstack(튜플)
2) np.concatenate(튜플,axis=1)==> axis=1인 컬럼방향으로 병합
3) np.column_stack(튜플)==> 컬럼방향으로 병합

'''
import numpy as np

arr=np.arange(9).reshape(3,3)
print(arr)
'''
[[0 1 2]
 [3 4 5]
 [6 7 8]]
'''
arr2=arr+100
print(arr2)
'''
[[100 101 102]
 [103 104 105]
 [106 107 108]]
'''

# 가. 컬럼 병합
print(np.hstack((arr,arr2)))
print(np.concatenate((arr,arr2),axis=1))
print(np.column_stack((arr,arr2)))
'''
[[  0   1   2 100 101 102]
 [  3   4   5 103 104 105]
 [  6   7   8 106 107 108]]
 
 [[  0   1   2 100 101 102]
 [  3   4   5 103 104 105]
 [  6   7   8 106 107 108]]
 
 
[[  0   1   2 100 101 102]
 [  3   4   5 103 104 105]
 [  6   7   8 106 107 108]]

'''

 

- 행 병합 (행의 개수가 늘어남, 세로로 길어짐 => vstack 이라고 외우기)

 

'''
행병합==>
1) np.vstack(튜플)
2) np.concatenate(튜플,axis=0)==> axis=0인 행방향으로 병합
3) np.row_stack(튜플)==> 행방향으로 병합

'''
import numpy as np

arr=np.arange(9).reshape(3,3)
print(arr)
'''
[[0 1 2]
 [3 4 5]
 [6 7 8]]
'''
arr2=arr+100
print(arr2)
'''
[[100 101 102]
 [103 104 105]
 [106 107 108]]
'''

# 나. 행 병합
print(np.vstack((arr,arr2)))
print(np.concatenate((arr,arr2),axis=0))
print(np.row_stack((arr,arr2)))
'''
[[  0   1   2]
 [  3   4   5]
 [  6   7   8]
 [100 101 102]
 [103 104 105]
 [106 107 108]]
 
[[  0   1   2]
 [  3   4   5]
 [  6   7   8]
 [100 101 102]
 [103 104 105]
 [106 107 108]]
 
[[  0   1   2]
 [  3   4   5]
 [  6   7   8]
 [100 101 102]
 [103 104 105]
 [106 107 108]]



'''