我创建了一个在{0,1}中具有基本事实的特征集,即伯努利。但是,当我尝试以下代码来训练模型时:
gbm(data$GT ~ .
, data = data
, distribution = "bernoulli"
, n.trees=100
, interaction.depth = 8
, n.minobsinnode = 20
, shrinkage = 0.1
, bag.fraction = 0.5
, train.fraction = 0.8
, verbose = T)
我收到以下错误:
Error in gbm.fit(x, y, offset = offset, distribution = distribution, w = w, :
Bernoulli requires the response to be in {0,1}
我很确定答案在{0,1},但我仍然想检查是否存在某些缺失值或{0,1}以外的其他值。怎么检查?否则,是否还有其他错误原因?
答案 0 :(得分:1)
也许最具信息性的方式是table(x, useNA = "always")
答案 1 :(得分:0)
如果您想查看哪个特定值是问题,您可以执行以下操作:
data$GT[which(data$GT>1)] # gives you the values
which(data$GT>1) # gives you he indexes
以及您要检查的任何其他约束。