用C语言实现最小二乘法算法
本文博客链接:http://blog.youkuaiyun.com/jdh99,作者:jdh,转载请注明.
环境:
主机:WIN8
开发环境:MINGW
说明:
参考维基百科最小二乘法资料:
测试文中战列舰例子:用战列舰的长度预测宽度
简单线性模型 y = b0 + b1t 的例子[编辑]
随机选定10艘战舰,并分析它们的长度与宽度,寻找它们长度与宽度之间的关系。由下面的描点图可以直观地看出,一艘战舰的长度(t)与宽度(y)基本呈线性关系。散点图如下:
以下图表列出了各战舰的数据,随后步骤是采用最小二乘法确定两变量间的线性关系。
编号 | 长度 (m) | 宽度 (m) | ti - t | yi - y | |||
---|---|---|---|---|---|---|---|
i | ti | yi | ti* | yi* | ti*yi* | ti*ti* | yi*yi* |
1 | 208 | 21.6 | 40.2 | 3.19 | 128.238 | 1616.04 | 10.1761 |
2 | 152 | 15.5 | -15.8 | -2.91 | 45.978 | 249.64 | 8.4681 |
3 | 113 | 10.4 | -54.8 | -8.01 | 438.948 | 3003.04 | <