-
Python Numpy ( 5. 배열 연결 및 분할)Python/Python 2020. 1. 20. 19:05반응형
배열 연결 Numpy 에서는 주로 np.concatenate , np.vstack , np.hstack 루틴을 이용해 두 배열을 결합하거나 연결한다 여기서 보다시피 np.concatenate 는 튜플이나 배열의 리스트를 첫 번째 인수로 취한다.
#배열 연결 #Numpy에서는 주로 np.concatenate , np.vstack np.hstack 루틴을 이용해 두 배열을 결합하거나한다. x= np.array([1,2,3]) y= np.array([3,2,1]) np.concatenate([x,y])
# 3개 이상도 가능하다 z = [99,999,9999] print(np.concatenate([x,y,z]))
grid = np.array([[1,2,3] , [4,5,6]]) # 첫 번째 축을 따라 연결 np.concatenate([grid,grid])
# 두 번째 축을 따라 연결 (0부터 시작하는 인덱스 방식) np.concatenate([grid,grid], axis =1)
혼합된 차원의 배열로 작업할 때는 np.vstack(수직 스택 , vertical stck) np.hstack(수평스택 , horizontal stck )함수를 사용하는 것이 더 명확하다.
x = np.array([1,2,3]) grid = np.array([[9,8,7] , [6,5,4]]) #배열을 수직 으로 쌓음 np.vstack([x,grid])
#배열을 수평으로 쌓음 y = np.array([[99,999,9], [88,888,8]]) np.hstack([grid,y])
배열 분할하기
분할로눈 np.split , np.hsplit , np.vsplit 함수로 구현된다
각 함수에 분할지점을 알려주는 인덱스 목록을 전달할 수 있다.x = [1,2,3,99,99,3,2,1] x1,x2,x3 = np.split(x,[3,5]) print(x1,x2,x3)
# N개의 분할점은 N+1 개의 하위 배열을 만든다 . 관련 함수인 np.hsplit 과 np.vsplit은 서로 비슷하다. grid = np.arange(16).reshape((4,4)) grid
upper, lower = np.vsplit(grid, [2]) print(upper) print(lower)
left,right = np.hsplit(grid,[2]) print(left) print(right)
반응형'Python > Python' 카테고리의 다른 글
Python NumPy(7. Sum 과 np.sum 차이 ) (0) 2020.01.21 Python NumPy(6. NumPy ufuncs연산) (0) 2020.01.21 Python Numpy (4. Numpy 배열 인덱싱) (0) 2020.01.20 Python Numpy (3.표준 데이터 타입) (0) 2020.01.20 Python Numpy 모듈 (2. Numpy배열 생성하기) (0) 2020.01.20