Math.NET数值-如何表示缺失或无效值?

时间:2018-08-18 17:32:02

标签: mathdotnet

库是否有某种方法可以表示向量和矩阵中的缺失或无效值? Numpy masked arrays是一个很好的参考。

1 个答案:

答案 0 :(得分:0)

要表示丢失或无效的数据(或任何您不信任的数据),可以使用double.NaN。从这种意义上讲,您不能信任从该数据获得的任何值。这些不受信任的值也将是double.NaN

var d = double.NaN;
var A = DenseMatrix.OfArray(new double[,]
{
    { d, 0, 0 },
    { 0, 1, 0 },
    { 0, 0, 1 }
});
var B = DenseMatrix.OfArray(new double[,]
{
    { 1, 0, 0 },
    { 0, d, 0 },
    { 0, 0, 1 }
});

Console.WriteLine(A*B);

礼物:

DenseMatrix 3x3-Double
NaN  NaN  NaN
  0  NaN    0
  0  NaN    1