我有一个包含17列和500000行的数据集。我想预测其中一列的250000。所以我的训练数据集有250000行。在分成测试和训练集之后,我在集合上运行了“gbm”和“lm”模型。 (
modellm <- train(DARAMAD ~ ., data = trainig, method = "lm", na.action = na.pass)
modelgbm <- train(DARAMAD ~., data = trainig, method = "gbm", na.action = na.omit)
问题在于,当我想要预测时,我只会收到9976个元素的向量,而我会尝试预测250000个元素。
z <- predict(modelgbm, newdata = forPredict)
z <- predict(modellm, newdata = forPredict)
forPredict和训练数据集的维度均为250000。
答案 0 :(得分:0)
你的代码对我不起作用,但我按照以下方式计算了NAs:
naCountFunc <- function(x) sum(is.na(x))
naCount <- sapply(trainData, naCountFunc)
as.data.frame(table(naCount))
naCount Freq
1 0 12
2 1 1
3 100 2
4 187722 1
5 188664 1
这两个具有高NA的列不是我想要预测的那一列。 “daramad”专栏没有任何NA。