Tim.Keighley@csiro.au
2005-Jun-27 04:25 UTC
[Rd] Unused argument "na.action" to pairs.formula
Hi, I believe that the argument "na.action" is not used in the function pairs.formula (graphics). I am using R 2.1.1 for Windows, downloaded from CRAN. This is the body of the function as it is now: function (formula, data = NULL, ..., subset, na.action = stats::na.pass) { m <- match.call(expand.dots = FALSE) if (is.matrix(eval(m$data, parent.frame()))) m$data <- as.data.frame(data) m$... <- NULL m$na.action <- stats::na.pass m[[1]] <- as.name("model.frame") mf <- eval(m, parent.frame()) pairs(mf, ...) } I think the line "m$na.action <- stats::na.pass" should be "m$na.action <- na.action". Please correct me if I am wrong or this has already been fixed. Cheers, Tim Keighley
You are correct: now fixed in R-patched and R-devel. I have fixed this once before, so that fix must have got lost. BTW, the sources have an explanatory comment you don't see by listing the function in R: it is necessary to set m$na.action explicitly because match.call only includes supplied arguments, not default ones. So the lines now reads m$na.action <- na.action # force in even if default On Mon, 27 Jun 2005 Tim.Keighley at csiro.au wrote:> Hi, > > I believe that the argument "na.action" is not used in the function > pairs.formula (graphics). I am using R 2.1.1 for Windows, downloaded > from CRAN. > > This is the body of the function as it is now: > > function (formula, data = NULL, ..., subset, na.action = stats::na.pass) > > { > m <- match.call(expand.dots = FALSE) > if (is.matrix(eval(m$data, parent.frame()))) > m$data <- as.data.frame(data) > m$... <- NULL > m$na.action <- stats::na.pass > m[[1]] <- as.name("model.frame") > mf <- eval(m, parent.frame()) > pairs(mf, ...) > } > > I think the line "m$na.action <- stats::na.pass" should be "m$na.action > <- na.action". Please correct me if I am wrong or this has already been > fixed.-- Brian D. Ripley, ripley at stats.ox.ac.uk Professor of Applied Statistics, http://www.stats.ox.ac.uk/~ripley/ University of Oxford, Tel: +44 1865 272861 (self) 1 South Parks Road, +44 1865 272866 (PA) Oxford OX1 3TG, UK Fax: +44 1865 272595