길이가 같지만 너비가 하나 인 배열로 작업 할 때 성가신 모양이 일치하지 않는 문제가 발생했습니다. 예를 들어파이썬에서 배열 곱하기/나눗셈을위한 변형
import numpy as np
x = np.ones(80)
y = np.ones([80, 100])
x*y
ValueError: shape mismatch: objects cannot be broadcast to a single shape
단순 용액의 Y *의 x.reshape (x.shape [0], 1)이다. 그러나 종종 배열의 한 열을 부분 집합 화 한 다음이 변형을 지정해야합니다. 이것을 피할 수있는 방법이 있습니까?
(x * y.T).T
또는
x.reshape((-1,1)) * y
NumPy와의 broadcasting은 매우 강력한 기능입니다, 당신은 자동으로 원하는 것을 정확히 할 것입니다,하지만 마지막 축 기대 (또는 :
설명해 주셔서 감사합니다. – mike
x.reshape ((- 1, 1))의 대안은 x [:, np.newaxis]입니다. 수식 내에서 더 읽기 쉽습니다. – donkopotamus