Sorry, I made a mistake in my fix... Cleaned a little (and tested yet again), it becomes { terms.names <- if(is.null(terms)) attr(model$terms, "term.labels") else terms terms <- if (is.null(terms)) predict(model, type = "terms", se = se) else predict(model, type = "terms", se = se, terms = terms) n.tms <- ncol(tms <- as.matrix(if (se) terms$fit else terms)) if(n.tms==1) colnames(tms) <- terms.names if(se) terms$se.fit <- as.matrix(terms$se.fit) .... -- Kasper Daniel Hansen, Research Assistent Department of Biostatistics, University of Copenhagen