У меня есть набор данных о лесных полигонах, и я пытаюсь сравнить классификации полей с классификациями карт с использованием матрицы путаницы. Единственный пакет, который я мог найти, который будет работать на более крупном наборе данных (более 2 вариантов классификации) и мог бы сравнивать значения текста в пакете «mda». Я запустил пакет «mda» и использовал код для «путаницы».Невозможно интерпретировать результаты из матрицы замешательства из пакета «mda» в R
Предоставленный пример с пакет ...
data(iris)
irisfit <- fda(Species ~ ., data = iris)
confusion(predict(irisfit, iris), iris$Species)
Setosa Versicolor Virginica
Setosa 50 0 0
Versicolor 0 48 1
Virginica 0 2 49
attr(, "error"):
[1] 0.02
Я бегу мое, как просто
data(Habitat)
confusion(Habitat$Field,Habitat$Map)
Который дает мне выход спутанность матрицы подобное (но не так, как в чистом виде), как приведенный пример кода. В этот момент я теряюсь. У меня есть 2 результата с моим.
attr(,"error")
[1] 0.3448276
attr(,"mismatch")
[1] 0.889313
Ошибка Я понимаю, несоответствие, однако, я не могу найти какой-либо намек на сайте или в литературе, которая поставляется вместе с пакетом. Я сомневаюсь, что такое высокое значение «несоответствия» хорошее, но я понятия не имею, как его интерпретировать. Я полагаю, что это, вероятно, довольно конкретный вопрос, на который, возможно, может ответить только кто-то, кто работал с этим пакетом раньше, но если кто-нибудь знает или подскажет, как узнать, я был бы очень признателен.
Спасибо, Айден
EDIT - включить клипы моего набора данных, показывая, что может быть несоответствие (подозреваю, что это означает, что последовательные Ошибочная). Показывает клипы самой последовательной ошибочной классификации.
structure(list(Field = structure(c(7L, 7L, 7L, 7L, 7L, 7L, 7L,
7L, 7L, 7L, 7L, 7L, 7L, 8L), .Label = c("Black Spruce ", "Clearcut ",
"Deciduous ", "Jack Pine ", "Lowland Conifer ", "Marshwillow ",
"Mixed Conifer ", "Open Muskeg ", "Rock ", "Treed Muskeg ", "Upland Conifer ",
"Young Conifer", "Young Deciduous"), class = "factor"), Map = structure(c(7L,
7L, 7L, 11L, 11L, 11L, 11L, 11L, 11L, 12L, 13L, 13L, 13L, 6L), .Label = c("Black Spruce", "Clearcut", "Deciduous", "Jack Pine", "Lowland Conifer", "Marshwillow",
"Mixed Conifer", "Open Muskeg", "Rock", "Treed Muskeg", "Upland Conifer",
"Young Conifer", "Young Deciduous"), class = "factor")), .Names = c("Field",
"Map"), row.names = 143:156, class = "data.frame")
Эй, большое спасибо за ответ. Похоже, это может быть из данных примера, но когда я запускаю его через свои собственные данные, я придумываю те же примеры и количество уникальных возможностей.Я повторно запускал данные примера, добавляя все больше и больше некорректно классифицированных видов. Я думаю, что это может быть количество последовательных ошибочных классификаций. Когда я сделал 45 setosa = monsterosa, ошибка была все еще небольшой, но несоответствие было огромным. Когда я распространил ошибочные ошибки вокруг ошибки, и несоответствие снизилось. Однако, когда я попытался сделать это на своих собственных данных (свертывающие классы – HeidelbergSlide
, значение несоответствия и ошибка оставались постоянными во всех слияниях (в итоге рухнули 5 классов в 1, переработав матрицу при каждом крахе). Поэтому я не знаю, но это очень для справки. – HeidelbergSlide
Можете ли вы использовать dput (Habitat [somerows, c («Поле», «Карта»)]), где somerows определяется таким образом, который реплицирует несоответствие и вставляет результат в ваш вопрос? Это значительно упростит чтобы дать лучший ответ. – MattBagg