首页 > 其他分享 >数模(1)—— 多重共线性的验证

数模(1)—— 多重共线性的验证

时间:2022-08-16 23:13:24浏览次数:48  
标签:共线性 多重 df diag 矩阵 数模 D1

  • 模型的解释变量之间存在线性关系
  1. 若中心化之后自变量的相关系数矩阵 R = X'X 接近于退化就存在多重共线性
  2. R有多少个特征根接近于零,设计矩阵X就有多少个多重共线性关系
  3. 此时,虽然最小二乘估计β仍为线性无偏估计,但是从均方误差来看这个估计不好

可以看出,当λ很小时β的MSE和Var都会变得很大,所以需要更换预测模型(上面公式的证明先挖坑以后填)

  • 三个判断准则
  1. 特征分析法:比较定性,就是看有多少个特征根接近于零就有多少多重共线性
  2. 条件数法:R矩阵的条件数定义为 k = λ1/λp 
    • k<100 ,不存在多重共线性
    • k>1000,有严重多重共线性
      import pandas as pd
      import numpy as np
      
      #打开文件替换并另存
      df = pd.read_excel("E:/数学建模/2017-C/题干/Data1.xls")
      df = df.replace('水',0)
      df.to_excel("E:/数学建模/2017-C/题干/Data1_1.xlsx",index = False) 
      %% 多重共线性检验
      % 求相关系数矩阵
      av = mean(x,1);
      avs = repmat(av,10,1);
      X_cen = x - avs;
      R_samp = X_cen'*X_cen
      % 求特征根
      [V,D1] = eig(R_samp);
      %M_m = sort(diag(D1),"ascend")
      k = max(diag(D1))/min(diag(D1))

       

  3. 方差膨胀因子VIF(需要计算复相关系数,我好懒)

      

 

 

标签:共线性,多重,df,diag,矩阵,数模,D1
From: https://www.cnblogs.com/-simon-/p/16591296.html

相关文章

  • Python调用函数模板
    内容概要函数阶段语法结构定义调用返回值参数名称空间闭包函数装饰器(难点)递归函数、二分法、匿名函数、三元表达式、列表生成式迭代器、生成器常见内置函数函数......
  • 完全背包转化为多重背包
    完全背包转化为多重背包前言在本篇文章当中主要给大家介绍如何将完全背包问题转化成多重背包问题,在前面的文章完全背包当中,我们仔细的介绍了完全背包的状态转移方程、根......