如何处理R中神经网络预测结果中的NA

how to deal with NA in neural network prediction result in R

我正在泰坦尼克号数据集上应用神经网络(包含 PClass、性别、年龄、Sibsp、Parch、Fare、Embarked)

library(caret)
model_nnet <- train(as.factor(Survived) ~.,  
              method="nnet",
              train_df, 
              linout=FALSE, 
              trace = FALSE,
              preProcess = c("center", "scale"))

nnet_predict <- predict(model_nnet, test_df)

虽然我预计 nnet_predict 与测试数据帧(418 条记录)的长度相同,但它实际上包含 NA 并且只有 331 个结果。关于如何处理它有什么建议吗?谢谢

寻找

summary(test_df)

您可以看到 AgeFare 列中存在缺失值,因此在 运行 predict() 函数之前您需要修复这些中的 NA两列。

一个选项可能是 -

  • Fare 列中用它的平均值填充 NA
  • Age 列中填写 NA 与它的平均值 wrt Pclass

if Pclass==1 then missing_age <- 37
if Pclass==2 then missing_age <- 29
else missing_age <- 24

希望对您有所帮助!