R 岭回归伪数据
根据我的研究,你可以通过在正常OLS回归的末尾添加“虚假数据”来模拟岭回归 ^证实这一观点的许多地方的例子之一 然而,在R中,我无法复制结果R 岭回归伪数据,r,R,根据我的研究,你可以通过在正常OLS回归的末尾添加“虚假数据”来模拟岭回归 ^证实这一观点的许多地方的例子之一 然而,在R中,我无法复制结果 > test_0 12 34 24 64 746 24 23 42 7 8 3 4 45 675 3 4 34 43 56 674 3 4 54 34 23 34 435 56
> test_0
12 34 24 64 746 24 23 42 7 8 3 4 45 675 3 4 34 43 56 674 3 4 54 34 23 34 435 56 56 234 657 89 980 8 76 65 45564 67 76 789
> test_1
34 24 64 746 24 23 42 7 8 3 4 45 675 3 4 34 43 56 674 3 4 54 34 23 34 435 56 56 234 657 89 980 8 76 65 45564 67 76 789 6
> test_2
24 64 746 24 23 42 7 8 3 4 45 675 3 4 34 43 56 674 3 4 54 34 23 34 435 56 56 234 657 89 980 8 76 65 45564 67 76 789 6 5
我的三个变量。然后我添加了2个新行(用于独立变量的数量)。为了测试_0,我附加了两个零。为了测试_1,我附加了一个sqrt(.5)和0。为了测试_2,我附加了一个0和sqrt(.5)
然后我运行两个模型。长征与长征岭
>reg = lm(a~b+c)
>
>ridge = lm.ridge(test_0~test_1+test_2, lambda = .5)
>
> reg
>
>Call:
>lm(formula = a ~ b + c)
>
>Coefficients:
>(Intercept) b c
> 1305.42310 -0.02926 -0.02862
> ridge
>
> test_1 test_2
>1374.16801379 -0.03059968 -0.02996396
系数不同,但应相同。为什么会这样?
任何帮助都将不胜感激 我的beta没有使用正确的岭回归方法的原因是岭回归在求解beta之前也会集中(标准化)y向量和X矩阵中的数据。
如果你集中数据,然后对“假”数据进行OLS,你会得到正确的答案。你不应该对岭回归使用
a
、b
、和c
,因为它们都有附加的数字吗?据我所知,没有。岭回归函数还有一个附加的惩罚因子lambda*Beta\u向量。苏丹生命线行动缺乏这一因素。为了说明这一点,您将行添加到OLS中,OLS应该等于原始“未伪造”数据的岭回归结果。这不是纠正您对统计方法误解的正确论坛。试着在CrossValidated.com上提问
>reg = lm(a~b+c)
>
>ridge = lm.ridge(test_0~test_1+test_2, lambda = .5)
>
> reg
>
>Call:
>lm(formula = a ~ b + c)
>
>Coefficients:
>(Intercept) b c
> 1305.42310 -0.02926 -0.02862
> ridge
>
> test_1 test_2
>1374.16801379 -0.03059968 -0.02996396