R中多元回归的最优预测值

R中多元回归的最优预测值,r,regression,statistics,R,Regression,Statistics,假设我有1个响应变量Y和2个预测器X1和X2,如下所示 Y X1 X2 2.3 1.1 1.2 2.5 1.24 1.17 ...... 假设我有一个坚定的信念,下面的模型工作得很好 fit <- lm(Y ~ poly(X1,2) + X2) fit归功于@sashkello 基本上,我必须从lm对象中提取系数,并与相应的项相乘,以形成公式 我认为这不是很有效。如果这是具有数百个预测因子的回归呢 所以这里有一个经验方法来做到这一点: # create some r

假设我有1个响应变量Y和2个预测器X1和X2,如下所示

Y    X1   X2
2.3  1.1  1.2
2.5  1.24 1.17
......
假设我有一个坚定的信念,下面的模型工作得很好

 fit <- lm(Y ~ poly(X1,2) + X2) 
fit归功于@sashkello

基本上,我必须从lm对象中提取系数,并与相应的项相乘,以形成公式


我认为这不是很有效。如果这是具有数百个预测因子的回归呢

所以这里有一个经验方法来做到这一点:

# create some random data...
set.seed(1)
X1 <- 1:100
X2 <- sin(2*pi/100*(1:100))
df <- data.frame(Y=3 + 5*X1 -0.2 * X1^2 + 100*X2 + rnorm(100,0,5),X1,X2)
fit <- lm(Y ~ poly(X1,2,raw=T) + X2, data=df)
# X1 and X2 unconstrained
df$pred <- predict(fit)
result  <- with(df,df[pred==max(pred),])
result
#           Y X1        X2     pred
# 19 122.8838 19 0.9297765 119.2087

# max(Y|X2=0)
newdf       <- data.frame(Y=df$Y, X1=df$X1, X2=0)
newdf$pred2 <- predict(fit,newdata=newdf)
result2     <- with(newdf,newdf[pred2==max(pred2),])
result2
#           Y X1 X2    pred2
#12 104.6039 12  0 35.09141
#创建一些随机数据。。。
种子(1)

X1我看不出它与安装有什么关系。找到拟合后,您只需要研究它的属性。1.您有一个fit函数,现在希望找到它的最大值。2.对于给定的X2,最大化拟合(X1,X2)
。我是R的新手。object fit是否提供了显式函数公式?如何最大化这两种情况?ThanksIt返回包含变量系数的
lm
对象,请参见这里的一些示例@sashkello。是的,我知道我可以使用摘要来获取lm内容,现在的问题是如何获得最佳设置?我有统计学硕士学位,所以我理解你的链接所说的。所以我必须从拟合中显式提取系数,然后写出公式?Thankscoef(lmfit)会给你一个系数向量,你可以用它乘以(1,x1,x2)得到你函数的值。这样你就可以创建一个你想要优化的函数。当我们不知道它的相对顺序时,任何简单的方法都可以提取回归对象“fit”中变量的系数。e、 g,“x^2”的系数在不知道其位置的情况下,在上面的示例中,您可以使用:
系数(拟合)[“I(x1^2)”]
我发现我无法使用您建议的方法提取截距系数,其他术语系数也可以。系数(拟合)[“截距”]=>NAUse:
系数(拟合)[“(截距)”]
用于截距。