MathNet.Numerics在满足条件的矩阵中查找最小值的索引

时间:2020-06-19 09:30:15

标签: c# mathnet-numerics

我试图用Matrix<float>MathNet.Numerics中查找最小值的索引,但仅针对满足特定条件的值(在这种情况下为value >= 0)。 我可以找到这样的最小实际值之一:

var mat = Matrix<float>.Build.DenseOfArray(new float[,] {
    {2, 3, 1},
    {3, -1, 5},
    {1, 4, 3}
});

var min = mat.Enumerate().Where(x => x >= 0).Min();

但是我想找到两个1(而不是-1)的索引。因此结果应为[0,2]和[2,0]。

答案:

我找到了一种可能的方法,不确定这是否是最好/最快的方法:

var min = mat.Enumerate().Where(x => x >= 0).Min();
var allMin = mat.EnumerateIndexed().Where(x => x.Item3 == min).ToList();

0 个答案:

没有答案