gpt4 book ai didi

python - 忽略对角线的 Numpy 数组的最小值

转载 作者:太空狗 更新时间:2023-10-29 21:14:27 27 4
gpt4 key购买 nike

我必须找到忽略对角线元素的 numpy 数组的最大值。

np.amax() 提供了忽略特定轴的方法来找到它。如何在忽略所有对角线元素的情况下实现相同的效果?

最佳答案

你可以戴口罩

mask = np.ones(a.shape, dtype=bool)
np.fill_diagonal(mask, 0)
max_value = a[mask].max()

其中 a 是您要查找其最大值的矩阵。掩码选择非对角线元素,因此 a[mask] 将是所有非对角线元素的长向量。然后你就取最大值。

或者,如果你不介意修改原始数组

np.fill_diagonal(a, -np.inf)
max_value = a.max()

当然,您始终可以复制一份,然后在不修改原件的情况下执行上述操作。此外,这是假设 a 是某种浮点格式。

关于python - 忽略对角线的 Numpy 数组的最小值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29394377/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com