logo

Python의 numpy.concatenate()

concatenate() 함수는 NumPy 패키지의 함수입니다. 이 함수는 기본적으로 NumPy 배열을 결합합니다. 이 기능은 기본적으로 지정된 축을 따라 동일한 모양의 두 개 이상의 배열을 결합하는 데 사용됩니다. 명심해야 할 필수 사항은 다음과 같습니다.

  1. NumPy의 concatenate()는 전통적인 데이터베이스 조인과 다릅니다. 이는 NumPy 배열을 쌓는 것과 같습니다.
  2. 이 기능은 수직 및 수평으로 모두 작동할 수 있습니다. 이는 배열을 가로 또는 세로로 연결할 수 있음을 의미합니다.
numpy.concatenate()

concatenate() 함수는 일반적으로 np.concatenate()로 작성되지만 numpy.concatenate()로 작성할 수도 있습니다. numpy 패키지를 가져오는 방법에 따라 각각 import numpy를 np로 가져오거나 numpy를 가져옵니다.

통사론

 numpy.concatenate((a1, a2, ...), axis) 

매개변수

1) (a1, a2, ...)

이 매개변수는 배열 순서를 정의합니다. 여기서 a1, a2, a3 ...은 축에 해당하는 차원을 제외하고는 동일한 모양을 갖는 배열입니다.

Java 객체를 json으로 변환

2) 축 : int(선택)

관계이다

이 매개변수는 배열이 결합될 축을 정의합니다. 기본적으로 해당 값은 0입니다.

결과

두 배열의 요소를 모두 포함하는 ndarray를 반환합니다.

예시 1: numpy.concatenate()

 import numpy as np x=np.array([[1,2],[3,4]]) y=np.array([[12,30]]) z=np.concatenate((x,y)) z 

위의 코드에서

  • 별칭 이름이 np인 numpy를 가져왔습니다.
  • np.array() 함수를 사용하여 'x' 배열을 만들었습니다.
  • 그런 다음 동일한 np.array() 함수를 사용하여 또 다른 배열 'y'를 만들었습니다.
  • 변수 'z'를 선언하고 np.concatenate() 함수의 반환 값을 할당했습니다.
  • 함수에 배열 'x'와 'y'를 전달했습니다.
  • 마지막으로 'z' 값을 출력해 보았습니다.

출력에서 두 배열의 값, 즉 'x'와 'y'는 축=0으로 표시됩니다.

산출:

세계 최고의 자동차
 array([[ 1, 2], [ 3, 4], [12, 30]]) 

예 2: 축=0인 numpy.concatenate()

 import numpy as np x=np.array([[1,2],[3,4]]) y=np.array([[12,30]]) z=np.concatenate((x,y), axis=0) z 

산출:

 array([[ 1, 2], [ 3, 4], [12, 30]]) 

예 3: 축=1인 numpy.concatenate()

 import numpy as np x=np.array([[1,2],[3,4]]) y=np.array([[12,30]]) z=np.concatenate((x,y.T), axis=1) z 

산출:

 array([[ 1, 2, 12], [ 3, 4, 30]]) 

위의 예에서 '.T'는 행을 열로, 열을 행으로 변경하는 데 사용되었습니다.

예 4: 축=없음인 numpy.concatenate()

 import numpy as np x=np.array([[1,2],[3,4]]) y=np.array([[12,30]]) z=np.concatenate((x,y), axis=None) z 

산출:

SQL 절
 array([ 1, 2, 3, 4, 12, 30]) 

위의 예에서는 np.concatenate() 함수를 사용했습니다. 이 함수는 MaskedArray 입력의 마스킹을 유지하지 않습니다. MaskedArray 입력의 마스킹을 보존할 수 있는 배열을 연결할 수 있는 방법은 다음과 같습니다.

예시 5: np.ma.concatenate()

 import numpy as np x=np.ma.arange(3) y=np.arange(3,6) x[1]=np.ma.masked x y z1=np.concatenate([x,y]) z2=np.ma.concatenate([x,y]) z1 z2 

위의 코드에서

  • 별칭 이름이 np인 numpy를 가져왔습니다.
  • np.ma.arrange() 함수를 사용하여 'x' 배열을 만들었습니다.
  • 그런 다음 동일한 np.ma.arrange() 함수를 사용하여 또 다른 배열 'y'를 만들었습니다.
  • 변수 'z1'을 선언하고 np.concatenate() 함수의 반환 값을 할당했습니다.
  • 변수 'z2'를 선언하고 np.ma.concatenate() 함수의 반환값을 할당했습니다.
  • 마지막으로 'z1'과 'z2'의 값을 출력해 보았습니다.

출력에서 배열 'z1'과 'z2'의 값은 MaskedArray 입력의 마스킹을 유지했습니다.

산출:

 masked_array(data=[0, --, 2], mask=[False, True, False], fill_value=999999) array([3, 4, 5]) masked_array(data=[0, 1, 2, 3, 4, 5], mask=False, fill_value=999999) masked_array(data=[0, --, 2, 3, 4, 5], mask=[False, True, False, False, False, False], fill_value=999999)