我正在尝试解决来自kaggle的泰坦尼克数据集。 我几乎完成了关于列车数据集的所有工作 火车(12个变量891个障碍物) 测试(11个变量中的418个障碍物)
我使用了决策树(rpart方法)
混淆矩阵(pred_train,火车$幸存) 混淆矩阵和统计
#fake data with names similiar to question vars
pca_explained <- sort(abs(rnorm(12)), decreasing = TRUE)
col_names <- paste0("P", seq_along(pca_explained))
#plotly call with factor(x, levels=x)
plotly::plot_ly(type = "bar",
x = factor(col_names, levels=col_names),
y = pca_explained)
我使用 Reference
Prediction 0 1
0 549 0
1 0 342
Accuracy : 1
95% CI : (0.996, 1)
No Information Rate : 0.616
P-Value [Acc > NIR] : <0.0000000000000002
Kappa : 1
Mcnemar's Test P-Value : NA
Sensitivity : 1.000
Specificity : 1.000
Pos Pred Value : 1.000
Neg Pred Value : 1.000
Prevalence : 0.616
Detection Rate : 0.616
Detection Prevalence : 0.616
Balanced Accuracy : 1.000
'Positive' Class : 0
我
model.frame.default中的错误(条款,newdata,na.action = na.action, xlev = attr(object,:factor名称有新级别Abbott,Master。 E. ..
如何解决这个问题,因为列车和测试数据集(891和418)的观察结果不同,我已经从列车数据集中删除了标识符(passengerId)
答案 0 :(得分:0)
在训练之前,您需要rbind
测试并训练然后使用因子并提取“新”列车并测试所有因子水平