Можно ли просмотреть записи, которые были неправильно классифицированы (в соответствии с матрицей замешательства в R) в виде списка? [Дубликат]

max((value, key) for key, value in stats.items())[1]

0
задан Tshabat 27 April 2018 в 13:10
поделиться

1 ответ

Поскольку ваше предсказание - это сырые вероятности, вам нужно, чтобы они были классом. Следующая >=0.5 условная проверка заключается в преобразовании их в TRUE или FALSE. Если вы хотите, чтобы это было 1 или 0 (если ваша переменная class является двоичным фактором 1 или 0), вы можете просто подмножество для строк, где ваше предсказание и истинные метки классов не согласуются с друг друга.

`validation[as.numeric(validation$class) != as.numeric(predict_train >= 0.5), ]`

Поскольку вы не отправляли данные, я должен сделать некоторые предположения о структуре или формате ваших данных. Вы можете адаптировать код, чтобы получить строки, где есть неверное предсказание (если они не являются числовыми 0 или 1, комментировать и не дают мне знать или не публикуют образец).

0
ответ дан onlyphantom 16 August 2018 в 05:18
поделиться
  • 1
    Спасибо за ответ, что-то вроде этого именно то, что я искал. Однако, 'type = "raw" уже возвращает классы. Так что теперь я собираюсь сделать преобразование существующих классов в числовые аргументы, чтобы сравнить их с истинными классами, как вы объяснили. Кроме того, я не уверен, могу ли я быть confortable, используя аргумент & gt; = 0,5 для создания классов, поскольку я не знаю, какой порог вероятности был выбран алгоритмом. – Tshabat 27 April 2018 в 13:37
  • 2
    Рад, что это было полезно! Да, если он возвращает класс, а не вероятность, нет необходимости делать преобразование. Тогда вам также не нужно беспокоиться о пороговой проблеме. Большинство типов времени = raw возвращают вероятности, хотя это интересно. Просто проверьте, когда предсказанный вектор не согласен с истинными метками (! =) – onlyphantom 27 April 2018 в 13:38
Другие вопросы по тегам:

Похожие вопросы: