使用gbm时出现两个错误 - 类型'关闭'不是子集表 - eval中的错误(predvars,data,env):#nuumeric' envir' arg不是长度一

时间:2015-02-04 18:53:22

标签: r

我一直收到上面列出的两个错误。第一次使用我的训练数据,第二次使用我的所有数据。任何帮助将非常感激。我已经解决了与此类似的所有问题,但我仍然不了解如何解决我的问题。以下是我的代码和数据的示例:

 D1= c(1.8, 1.06, 0.46, 34.65, 1.8, 4.16, 2.55, 5.95, 13.63,3.72,1.38,14.94,17.08,3.39)
 D2 = c(1,1,2,6,1,3,1,6,6,2,1,3,1,5,3)
 D3= c(13,9, 211, 336, 2, 293.95, 211.95, 29, 0, 146, 0, 139.95, 12.04)
 D4 = c(m,m,m,m,m,m,m,m,m,m,m,f,m,m,f)
 D5 = c(0,0,0,1,0,1,0,1,1,0,0,1,0,0,0,1,1)

这些只是我数据集的前15个值。

data = c(D1,D2, D3, D4, D5)
library('caTools')
set.seed(165)
splir = sample.split(data$HighUtPt, SplitRatio = 0.65)
train = subset(data, splir == TRUE)
test = subset(data, splir == FALSE)
require(gbm)
gbm_mod <-gbm(D5~ D1+D2+D3+D4, distribution = gaussian, data = train, shrinkage = 0.005, n.trees = 1000, bag.fraction = 0.5, cv.fold=50, interaction.depth=3) 

Error in eval(predvars, data, env) :  #numeric 'envir' arg not of length one

当我将data参数更改为data = data时,我得到:     &#39; d $ name错误:类型为&#39;关闭&#39;不是子集表格&#39;

当我使用主数据集时。

0 个答案:

没有答案