On Jul 1, 2013, at 10:57 AM, tfj24 wrote: > 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? > ?glm model$na.action -- David. > 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. David Winsemius Alameda, CA, USA ______________________________________________ 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.