矩阵列的最小元素
Posted
技术标签:
【中文标题】矩阵列的最小元素【英文标题】:Minimum element from the matrix column 【发布时间】:2015-05-05 23:54:18 【问题描述】:我需要从具有最大列总和的列中找到所有元素的最小值。 我做以下事情:
创建随机矩阵
from numpy import *
a = random.rand(5,4)
然后计算每列的总和并找到最大元素的索引
c = a.sum(axis=0)
d = argmax(c)
然后我尝试在该列中找到最小的数字,但是我的语法很糟糕,我知道如何在当前索引的行中找到最小的元素。
e = min(a[d])
但是如何为列更改它?
【问题讨论】:
【参考方案1】:您可以按如下方式提取列的最小值(使用您指定的变量):
e=a[:,d].min()
注意使用
a=min(a[:,d])
会让你摆脱 Numpy,减慢速度(感谢@SaulloCastro 指出这一点)。
【讨论】:
您应该使用a[:, d].min()
来保证NumPy 方法将被调用,否则您将像在Python 可迭代对象中那样迭代数组(而不是在C 级别)以上是关于矩阵列的最小元素的主要内容,如果未能解决你的问题,请参考以下文章
b_lc_给定行和列的和求可行矩阵(找行和列的和的最小值填)
用lingo导入excel数据生成矩阵并对元素进行累加怎么敲代码