Было несколько вопросов по этой проблеме, но я не смог найти ответ на свою проблему.После запуска алгоритма KNN
я создал файл "observed"
/ "predicted"
."observed"
- реальные события, тогда как "predicted"
- события, классифицированные алгоритмом.У меня есть несколько файлов, все с именем, следующим по шаблону: "accuracycollar4136*_4136*.0.*.csv"
.Вот небольшой пример:
> sample<-fread("accuracycollar41361_41366.0.8.csv")
> print(sample)
V1 observed predicted
1: 1 Head-up Grazing
2: 2 Head-up Head-up
3: 3 Head-up Head-up
4: 4 Head-up Head-up
5: 5 Head-up Head-up
---
236: 236 Unknown Head-up
237: 237 Unknown Grazing
238: 238 Vigilance Grazing
239: 239 Unknown Grazing
240: 240 Unknown Head-up
Я уже рассчитал различные критерии точности классификации.Однако вот что я хотел бы сделать дальше:
1) Создание for
-циклового чтения для каждого файла "accuracycollar4136*_4136*.0.*.csv"
.
2) Для каждого файла я бы хотелсоздать таблицу, в которой обобщены неправильные классификации.
3) В идеале я хотел бы получить таблицу с процентами / вероятностями, учитывающую долю случаев, когда событие было классифицировано как другое.В качестве примера, скажем, "Head-up"
классифицировали 80% раз как "Head-up
", 15% раз как "Grazing"
и 5% раз как "Unknown"
.Вот что я имел в виду:
class Head-up Vigilance Grazing Unknown etc..
Head-up % % % %
Vigilance % % % %
Grazing % % % %
Unknown % % % %
etc.. % % % %
Всего у меня 9 классов: "Head-up"
, "Grazing"
, "Browsing"
, "Vigilance"
, "Unknown"
, "Moving"
, "Grooming"
, "Fleeing"
, "Resting"
.
Теперь, это можно сделать с помощью caret
или любого другого пакета?Если нет, то есть ли относительно простой способ кодирования такого процесса?Может ли кто-нибудь хотя бы поставить меня на правильный путь?
Любая помощь приветствуется!