# 배열에 행/열 추가
import numpy as np
aa = np.eye(3) # 3열 3행 만들기
print(aa, aa.shape)
print('열 추가----')
bb = np.c_[aa, aa[2]] # 2번 열과 같은 값으로 열 추가
print(bb)
print('행 추가----')
cc = np.r_[aa, [aa[2]]] # 2번 행과 같은 값으로 행 추가
print(cc)
print()
a = np.array([1,2,3])
print('a = ', a)
print(np.c_[a])
print(a.reshape(3,1)) # 3행 1열로 만들기
print('---append, insert, delete---')
print(a)
# b = np.append(a, [4,5])
b = np.append(a, [4,5], axis = 0) # axis = 0 열 방향, 행기준 1
print(b)
c = np.insert(a, 0, [6,7], axis = 0) # 0 부분이 isert 되는 위치이다.
print(c)
# d = np.delete(a, 1) # 1번 삭제
# d = np.delete(a, [1]) # 같은 방식
d = np.delete(a, [1,2]) # 1,2번 삭제
print(d)
print('---2차원---')
aa = np.arange(1, 10).reshape(3,3)
print(aa)
print(np.insert(aa, 1, 99)) # aa 배열을 차원 축소 후 1번째 지점에 99를 추가
print(np.insert(aa, 1, 99, axis = 0)) # axis = 0을 넣으면 행기준으로 넣어준다.
print(np.insert(aa, 1, 99, axis = 1)) # axis = 1을 넣으면 열기준으로 넣어준다.
print()
print(aa)
bb = np.arange(10, 19).reshape(3,3)
print(bb)
cc = np.append(aa, bb) # aa에다가 bb를 넣는다.
print(cc)
cc = np.append(aa, bb, axis = 0) # aa에다가 bb를 넣는다. 넣을 때는 행열이 같아야 된다.
print(cc)
cc = np.append(aa, bb, axis = 1) # aa에다가 bb를 넣는다.
print(cc)
print(np.delete(aa, 1)) # 1번째 인덱스 위치 지우기
print(np.delete(aa, 1, axis = 0)) # 1번행을 지우라는 의미
print(np.delete(aa, 1, axis = 1)) # 1번열을 지우라는 의미
<console>
[[1. 0. 0.]
[0. 1. 0.]
[0. 0. 1.]] (3, 3)
열 추가----
[[1. 0. 0. 0.]
[0. 1. 0. 0.]
[0. 0. 1. 1.]]
행 추가----
[[1. 0. 0.]
[0. 1. 0.]
[0. 0. 1.]
[0. 0. 1.]]
a = [1 2 3]
[[1]
[2]
[3]]
[[1]
[2]
[3]]
---append, insert, delete---
[1 2 3]
[1 2 3 4 5]
[6 7 1 2 3]
[1]
---2차원---
[[1 2 3]
[4 5 6]
[7 8 9]]
[ 1 99 2 3 4 5 6 7 8 9]
[[ 1 2 3]
[99 99 99]
[ 4 5 6]
[ 7 8 9]]
[[ 1 99 2 3]
[ 4 99 5 6]
[ 7 99 8 9]]
[[1 2 3]
[4 5 6]
[7 8 9]]
[[10 11 12]
[13 14 15]
[16 17 18]]
[ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18]
[[ 1 2 3]
[ 4 5 6]
[ 7 8 9]
[10 11 12]
[13 14 15]
[16 17 18]]
[[ 1 2 3 10 11 12]
[ 4 5 6 13 14 15]
[ 7 8 9 16 17 18]]
[1 3 4 5 6 7 8 9]
[[1 2 3]
[7 8 9]]
[[1 3]
[4 6]
[7 9]]