一、原始数据
说明:
Y---结果数据 Xi---变量 (共k个) n组已知实验数据
Y |
X1 |
X2 |
……… |
Xk |
Y1 |
X11 |
X21 |
……… |
Xk1 |
Y2 |
X12 |
X22 |
……… |
Xk2 |
… |
… |
… |
……… |
… |
Yn |
X1n |
X2n |
|
Xkn |
二、有一可知其线性回归方程模式
Y=bo+b1 X1+b2 X2+………+bk Xk (+u); u:正太 分布
则有:
Y1 = 1 X11 X21 … Xk1 b0 u1
Y2 = 1 X12 X22 … Xk2 b1 + u2
… = 1 … … … … … …
Yn = 1 X1n X2n … Xkn bk uk
令Y,X,B,U依次对应,经过整理后可得:
X’XB^=X’Y, 即B^=(X’X)-1X’Y。
三、相关代码:
//矩阵的转置 k+1(n)
public double[,] MatrixTranspose(double[,] tempArray)
{
double[,] tempArrayT = new double[tempArray.GetLength(1),tempArray.GetLength(0) ];
//MessageBox.Show(tempArray.Rank);
//MessageBox.Show(tempArray.GetLength(1));
for (int i=0;i<tempArray.GetLength(0);i++) //行数
{
for(int j=0;j<tempArray.GetLength(1);j++) //列数
{
tempArrayT[j, i] = tempArray[i, j];
}
}