NumPy 배열을 연결하는 방법
NumPy는 Python에서 배열 작업을 위한 훌륭한 라이브러리입니다. 모든 크기의 배열 생성에서 조작에 이르기까지 모든 것을 다룹니다. NumPy가 배열을 연결하는 데 사용할 수 있는 유틸리티와 함께 제공된다는 것은 놀라운 일이 아닙니다.
numpy.concatenate()
메서드는 두 개 이상의 배열을 단일 배열로 결합합니다.
이 가이드에서는 NumPy 배열이 무엇이고 어떻게 연결할 수 있는지에 대해 이야기할 것입니다. 시작하는 데 도움이 되는 몇 가지 예를 살펴보겠습니다. 시작하겠습니다!
배열의 구조
NumPy 배열은 NumPy 라이브러리와 함께 작동하는 배열 유형입니다. 다른 배열처럼 보이지만 ndarray 객체 내부에 저장됩니다.
array([1, 2, 3])
NumPy 배열로 작업하려면 numpy 라이브러리를 가져와야 합니다.
import numpy as np
우리는 두 개의 배열을 연결할 것입니다. 하나의 배열에는 1에서 9(포함) 사이의 모든 숫자가 포함됩니다. 두 번째 배열에는 10에서 18(포함) 사이의 모든 숫자가 포함됩니다.
arange()
를 사용하여 이러한 배열을 생성해 보겠습니다. 방법:
first_array = np.arange(1, 10).reshape(3, 3) second_array = np.arange(10, 19).reshape(3, 3) print(first_array) print(second_array)
이 코드는 두 개의 배열을 만듭니다. 각 배열은 2차원 배열입니다. reshape()
를 사용하여 이러한 배열을 2d로 만들었습니다. 각 배열에 대해 3×3 그리드를 생성하는 방법:
참가자의 81%는 부트캠프에 참석한 후 기술 직업 전망에 대해 더 자신감을 느꼈다고 말했습니다. 지금 부트캠프에 참여하십시오.
부트캠프 졸업생은 부트캠프 시작부터 첫 직장을 찾는 데까지 6개월도 채 걸리지 않았습니다.
[[1 2 3] [4 5 6] [7 8 9]] [[10 11 12] [13 14 15] [16 17 18]]
이제 작업할 수 있는 두 개의 어레이가 있습니다! concatenate()
를 사용하여 연결해 보겠습니다. .
넘파이 연결
행 또는 열을 기준으로 두 축의 배열을 연결할 수 있습니다. 이것은 concatenate()
를 사용하여 수행됩니다. 방법. 연결 방법은 1d, 2d, 3d, 4d 및 더 많은 차원의 배열을 병합할 수 있습니다.
행으로 연결
행별로 두 배열을 연결하는 것으로 시작하겠습니다. 이렇게 하면 두 배열의 항목을 행별로 정렬하고 하나의 배열로 병합합니다.
final_array = np.concatenate((first_array, second_array)) print(final_array)
concatenate()
내부에 튜플을 지정했습니다. 함수. 이 튜플에는 연결하려는 배열 목록이 포함되어 있습니다. 매개변수 없이 concatenate()
행별로 연결합니다.
코드는 다음을 반환합니다.
[[ 1 2 3] [ 4 5 6] [ 7 8 9] [10 11 12] [13 14 15] [16 17 18]]
배열은 행으로 연결됩니다.
열로 연결
연결 방법을 사용하여 열별로 두 배열을 병합할 수 있습니다.
이를 위해 새로운 매개변수인 axis를 도입해야 합니다. 기본적으로 이 값은 0입니다. 이것은 x축 또는 행 축에 해당합니다. 이 값을 재정의하고 1로 설정할 수 있습니다. 그러면 두 배열이 열별로 병합됩니다.
열을 기준으로 두 배열을 연결해 보겠습니다.
final_array = np.concatenate((first_array, second_array), axis=1) print(final_array)
우리의 코드는 마지막 예제와 거의 동일합니다. 차이점은 axis=1 매개변수를 지정했다는 것입니다. 코드를 실행할 때 어떤 일이 발생하는지 봅시다:
[[ 1 2 3 10 11 12] [ 4 5 6 13 14 15] [ 7 8 9 16 17 18]]
배열은 열별로 병합됩니다.
2개 이상의 배열 연결
concatenate()
메소드는 임의의 수의 배열을 연결할 수 있습니다. 가로 축에 세 개의 배열을 연결해 보겠습니다. 우리가 작업할 배열에는 다음 범위의 모든 숫자가 포함됩니다.
- 1~9(포함).
- 10~18(포함).
- 19-27(포함).
Python에서 배열을 정의해 보겠습니다.
first_array = np.arange(1, 10).reshape(3, 3) second_array = np.arange(10, 19).reshape(3, 3) third_array = np.arange(19, 28).reshape(3, 3)
다음으로 연결을 사용하여 함께 병합할 수 있습니다.
final_array = np.concatenate((first_array, second_array, third_array), axis=1) print(final_array)
concatenate()
에서 세 개의 배열을 튜플로 지정했습니다. 방법. 이 배열을 결합하면 1에서 27 사이의 모든 숫자에 해당합니다.
프로그램을 실행해 보겠습니다.
[[ 1 2 3 10 11 12 19 20 21] [ 4 5 6 13 14 15 22 23 24] [ 7 8 9 16 17 18 25 26 27]]
이제 세 개의 배열이 "final_array" 변수에 할당되었습니다. 배열이 성공적으로 병합되었음을 보여주기 위해 이 변수를 콘솔에 인쇄했습니다.
결론
NumPy concatenate()
메소드는 둘 이상의 NumPy 배열을 결합합니다. 배열은 기본적으로 세로 축에 결합됩니다. axis=1 플래그를 사용하여 수평 접근에서 배열을 결합할 수 있습니다.
vstack 및 hstack 메서드를 사용하여 둘 이상의 1d 배열을 연결할 수 있습니다. concatenate()
이러한 방법보다 효율적입니다. concatenate()
2d, 3d 및 더 높은 차원의 배열 연결도 지원합니다.
이제 Python 전문가처럼 NumPy 배열을 연결할 준비가 되었습니다!