2013-08-27 49 views
5

這是我在編寫樣本熵的Python代碼時遇到的問題。需要更快的Python代碼來計算樣本熵

map(max, abs(a[i]-a))很慢。

有沒有其他功能比map()更好?

哪裏a是ndarray看起來像np.array([ [1,2,3,4,5],[2,3,4,5,6],[3,4,5,3,2] ])

+1

什麼'這裏了'?這是Python 2.x還是3.x('map()'在兩者中都不相同)? – arshajii

+0

你有沒有試過'導入速度'?不過,嚴肅地說,「a」是什麼樣的,什麼是需要的輸出? – inspectorG4dget

+0

是'a' numpy.ndarray'嗎? (你可以檢查這個'type(a)')... –

回答

6

使用矢量最大

>>> map(max, abs(a[2]-a)) 
[3, 4, 0] 
>>> np.abs(a[2] - a).max(axis=1) 
array([3, 4, 0]) 
+0

非常感謝! –