2012-11-19 58 views

回答

2

歡迎來到python和numpy。您可以通過首先檢查數組中的哪些值爲1,然後對每列進行計數並最終獲取argmax來獲得最多1的列。在代碼中,它看起來是這樣的:

>>> import numpy as np 
>>> (m, n) = (4, 5) 
>>> a = np.zeros((m, n)) 
>>> a[2, 3] = 1. 
>>> 
>>> a_eq_1 = a == 1 
>>> repetitions = a_eq_1.sum(axis=0) 
>>> np.argmax(repetitions) 
3 

或者更簡潔:

>>> np.argmax((a == 1).sum(axis=0)) 
3 
+0

驚人,理解,強大的語言確實:) –

+0

一個真正numpythonic答案! – ebarr

相關問題