矩阵列中的最小元素

Sag*_*age 1 python numpy matrix minimum

我需要找到列中具有最大列总和的所有元素的最小值.我做了以下事情:

创建随机矩阵

from numpy import *
a = random.rand(5,4)
Run Code Online (Sandbox Code Playgroud)

然后计算每列的总和并找到最大元素的索引

c = a.sum(axis=0)
d = argmax(c)
Run Code Online (Sandbox Code Playgroud)

然后我尝试在这一列中找到最小数字,但我的语法非常糟糕,我知道如何在当前索引的行中找到最小元素.

e = min(a[d])
Run Code Online (Sandbox Code Playgroud)

但是如何更改列?

Ric*_*ard 5

您可以按如下方式提取列的最小值(使用您指示的变量):

e=a[:,d].min()
Run Code Online (Sandbox Code Playgroud)

注意使用

a=min(a[:,d])
Run Code Online (Sandbox Code Playgroud)

会让你脱离Numpy,放慢速度(感谢你指出@SaulloCastro).