【发布时间】:2023-04-04 00:34:02
【问题描述】:
我的程序中有一个函数可以进行拆分和浮动。然后将矩阵传递给主程序。现在我有一个函数可以找到最小值的行和列。在 Martijn Pieters 的帮助下,我得到了最小值,但只有一对。下面给出了输出示例。
E 是从 main 传递给这个函数的方阵。
值存储在 txt 文件中并在单独的函数中读取,然后将矩阵传递给 main。从他们的矩阵传递给下面的函数。
0 2 8 9
2 4 9 9
4 7 4 8
3 4 8 9
代码:
def closest_pair(e):
'''for row in range(len(e)):
for col in range(0,len(row),1):
minrow = min(e[row])
mincol = min(e[col])
return ([minrow], [mincol])'''
result = min((min((v, c) for c, v in enumerate(row)), r) for r, row in enumerate(e))
return result[1], result[0][1]
这帮助我找到了行和列的最小值,但输出是得到这对。同样对于第一个值为 0 的值,0 将不计入,因此如果 (0, 0) 的值为 0,则不算作最小值。话虽如此,例如,如果第 1 行和第 1 列,值是 [2,2] 作为对,并且是唯一比输出 (1,1) 的最小对。
【问题讨论】:
-
帮帮我。鉴于以上数据,您期望得到什么答案?
-
@hughdbrown:预期的答案是最小值的行列号
-
最小配对值,例如,如果第 1 行和第 1 列的值为 2,2,而其余值的值较高,则 (2, 2) 将被视为最小配对值
标签:
python
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:在python中的行和列中查找最小对值? - Python技术站