Я обучил биномиальную модель, используя glm(Xtrain, ytrain, formula='cbind(Response, n - Response) ~ features', family='binomial')
, где ytrain - матрица отклика со столбцами счетчиков (да), counts (no).Вычислить кривую AUC для ответов в форме cbind (Count_1, Count_0)
Тестируемые ответы, которые я провел, находятся в той же форме матрицы ответа. Однако функция pred() возвращает вероятности - по одному для каждой строки данных обучения. Теперь я хочу использовать ROCR или AUC пакет для генерации кривых AUC, но мои предсказания и наблюдения находятся в разных форматах. Кто-нибудь знает как это сделать?
ОК. Добавление примера. Простите, что это бессмысленный/ранний недостаток/маленький, я только хочу проиллюстрировать свое дело.
plants <- c('Cactus', 'Tree', 'Cactus', 'Tree', 'Flower', 'Tree', 'Tree')
sun <- c('Full', 'Half', 'Half', 'Full', 'Full', 'Half', 'Full')
water <- c('N', 'Y', 'Y', 'N', 'Y', 'N', 'N')
died <- c(10, 10, 8, 2, 15, 20, 12)
didntdie <- c(2, 10, 8, 20, 10, 10, 10)
df <- data.frame(died, didntdie, plants, sun, water)
dftrain <- head(df, 5)
dftest <- tail(df, 2)
model <- glm("cbind(died, didntdie) ~ plants + sun + water", data=dftrain, family="binomial")
На данный момент, predict(model, dftest)
возвращает лог-форы (давая вероятность смерти) для последних двух наборов функций в моем dataframe. Теперь я хочу вычислить кривую AUC. Мои наблюдения находятся в dftest[c('died','didntdie')]
. Мои прогнозы - это, по существу, вероятности. AUC, ROCR и т. Д. Ожидают, что предсказания и наблюдения станут списком ответов bernoulli. Я не могу найти документацию о том, как использовать эту матрицу ответов. Любая помощь оценивается.
Вы должны предоставить [воспроизводимый пример] (http://stackoverflow.com/questions/5963269/how-to-make-a-great-r-reproducible-example), чтобы облегчить вам помощь. Что такое 'Xtrain'? Функция 'glm()' по умолчанию не имеет параметра 'eqtn ='. С чем вы сравниваете вероятности? Как именно вы хотите рассчитать ROC с этими данными? – MrFlick