[英]Input in a lm (linear regression) function in R
I am doing a lm in R using vectors我正在使用向量在 R 中做一个 lm
Y<-c(1,0,1,2,5,1,4,6,2,3,5,4,6,8,4,5,7,9,7,6)
X<-c(60,63,65,70,70,70,80,80,80,80,85,89,90,90,90,90,94,100,100,100)
rg<-lm(Y ~ X)
summary(rg)
X1<-c(61,64,69,73,76,77,82,84,87,90,95,99,100,101,102,103,104,107,110,120)
When I use X1 as input for predict当我使用 X1 作为预测的输入时
Y1 <- predict(rg,X1 )
I have an error:我有一个错误:
"Error in eval(predvars, data, env) : numeric 'envir' arg not of length one" “eval(predvars, data, env) 中的错误:数字 'envir' arg 不是长度为 1”
This error doesn't occur if I use a data.frame object as input...I dob't understand why I need a data.frame and a vector doesn't work如果我使用 data.frame 对象作为输入,则不会发生此错误...我不明白为什么我需要 data.frame 而向量不起作用
am I doing something wrong??难道我做错了什么??
Thanks in advance提前致谢
I agree with Gregor.我同意格雷戈尔。 X1, the "newdata" should be a data.frame.
X1,“newdata”应该是一个data.frame。
Y1 <- predict(rg, as.data.frame(X1)) Y1 <- 预测(rg,as.data.frame(X1))
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.