1
배열을 슬라이스하여 임의의 다른 배열로 조작 할 수 있도록하고 싶습니다. 즉, 내가 뭐하는 거지 다음필요에 따라 np.newaxis를 덧붙입니다.
A = np.random.rand(5)
B = np.random.rand(5,2,3,4)
slicer = [slice(None)] + [None]*(len(B.shape)-1)
result = B*A[slicer]
내가 slicer
를 구성 할 필요가 없도록 사용할 수있는 몇 가지 구문이 있습니까?
모양 변경이 하나의 옵션이 될 수있는 또한 일반적인 경우이 아니다'B * A.reshape (A.shape + (1) * (B.ndim-1))',하지만 본질적으로 동일합니다. – Divakar
당신의 코드는'expand_dims'가 내부적으로 무엇을하는지 생각 나게합니다. 방송 기본값은 다른 방향으로 확장됩니다. 자신의 함수에서이 액션을 감싸는 것이 가장 간단하다. – hpaulj