1.数学公式
y=a0+a1x1+a2x2+......amxm+e
Xi(i=1,2,3....)代表不同的变量
2.R语言的例子
2.1例1瑞士数据集
swiss.lm=lm(Fertility~.,data=swiss)
summary(swiss.lm)
2.2虚拟变量(哑变量)
针对离散变量,可以将其拆分成几个变量。
1.加法模型
Weight=a+b*Height+c*isman+d*iswoman (只影响截距)
2.乘法模型
Weight=a+b*Height+c*isman*Height+d*iswoman*Height(只影响斜率)
3.混合模型
Weight=a+b*Height+c*isman+d*iswoman+e*isman*Height+f*iswoman*Height(截距和斜率同时影响)
3核心问题:选择哪些变量?
3.1如何选择变量
有三种筛选变量的方法:向前引入法:逐步增加变量,向后剔除法:逐步剔除变量,逐步筛选法:综合上 述两种方法。
衡量一个模型有没有变好的指标
1.Rss(残差平方和)和R ^2(相关系数平方)
选择法:遍历所有可能的组合,选择Rss(Residuals standard error)最小,R^2(Mutiple R-squared)最小的 组合。
2.赤池信息准则AIC(Akaike information criterion)和BIC(Bayesian information criterion)
AIC=n*ln(Rss/n)+2p
n为总变量个数,p为选出的变量个数,AIC越小越好。
3.2R语言的实现
(1)step()函数
sl=step(s,direction="forward"),
其中s是用lm建立的回归模型,方向也可以是“backward”和“both”。
(2)如果用step()函数后,显著性水平仍然不高。在R中还有add1()和drop1()函数可以用来作逐步回归。