2012-11-19 5 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

관련 문제