【发布时间】:2017-04-04 04:18:37
【问题描述】:
我设法拼凑了以下代码:
private void CalcMSE(List<Point> data)
{
double sum = 0.0;
foreach (Point item in data)
{
double difference = item.m_x - item.m_y;
sum = sum + difference * difference;
}
double mse = sum / x; //<-- Don't know what x should be!
Console.WriteLine("The mean square error is {0}",mse) ;
}
输入是:
point.m_x = 3;
point.m_y = 1;
pointList.Add(point);
point.m_x = 4;
point.m_y = 4;
pointList.Add(point);
point.m_x = 5;
point.m_y = 6;
pointList.Add(point);
point.m_x = 6;
point.m_y = 6;
pointList.Add(point);
point.m_x = 8;
point.m_y = 10;
pointList.Add(point);
据知情人士称,MSE 应为 0.77 和 MSR 40.89
但我不知道 x 的“公式”是什么(参见代码注释)。
任何了解线性回归的人可以帮助我吗?
输出应该是这样的
【问题讨论】:
-
d.Count()呢? -
data.Count () 或 Lenght... 或在 for 循环中将一个 count 变量加一。 x 将等于 count。
-
你确定...? d.Count() 的值为 8
-
没有。 Vivek nuna 是对的,我很困惑,写错了清单。应该是 data.Count()。
-
不过,那个“d”列表似乎没用。
标签: c# math statistics linear-algebra