在 Python 的标准max
函数中(我也可以传入一个关键参数):
s = numpy.array(['one','two','three'])
max(s) # 'two' (lexicographically last)
max(s, key=len) # 'three' (longest string)
使用更大的(多维)数组,我不能再使用max
,所以我尝试使用numpy.amax
,但是我似乎无法amax
与字符串一起使用......
t = np.array([['one','two','three'],['four','five','six']])
t.dtype # dtype('|S5')
numpy.amax(t, axis=0) #Error! Hoping for: [`two`, `six`]
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/lib/python2.7/dist-packages/numpy/core/fromnumeric.py", line 1833, in amax
return amax(axis, out)
TypeError: cannot perform reduce with flexible type
是否可以使用amax
(我使用不正确!),还是有其他numpy
工具可以做到这一点?