오답노트

[Numpy] 브로드캐스팅(Broadcasting) 본문

Python/Numpy

[Numpy] 브로드캐스팅(Broadcasting)

권멋져 2022. 7. 11. 18:14

브로드캐스팅(Broadcasting)

브로드캐스팅은 shape이 다른 두 배열을 연산할 때, 서로의 shape을 맞춰 연산하는 것을 의미한다.

1-1. 브로드캐스팅의 예시1

사진 1-1을 보면 3행3열 행렬과 1행3열 행렬을 더하는 연산을 할 때, 1행3열 행렬이 3행3열 행렬로 브로드캐스팅되어 연산된다.

 

1-2 브로드캐스팅의 예시2

사진 1-2를 보면 두 행렬 모두 행의 개수, 열의 개수가 다르다. 하지만 브로드캐스팅되어 연산된 값을 출력한다.

 

arr1 = np.array([[0,0,0],
                 [1,1,1],
                 [2,2,2]])
arr2 = np.array([5,6,7])
print(arr1 + arr2)
'''''''

[[5 6 7]
 [6 7 8]
 [7 8 9]]


'''''''


arr1 = np.array([[0],
                 [1],
                 [2]])
arr2 = np.array([1,1,1])

print(arr1+arr2)
'''''''

[[1 1 1]
 [2 2 2]
 [3 3 3]]


'''''''