zoukankan      html  css  js  c++  java
  • 调整的R方_如何选择回归模型

     python风控建模实战lendingClub(博主录制,catboost,lightgbm建模,2K超清分辨率)

    https://study.163.com/course/courseMain.htm?courseId=1005988013&share=2&shareId=400000000398149

     

     

    1.选择最简单模型

       如果不能满足:

               增加参数,增加R**2

                     判断是否overfittiing

                            调整R方,BIC,AIC(选择较小BIC或AIC值)

    R方不能比较参数不同模型,但调整后R方可以比较不同参数模型

    如果添加一个新的变量,但调整R方变小,这个变量就是多余的

    如果添加一个新的变量,但调整R方变大,这个变量就是有用的

    R^2很小得谨慎,说明你选的解释变量解释能力不足,有可能有其他重要变量被纳入到误差项。可尝试寻找其他相关变量进行多元回归

    这个问题在伍德里奇的书里有说明,可绝系数只是判断模型优劣的指标之一,而不是全部,特别是当使用微观数据,样本量比较大的时候,可绝系数可以很小,但这并不能表示模型就差。

    显著但是R值小,要考虑不同的专业背景。
    有的专业确实比较小,楼主的例子,我觉得这个大小就能接受了。
    态度与行为之间的影响因素非常多,态度能解释行为11-15%已经不小了。

    F检验是对整个模型而已的,看是不是自变量系数不全为0,而t检验则是分别针对某个自变量的,看每个自变量是否有显著预测效力。

                  调整R方VS样本量VS变量数量                                    

    样本量越大,调整的R方惩罚机制越小,调整的R方越大

    样本量越小,调整的R方惩罚机制越大,调整的R方越小

    变量越多,惩罚机制越严重,调整R方越小

    变量越少,惩罚机制越严小,调整R方越大

    n=13 样本
    p=2 变量数量
    adjR2=rSquared-(1-rSquared)*((p-1)/(n-p))=0.63-(1-0.63)

    rSquared=0.63109603807606962

    rSquared_adj=0.59755931426480324


    n=13 样本
    n越大,(n-p)大,(p-1)/(n-p)越小,(1-rSquared)*((p-1)/(n-p))越小,rSquared-(1-rSquared)*((p-1)/(n-p))越大,即样本量越大,调整R方越大,变量解释力度越大。

    p=2 变量数量
    参数多,p大,(P-1)越大,(n-p)越小
    ,(p-1)/(n-p)越大,
    rSquared-(1-rSquared)*((p-1)/(n-p)) 越小,即adjR2越小。所以变量越多,惩罚机制越严重,调整R方越小

    测试Python脚本

    导入excel数据

    import pandas as pd
    df=pd.read_excel("土壤沉淀物吸收能力采样数据-不存在共线性.xlsx") 
    array_values=df.values
    x1=[i[0] for i in array_values]
    x2=[i[1] for i in array_values]
    
    df = pd.DataFrame({'x':x1, 'y':x2})
    # Fit the model
    model = ols("y~x", df).fit()
    rSquared_adj=model.rsquared_adj
    rSquared=model.rsquared
    
    
    n=13 #样本
    p=2  #变量数量
    adjR2=rSquared-(1-rSquared)*((p-1)/(n-p))
    
    
    #最终adjR2和rSquared_adj是相等的
    

      

     n为样本个数,p为变量数

    python信用评分卡建模(附代码,博主录制)

     

     微信扫二维码,免费学习更多python资源

     

     

  • 相关阅读:
    「日常训练」More Cowbell(Codeforces Round #334 Div.2 B)
    「日常训练」Battle Over Cities
    「日常训练」湫湫系列故事——设计风景线(HDU-4514)
    「日常训练」Caterpillar(POJ-3310)
    python压缩解压文件
    python图像处理
    python删除文件或者目录
    python循环执行程序的装饰器
    python中logging模块的使用
    python中yield迭代器
  • 原文地址:https://www.cnblogs.com/webRobot/p/7149276.html
Copyright © 2011-2022 走看看