HOWTO · NumPy

NumPy에서 행렬을 배열로 변환

이 튜토리얼은 파이썬에서 행렬을 배열로 변환하는 방법을 보여줍니다.

NumPy에는 행렬에 대해 다양한 작업을 수행하는 데 사용할 수있는 많은 함수와 클래스가 있습니다.

이 튜토리얼에서는 NumPy에서 행렬을 배열로 변환하는 방법을 배웁니다.

numpy.flatten()함수를 사용하여 NumPy에서 행렬을 배열로 변환

flatten()은 N 차원 배열을 취하여 단일 차원 배열로 변환합니다.

ndarray 개체에서만 작동합니다.

아래와 같이 행렬을 배열로 변환 할 수 있습니다.

import numpy as np

arr = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
print(arr.flatten())

출력:

[1 2 3 4 5 6 7 8 9]

행렬 유형 객체로 작업하는 경우asarray()함수를 사용하여 배열로 변환 한 다음flatten()함수를 사용해야합니다. 모든 방법에 대해 수행 할 수 있습니다.

예를 들면

import numpy as np

arr = np.matrix([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
arr_d = (np.asarray(arr)).flatten()
print(arr_d)

출력:

[1 2 3 4 5 6 7 8 9]

numpy.ravel()함수를 사용하여 NumPy에서 행렬을 배열로 변환

ravel()함수는 몇 가지 주목할만한 차이점을 제외하고flatten()함수와 똑같이 작동합니다. 둘 다 N 차원 배열을 단일 차원 배열로 변환하는 데 사용됩니다.

그러나ravel()함수는 라이브러리 함수이며 배열 목록과 같은 객체에서도 작동 할 수 있습니다. flatten()은 원본의 사본을 반환하는 반면ravel()은 가능할 때마다 항상 원본의보기를 반환합니다.

다음 코드에서는이 함수를 사용하여 행렬을 변환합니다.

import numpy as np

arr = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
print(arr.ravel())

출력:

[1 2 3 4 5 6 7 8 9]

numpy.reshape()함수를 사용하여 NumPy에서 행렬을 배열로 변환

reshape()는 내용을 변경하지 않고 배열의 전체 모양을 수정했습니다. 행렬의 새로운 모양을-1로 지정하면 1 차원 배열이 생성됩니다.

예를 들면

import numpy as np

arr = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
print(arr.reshape(-1))

출력:

[1 2 3 4 5 6 7 8 9]