给定一个点列表,我需要对它们进行简单的线性回归。这部分非常简单,代码示例可以在很多地方找到。
我的问题是确定回归因子(测量点适合在线的程度)。如何使用 Lua 以编程方式确定这样的因素?
给定一个点列表,我需要对它们进行简单的线性回归。这部分非常简单,代码示例可以在很多地方找到。
我的问题是确定回归因子(测量点适合在线的程度)。如何使用 Lua 以编程方式确定这样的因素?
e$ lua
Lua 5.1.4 Copyright (C) 1994-2008 Lua.org, PUC-Rio
> function calculate_MSE (points, slope, offset)
>> local SE = 0
>> local num_pts = 0
>> for x,y in pairs(points) do
>> local p = slope * x + offset
>> local err = y - p
>> SE = SE + err * err
>> num_pts = num_pts + 1
>> end
>> return SE / num_pts
>> end
> return calculate_MSE({1, 2, 3}, 1, 0) 0> return calculate_MSE({1, 2, 3}, 1, 1)1> return calculate_MSE({1, 2, 3}, 2, 1)9.6666666666667>
0
> return calculate_MSE({1, 2, 3}, 1, 1)
1
> return calculate_MSE({1, 2, 3}, 2, 1)
9.6666666666667
>
不知道你的意思是什么:回归因子,但正如这篇维基百科文章所说:MSE
两种线性回归技术(例如方差分析)都将 MSE 估计为分析的一部分,并使用估计的 MSE 来确定所研究因素或预测变量的统计显着性。实验设计的目标是以这样一种方式构建实验,即当分析观察结果时,MSE 相对于至少一个估计的治疗效果的大小接近于零。
它看起来像您正在寻找的因素。
您可以在维基百科文章中获得有关 MSE 计算的详细信息。
希望我理解你的问题,它会有所帮助