max((value, key) for key, value in stats.items())[1]
Поскольку ваше предсказание - это сырые вероятности, вам нужно, чтобы они были классом. Следующая >=0.5
условная проверка заключается в преобразовании их в TRUE
или FALSE
. Если вы хотите, чтобы это было 1 или 0 (если ваша переменная class
является двоичным фактором 1
или 0
), вы можете просто подмножество для строк, где ваше предсказание и истинные метки классов не согласуются с друг друга.
`validation[as.numeric(validation$class) != as.numeric(predict_train >= 0.5), ]`
Поскольку вы не отправляли данные, я должен сделать некоторые предположения о структуре или формате ваших данных. Вы можете адаптировать код, чтобы получить строки, где есть неверное предсказание (если они не являются числовыми 0 или 1, комментировать и не дают мне знать или не публикуют образец).