numpy
次のコードを検討してください。
A[start:end] = B[mask]
ここ:
A
およびB
は、同じ列数の 2D 配列です。start
およびend
スカラーです。mask
1D ブール配列です。(end - start) == sum(mask)
.
原則として、上記の操作は、 の要素を に直接O(1)
コピーすることにより、一時ストレージを使用して実行できます。B
A
これは実際に実際に起こることですか、それともnumpy
一時的な配列を構築しB[mask]
ますか? 後者の場合、ステートメントを書き直すことでこれを回避する方法はありますか?