NumPy 배열 분할
- 이전 페이지 NumPy 배열 연결
- 다음 페이지 NumPy 배열 검색
NumPy 배열 분할
분할은 결합의 반대 작업입니다.
결합(Joining)은 여러 배열을 하나의 배열로 합치는 것이며, 분할(Spliting)은 하나의 배열을 여러 배열로 나누는 것입니다.
우리는 다음과 같이 사용합니다 array_split()
배열을 분할할 때는 분할할 배열과 분할 수를 메서드에 전달합니다.
예제
배열을 3 부분으로 나눕니다:
import numpy as np arr = np.array([1, 2, 3, 4, 5, 6]) newarr = np.array_split(arr, 3) print(newarr)
주의사항:반환 값은 3 개의 배열을 포함한 배열입니다.
배열의 요소가 요구되는 수보다 적을 때는 마지막 부분에서 필요한 수만큼 조정됩니다.
예제
배열을 4 부분으로 나눕니다:
import numpy as np arr = np.array([1, 2, 3, 4, 5, 6]) newarr = np.array_split(arr, 4) print(newarr)
푸시:우리는 또한 split()
메서드는 사용 가능하지만, 원본 배열의 요소가 분할에 사용되는 데 부족할 때는 요소를 조정하지 않습니다. 예를 들어, 위의 예제와 같이array_split()
정상적으로 작동하지만 split()
실패합니다.
배열로 분할
array_split()
메서드의 반환 값은 각 분할된 배열을 포함한 배열입니다.
어떤 배열을 3 개의 배열로 분할할 때는 결과에서 그들에 대해 배열 요소와 같이 접근할 수 있습니다:
예제
분할된 배열에 접근하십시오:
import numpy as np arr = np.array([1, 2, 3, 4, 5, 6]) newarr = np.array_split(arr, 3) print(newarr[0]) print(newarr[1]) print(newarr[2])
이차원 배열 분할
이차원 배열을 분할할 때는 같은 문법을 사용하십시오.
사용 array_split()
메서드를 통해 분할할 배열과 분할하고자 하는 수를 입력합니다.
예제
이 2-D 배열을 세 개의 2-D 배열로 분할합니다.
import numpy as np arr = np.array([[1, 2], [3, 4], [5, 6], [7, 8], [9, 10], [11, 12]]) newarr = np.array_split(arr, 3) print(newarr)
이 예제는 세 개의 2-D 배열을 반환합니다.
다른 예제를 보겠습니다. 이번에는 2-D 배열의 각 요소가 3개의 요소를 포함하고 있습니다.
예제
이 2-D 배열을 세 개의 2-D 배열로 분할합니다.
import numpy as np arr = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9], [10, 11, 12], [13, 14, 15], [16, 17, 18]]) newarr = np.array_split(arr, 3) print(newarr)
이 예제는 세 개의 2-D 배열을 반환합니다.
또한, 분할할 축을 지정할 수 있습니다.
아래의 예제는 세 개의 2-D 배열을 반환하지만, 행 (axis=1) 방향으로 분할됩니다.
예제
행 방향으로 이 2-D 배열을 세 개의 2-D 배열로 분할합니다.
import numpy as np arr = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9], [10, 11, 12], [13, 14, 15], [16, 17, 18]]) newarr = np.array_split(arr, 3, axis=1) print(newarr)
다른 해결책으로는 사용할 수 있는 hstack()
반대로 hsplit()
.
예제
2-D 배열을 행 방향으로 세 개의 2-D 배열로 분할하는 hsplit() 메서드를 사용하여
import numpy as np arr = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9], [10, 11, 12], [13, 14, 15], [16, 17, 18]]) newarr = np.hsplit(arr, 3) print(newarr)
푸시:vsplit()
와 dsplit()
사용할 수 있는 vstack()
와 dstack()
유사한 대체 방법.
- 이전 페이지 NumPy 배열 연결
- 다음 페이지 NumPy 배열 검색