import numpy as np
A = np.arange(3).reshape(3,1)
B = np.arange(3).reshape(1,3)
print('A :\n',A)
print('B :\n',B)
print(A+B)
A :
[[0]
[1]
[2]]
B :
[[0 1 2]]
[[0 1 2]
[1 2 3]
[2 3 4]]
- 넘파이의 브로드캐스팅 기능이 덧셈이 가능하다고 판단하여 행렬간의 덧셈을 해주었다.
a = np.array([1,2,3,4,5])
b = np.array([1,2])
print('a :\n',a)
print('b :\n',b)
print(a+b)
a :
[1 2 3 4 5]
b :
[1 2]
- 반면에 위 코드처럼 넘파이의 브로드캐스팅 기능이 덧셈이 불가능하다고 판단하면 오류가 발생한다.
- 브로드캐스팅은 모양이 다른 배열들 간의 연산이 어떤 조건을 만족했을 때 가능하도록 배열을 자동적으로 변환하는 것이라고 생각할 수 있다.
- 브로드캐스팅은 배열의 차원의 크기가 1일때 가능하다.
- 차원의 짝이 맞을 때 가능하다.
'Python' 카테고리의 다른 글
BeautifulSoup - 특정 태그값 가져오기 (0) | 2022.07.20 |
---|---|
파이썬 - enumerate (0) | 2022.05.15 |
파이썬 - 넘파이 repeat (0) | 2022.05.09 |
파이썬 - 농담게임 (0) | 2022.05.06 |
파이썬 - 숫자 맞추기 게임 (0) | 2022.05.04 |
댓글