给定2组数据的c#线性回归
我有两组数据-一组是平均位置,另一组是分数,因此对于每个位置,我有一个项目的预测分数-给定2组数据的c#线性回归,c#,statistics,linear-regression,C#,Statistics,Linear Regression,我有两组数据-一组是平均位置,另一组是分数,因此对于每个位置,我有一个项目的预测分数- double[] positions = {0.1,0.2,0.3,0.45,0.46,...}; double[] scores = {1,1.2,1.5,2.2,3.4,...}; 我需要创建一个函数来预测平均位置的分数,因此给出一个位置为1.7的新项目。 我知道这个函数应该是y=a*x+b,但我该怎么做呢 任何帮助都将不胜感激 是的,你必须建立一个线性函数 y = a * x + b 为此,您必
double[] positions = {0.1,0.2,0.3,0.45,0.46,...};
double[] scores = {1,1.2,1.5,2.2,3.4,...};
我需要创建一个函数来预测平均位置的分数,因此给出一个位置为1.7的新项目。
我知道这个函数应该是y=a*x+b,但我该怎么做呢
任何帮助都将不胜感激 是的,你必须建立一个线性函数
y = a * x + b
为此,您必须计算总和(x
是预测值,y
-是相应的结果):
所以
谢谢你,德米特里!如果我想要对数回归,我只需要在方程中加上log?所以它的y=a*log(x)+b@Chen:如果您想将
y
拟合到y=a*log(x)+b
中,那么,是的,只需取对数(只需使用log(x)
而不是x
)。
sx - sum of x's
sxx - sum of x * x
sy - sum of y's
sxy - sum of x * y
a = (N * sxy - sx * sy) / (N * sxx - sx * sx);
b = (sy - a * sx) / N;