重回帰分析(最小2乗法:等分散性checkあり)
回帰 :目的変数yについて説明変数xを使った式で表すこと
重回帰式:説明変数xが複数用いる式
誤差項が、均一分散かどうかを判定し、
均一分散の場合 :最小二乗法による重回帰分析を行う
均一分散出ない場合:一般化最小二乗法による重回帰分析を行う
データに対する推定された回帰式の当てはまりの良さ(度合い)
決定係数は、説明変数のかずが増えるほど1に近づくという性質を持ち、それを補正したもの
説明変数間の多重共線性を検出するための指標の一つ。
多重共線性:回帰分析において、説明変数に強い線形関係が存在する状態を指します。
モデルの当てはまり度を表す統計量。
値が小さいほど当てはまりがいいとされますが、相対的な評価として用いられるため、
「○以下であることが望ましい」というような基準はありません。
olsyi = [45, 38, 41, 34, 59, 47, 35, 43, 54, 52]
olsxij = [
[17.5, 30],
[17.0, 25],
[18.5, 20],
[16.0, 30],
[19.0, 45],
[19.5, 35],
[16.0, 25],
[18.0, 35],
[19.0, 35],
[19.5, 40],
]
regana = Num4RegAnaLib::OLSMultRegAnaLib.new
regana.line_reg_ana(olsyi, olsxij)
olsyi2 = [
283, 157, 192, 249, 259, 226, 352, 97, 111, 8, 235, 92,
371, 161, 148, 362, 244, 237, 282, 59, 171, 9, 240, 174,
256, 267, 312, 257, 318, 446, 143, 193,243,215, 544, 187, 153, 81, 113, 176,
113, 174, 270, 93, 210, 388, 92, 58,117, 49, 193, 303, 142, 48, 165, 132,
]
olsxij2 = [
[0,0,1,0*0],[0,0,2,0*0],[0,0,3,0*0],[0,0,4,0*0],[0,0,5,0*0],[0,0,6,0*0],[0,0,7,0*0],[0,0,8,0*0],[0,0,9,0*0],[0,0,10,0*0],[0,0,11,0*0],[0,0,12,0*0],
[0,1,1,0*1],[0,1,2,0*1],[0,1,3,0*1],[0,1,4,0*1],[0,1,5,0*1],[0,1,6,0*1],[0,1,7,0*1],[0,1,8,0*1],[0,1,9,0*1],[0,1,10,0*1],[0,1,11,0*1],[0,1,12,0*1],
[1,0,1,0*1],[1,0,2,0*1],[1,0,3,0*1],[1,0,4,0*1],[1,0,5,0*1],[1,0,6,0*1],[1,0,7,0*1],[1,0,8,0*1],[1,0,9,0*1],[1,0,10,0*1],[1,0,11,0*1],[1,0,12,0*1],[1,0,13,0*1],[1,0,14,0*1],[1,0,15,0*1],[1,0,16,0*1],
[1,1,1,1*1],[1,1,2,1*1],[1,1,3,1*1],[1,1,4,1*1],[1,1,5,1*1],[1,1,6,1*1],[1,1,7,1*1],[1,1,8,1*1],[1,1,9,1*1],[1,1,10,1*1],[1,1,11,1*1],[1,1,12,1*1],[1,1,13,1*1],[1,1,14,1*1],[1,1,15,1*1],[1,1,16,1*1],
]
regana = Num4RegAnaLib::OLSMultRegAnaLib.new
regana.line_reg_ana(olsyi2, olsxij2)
olsyi = [45, 38, 41, 34, 59, 47, 35, 43, 54, 52]
olsxij = [
[17.5, 30],
[17.0, 25],
[18.5, 20],
[16.0, 30],
[19.0, 45],
[19.5, 35],
[16.0, 25],
[18.0, 35],
[19.0, 35],
[19.5, 40],
]
regana = Num4RegAnaLib::OLSMultRegAnaLib.new
regana.getr2(olsyi, olsxij)
olsyi = [45, 38, 41, 34, 59, 47, 35, 43, 54, 52]
olsxij = [
[17.5, 30],
[17.0, 25],
[18.5, 20],
[16.0, 30],
[19.0, 45],
[19.5, 35],
[16.0, 25],
[18.0, 35],
[19.0, 35],
[19.5, 40],
]
regana = Num4RegAnaLib::OLSMultRegAnaLib.new
regana.getadjr2(olsyi, olsxij)
olsxij = [
[17.5, 30],
[17.0, 25],
[18.5, 20],
[16.0, 30],
[19.0, 45],
[19.5, 35],
[16.0, 25],
[18.0, 35],
[19.0, 35],
[19.5, 40],
]
regana = Num4RegAnaLib::OLSMultRegAnaLib.new
regana.getvif(olsxij)
olsyi = [45, 38, 41, 34, 59, 47, 35, 43, 54, 52]
olsxij = [
[17.5, 30],
[17.0, 25],
[18.5, 20],
[16.0, 30],
[19.0, 45],
[19.5, 35],
[16.0, 25],
[18.0, 35],
[19.0, 35],
[19.5, 40],
]
regana = Num4RegAnaLib::OLSMultRegAnaLib.new
regana.getaic(olsyi, olsxij)