如何处理R中的错误“ eval(predvars,data,env)中的错误:数字'envir'arg长度不为1”?
当我们不将自变量的参数作为数据帧传递时,会发生此错误。预测函数将针对自变量提供的值来预测因变量的值,我们也可以使用用于创建模型的自变量的值。
示例
请看以下数据帧-
set.seed(1) x <-rnorm(20) y <-runif(20,5,10) df <-data.frame(x,y) df
输出结果
x y 1 -0.62645381 9.104731 2 0.18364332 8.235301 3 -0.83562861 8.914664 4 1.59528080 7.765182 5 0.32950777 7.648598 6 -0.82046838 8.946781 7 0.48742905 5.116656 8 0.73832471 7.386150 9 0.57578135 8.661569 10 -0.30538839 8.463658 11 1.51178117 7.388098 12 0.38984324 9.306047 13 -0.62124058 7.190486 14 -2.21469989 6.223986 15 1.12493092 5.353395 16 -0.04493361 5.497331 17 -0.01619026 6.581359 18 0.94383621 7.593171 19 0.82122120 8.310025 20 0.59390132 7.034151
创建线性模型-
M <-lm(y~x,data=df)
导致错误的预测公式-
predict(M,newdata=df$x,interval="confidence") Error in eval(predvars, data, env) : numeric 'envir' arg not of length one
不会导致错误的预测公式-
predict(M,newdata=data.frame(df$x),interval="confidence")
输出结果
fit lwr upr 1 7.642084 6.814446 8.469722 2 7.536960 6.927195 8.146725 3 7.669228 6.738695 8.599762 4 7.353775 6.214584 8.492966 5 7.518031 6.900897 8.135166 6 7.667261 6.744547 8.589975 7 7.497538 6.854767 8.140310 8 7.464980 6.749018 8.180943 9 7.486073 6.821666 8.150480 10 7.600420 6.902430 8.298410 11 7.364611 6.273305 8.455917 12 7.510202 6.885355 8.135048 13 7.641408 6.816180 8.466635 14 7.848187 6.091378 9.604995 15 7.414811 6.530792 8.298831 16 7.566622 6.935903 8.197340 17 7.562892 6.936919 8.188865 18 7.438312 6.639516 8.237107 19 7.454223 6.706932 8.201514 20 7.483722 6.814287 8.153156
如果我们要预测自变量的因变量,我们也可以简单地使用Model对象
示例
predict(M)
输出结果
1 2 3 4 5 6 7 8 7.642084 7.536960 7.669228 7.353775 7.518031 7.667261 7.497538 7.464980 9 10 11 12 13 14 15 16 7.486073 7.600420 7.364611 7.510202 7.641408 7.848187 7.414811 7.566622 17 18 19 20 7.562892 7.438312 7.454223 7.483722
示例
predict(M,interval="confidence")
输出结果
fit lwr upr 1 7.642084 6.814446 8.469722 2 7.536960 6.927195 8.146725 3 7.669228 6.738695 8.599762 4 7.353775 6.214584 8.492966 5 7.518031 6.900897 8.135166 6 7.667261 6.744547 8.589975 7 7.497538 6.854767 8.140310 8 7.464980 6.749018 8.180943 9 7.486073 6.821666 8.150480 10 7.600420 6.902430 8.298410 11 7.364611 6.273305 8.455917 12 7.510202 6.885355 8.135048 13 7.641408 6.816180 8.466635 14 7.848187 6.091378 9.604995 15 7.414811 6.530792 8.298831 16 7.566622 6.935903 8.197340 17 7.562892 6.936919 8.188865 18 7.438312 6.639516 8.237107 19 7.454223 6.706932 8.201514 20 7.483722 6.814287 8.153156
热门推荐
10 八一幼儿祝福语大全简短
11 公司乔迁食堂祝福语简短
12 婚礼结束聚餐祝福语简短
13 儿媳买车妈妈祝福语简短
14 毕业送礼老师祝福语简短
15 同事辞职正常祝福语简短
16 恭贺新婚文案祝福语简短
17 金店立秋祝福语简短英文
18 婆婆高寿祝福语大全简短