Excel中R中的求解函数

问题描述 投票:0回答:1

早上好,

所以我正在做一些多元线性回归,需要显示如何在Excel中做到这一点。

[基本上,我有三列-年龄,体重和身高作为我的x自变量,而腰围是我的y变量。

在R中进行设置,这样我就可以获得系数,因此可以将其插入公式中,并预测年龄,身高和体重但没有腰围的人的腰围:

X <- as.matrix(cbind(1, data$Age, data$Height, data$Weight))
y <- as.matrix(data$WaistCircumference)
beta_hat <- solve(t(X)%*%X)%*%t(X)%*%y
beta_hat
        [1]
[1] 100.5429
[2] 0.2136627
[3] 0.7744433
[4] -0.4450378

但是我也想展示如何在Excel中执行此操作。我认为公式应该是这样的(因为我相信R的solve函数以该形式给出矩阵X的逆矩阵):

{=(MMULT(MMULT(MINVERSE(MMULT(TRANSPOSE(X),X)),TRANSPOSE(X)),Y))}

其中X是与年龄,体重和身高有关的数组,Y是与腰围有关的数组。因此,使用工作表上的单元格看起来像:

{=MMULT(MMULT(MINVERSE(MMULT(TRANSPOSE(A2:C7681),A2:C7681)),TRANSPOSE(A2:C7681)),D2:D7681)}

但是那只给了我3个值,它们是不正确的。也许我的操作顺序有误?我曾尝试过MINVERSE,因为我认为这可能是我的问题,但这似乎也无法解决。任何帮助,将不胜感激:)

r excel matrix linear-regression matrix-multiplication
1个回答
0
投票

哦,我明白了!您只需要在侧面向下放置一行1,这样您就可以在Excel中获得n x 4的矩阵,那么上面的等式就可以了!对不起,发贴!应该再尝试一件事哈哈

© www.soinside.com 2019 - 2024. All rights reserved.