R语言实现线性拟合

Python011

R语言实现线性拟合,第1张

formula代表拟合的公式,如Y~X,则对因变量Y和自变量X作线性拟合拟合模型为 y=a+bx ,如Y 0+X或Y X+0则除对因变量Y和自变量X作线性拟合外,还规定改直线必过原点及拟合模型为 y=x 。

lm对象即lm函数返回的值,其属性包括

常用的有 coefficients , residuals 和 fitted.values ,分别表示拟合的得到的各系数的值、残差和预测值。

可以看出该拟合曲线为y=0.52805925 -0.02797779x

其他值的调用,包括p值,给定x预测的y值,拟合系数R方等需要通过summary函数调用

也可以直接通过 summary(line.model) 打印出大部分与回归直线相关的一些结果

esrequre <- function(x){ #求标准差平方估计值

sum <- 0

sum0 <- 0

for(i in 1:length(x)){

sum0 <- residu[i]^2

sum <- sum + sum0}

residusqure <- sum/(length(x)-2)

residusqure}

ester <- sqrt(esrequre(x))ester #标准差估计值(回归分析表给出的标准误差)

ZRE <- residu / esterZRE #标准化残差