检查r中列中的值是什么?

时间:2014-05-12 12:57:59

标签: r

我创建了一个在{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}以外的其他值。怎么检查?否则,是否还有其他错误原因?

2 个答案:

答案 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

以及您要检查的任何其他约束。