美文网首页
【R语言数据分析三:回归分析】(5.30更新)

【R语言数据分析三:回归分析】(5.30更新)

作者: lkj666 | 来源:发表于2021-05-03 23:18 被阅读0次

    2021.4.30
    持续更新中。。。

    参考:《R数据可视化手册》、学术数据分析及可视化


        与回归拟合不同,回归分析主要侧重于数据的分析,模型的筛选以及数据的预测。同时回归分析会两个及两个以上的自变量,而回归拟合一般只有一个自变量。

    1. 简单线性回归(单元)

        单元线性回归与线性拟合基本一致。

    library(MASS)
    data(whiteside)
    head(whiteside)
    #取子集
    df <- subset(whiteside, Insul == 'Before')
    plot(df$Temp, df$Gas)
    #构建模型
    linearM <- lm(Gas ~ Temp, data = df)
    summary(linearM)
    #调用模型获取预测的数值
    plot(predict(linearM) ~ df$Gas, xlab = 'Actual Gas', ylab = 'Predict Gas')
    #绘图
    plot(df$Temp, df$Gas)
    abline(linearM, col = 'red')
    



    2. 多元线性回归

        进行模型的筛选

    2.1 经验判断+验证多元线性回归模型

    data(swiss)
    head(swiss)
    #Fertility变量与其他变量均进行回归分析
    mlinearM <- lm(Fertility ~., data = swiss)
    summary(mlinearM)
    
    #根据summary结果及经验,第三列“Examination”结果不显著,将其剔除后重新构建模型
    mlinearMnew <- lm(Fertility ~., data = swiss[,-3])
    summary(mlinearMnew)
    
    #利用AIC或者显著性来验证剔除变量的建模更好
    ##比较模型,AIC值越小越好
    AIC(mlinearM, mlinearMnew)
    ##两个模型进行方差分析,看是否有显著性
    anova(mlinearM, mlinearMnew)
    

    2.2 直接通过对全模型进行AIC值的大小筛选进行建模

    library(MASS)
    stepAIC(mlinearM, direction = "both")
    

    相关文章

      网友评论

          本文标题:【R语言数据分析三:回归分析】(5.30更新)

          本文链接:https://www.haomeiwen.com/subject/glfnrltx.html