在Math.Net MultipleRegression中使用Matrix和Vector类型

问题描述 投票:2回答:1

我已经声明了MathNet矩阵和Vector类型,如下所示......

Matrix<double> X = Matrix<double>.Build.Dense(sampleSize,2);
Vector<double> yObserved = Vector<double>.Build.Dense(sampleSize);

但是当我打电话给...

Vector<double> p = MultipleRegression.NormalEquations(X, yObserved, true);

Visual Studio提供错误

错误CS0411无法从用法推断出方法'MultipleRegression.NormalEquations(T [] [],T [],bool)'的类型参数。尝试显式指定类型参数。

那么如果不是这样的话,我怎么能用Matrix和Vector参数调用Multiple Regression类呢?为什么Visual Studio发现我的类型编码含糊不清?

我让我的代码与矩阵的锯齿状数组一起工作得很好;现在我想让它与Matrix / Vector类型一起运行。

c# matrix vector linear-regression mathdotnet
1个回答
1
投票

MultipleRegression.NormalEquations()的重载只有MatrixVector参数集组合的2个参数。

添加布尔参数会让人感到困惑,并且认为你正在尝试提供T[][], T[], bool而不是Matrix, Vector的参数。

我不知道拦截意味着什么,但如果没有它,你将不得不研究它的作用。将参数转换为T[][]T[],或者在没有布尔值的情况下调用它(见下文)。

var p = MultipleRegression.NormalEquations(X, yObserved);

要么

var p = MultipleRegression.NormalEquations<double>(X, yObserved);
最新问题
© www.soinside.com 2019 - 2024. All rights reserved.