我正在寻找关于我正在为课堂工作的家庭作业的一些指导。我们给出了一个14K观测数据集,并要求我们建立一个预测模型。我将数据集子集化为训练和测试(4909个观察),这里我使用了插入包,它预测了最后一个变量“classe”。我拿出了接近零的变量并构建了模型,但是当我尝试做预测时,我只得到了97个预测。我查看了帮助文件,但仍然无法弄清楚我哪里出错了。任何提示将不胜感激。
以下是代码:
set.seed(1234)
pml.training <- read.csv("./data/pml-training.csv")
#
library(caret)
inTrain <- createDataPartition(y=pml.training$classe, p=0.75, list=FALSE)
training <- pml.training[inTrain,]
testing <- pml.training[-inTrain,]
# Pull out the Near Zero Value (NZV)
nzv <- nearZeroVar(training, saveMetrics=TRUE)
omit <- which(nzv$nzv==TRUE)
training <- training[,-omit]
testing <- testing[,-omit]
# Fit the model
modFit <- train(classe ~., method="rf", data=training)
modFit
print(modFit$finalModel)
plot(modFit)
# Try and predict on the testing model
pred <- predict(modFit, newdata=testing)
testing$predRight <- pred==testing$classe
print(table(pred, testing$classe))
谢谢,Pat C.
答案 0 :(得分:1)
你检查了吗
sum(complete.cases(subset(testing, select = -classe)))