【问题标题】:Numpy - Count the rows in matrix for which column is the minimum?Numpy - 计算矩阵中哪一列的行数最少?
【发布时间】:2018-04-29 11:55:05
【问题描述】:

所以如果我有这样的矩阵:

[ 6 9 4 7]
[ 1 2 3 4]
[ 3 5 9 8] 
[ 5 7 2 4] 

我想知道第一列是最小值的多少倍。例如,这里的答案是2,其中第 2 行和第 3 行的第 1 列是最小值。我知道我们可以使用this 中的matrix.min(axis=1) 找到最小值,我认为我们可以使用numpy.sum 来计算行数……但我怎么知道最小值来自哪一列?我有一些简单的方法可以在 numpy 中实现这一点吗?

【问题讨论】:

  • 考虑以argmin开头。
  • @sascha 谢谢!这正是我需要的起点

标签: python numpy matrix


【解决方案1】:

如果它对其他人有帮助,由于argmin 的建议,提出了适用于第一列的这种方法:

np.count_nonzero(np.argmin(matrix,axis=1))

不确定此方法在大型矩阵或类似情况下的性能。当然,除了检查第一列的最小值之外,这对任何事情都不起作用

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-07-24
    • 2021-11-08
    • 1970-01-01
    • 1970-01-01
    • 2015-01-16
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多