【问题标题】:R adding a row name (my index column) to the model results from predictR将行名称(我的索引列)添加到预测的模型结果中
【发布时间】:2021-06-22 20:14:28
【问题描述】:

我通过 glmulti 运行我的训练数据以获得最佳模型拟合,并且需要运行测试数据以获得预测结果。我还需要包含每条记录的唯一 ID,以便我可以匹配用于下游流程的结果。我可以得到结果,但不知道如何合并输入数据集中的字母数字 ID。

运行并打印预测

newnames <- c(
  'AADT',  
  'SPEEDLIM',
  'SpeedTrans')
new_all <- bind_rows(dat, test, absence_subset)

#Standardize variable ranges
new_all[,newnames] <- new_all[,newnames] %>% 
  mutate_if(is.numeric, scale)

for (i in 1:ncol(new_all)) {
  if (is.numeric(new_all[,i])) {
    new_all[,i] <- c(new_all[,i])
  }
}

newdata <- new_all %>%
  select(all_of(newnames)) %>%
  droplevels()
newdf <- data.frame(newdata)
pred <- predict(m.glob2, newdf, type="response", full=T, )

newdata$fit <- pred
newdata$prob <- exp(pred)/(1+exp(pred))
outfile <- paste0(getwd(),"/Results/Predict_", animal, "_", area, ".csv")
write.table(newdata, file = outfile, sep = ",", row.names = F,  
            col.names = T, append = F)

newnames 中的三个变量是模型中使用的变量。如何将“Event_ID”字段合并到结果表中?

【问题讨论】:

    标签: r indexing predict write.table


    【解决方案1】:

    这太简单了,抱歉打扰了。我认为这个项目正在导致倦怠。我只是在模型运行后将字段名称添加回文件中。在下面发布以防其他人正在寻找快速分析器。

    newdata$fit <- pred
    newdata$prob <- exp(pred)/(1+exp(pred))
    newdata$Event_ID <- new_all$Event_ID
    outfile <- paste0(getwd(),"/Results/Predict_", animal, "_", area, ".csv")
    write.table(newdata, file = outfile, sep = ",", row.names = T, col.names = NA, append = F)
    

    【讨论】:

      猜你喜欢
      • 2019-12-06
      • 2019-04-23
      • 1970-01-01
      • 2020-10-05
      • 1970-01-01
      • 1970-01-01
      • 2012-03-17
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多