Hello all, Trying to get this piece of code to work on my data set. It is from http://www.itc.nl/personal/rossiter.
logit.roc <- function(model, steps=100) { field.name <- attr(attr(terms(formula(model)), "factors"), "dimnames")[[1]][1] eval(parse(text=paste("tmp <- ", ifelse(class(model$data) == "data.frame", "model$data$", ""), field.name, sep=""))) r <- data.frame(pts = seq(0, 1-(1/steps), by=1/steps), sens = 0, spec=0); for (i in 0:steps) { thresh <- i/steps; r$sens[i] <- sum((fitted(model) >= thresh) & tmp)/sum(tmp); r$spec[i] <- sum((fitted(model) < thresh) & !tmp)/sum(!tmp) } return(r)} where model is the output of a glm. The problem is the "sum((fitted(model) >= thresh) & tmp)" bit. The lengths of fitted(model) and tmp are not equal because some of the cases were deleted from the model due to missing data! fitted(model) is a set of named numbers while tmp is a set of integers. My question is: - How do I determine which cases were deleted from the model and then delete the associated cases from tmp? I hope this makes sense and would really appreciate any help that people may have. Thanks, Tim -- View this message in context: http://r.789695.n4.nabble.com/Missing-data-problem-and-ROC-curves-tp4670661.html Sent from the R help mailing list archive at Nabble.com. ______________________________________________ R-help@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide http://www.R-project.org/posting-guide.html and provide commented, minimal, self-contained, reproducible code.