我正在嘗試使用並加速花式索引來「連接」兩個數組並總結其中一個結果軸。快速(呃)numpy花式索引和減少?
事情是這樣的:
$ ipython
In [1]: import numpy as np
In [2]: ne, ds = 12, 6
In [3]: i = np.random.randn(ne, ds).astype('float32')
In [4]: t = np.random.randint(0, ds, size=(1e5, ne)).astype('uint8')
In [5]: %timeit i[np.arange(ne), t].sum(-1)
10 loops, best of 3: 44 ms per loop
有一個簡單的方法來加速In [5]
的聲明?我應該去OpenMP和類似scipy.weave
或Cython
的prange
?
另一個相關的問題是我將如何使用'熊貓'來做同樣的事情? – npinto 2012-08-03 16:59:06
Numpy在C速度下這麼做,所以你可能無法通過編織加速它。 – reptilicus 2012-08-03 18:45:24