[R] Change in behaviour of sd()

Fiona Johnson fiona.johnson at student.unsw.edu.au
Tue Jul 8 09:38:14 CEST 2008


I have just upgraded from R2.6.0 to R2.7.1 (running on Windows) and a part
of my code that previously ran ok now gives an error. The following is a
simple example to demonstrate my problem.

> a <- array(c(1,2,3,4,5,6,rep(NA,6)),dim=c(6,2))
> apply(a,2,sd,na.rm=T)

In R2.6.0 this gives (which is what I would like)

 [1] 1.870829       NA

In R2.7.1 it gives the following error

"Error in var(x, na.rm = na.rm) : no complete element pairs"

As my columns are always either all NA or all numbers, I could get around it
by replacing the NA's with 0's but if someone could shed some light on why
the behaviour has changed in the new version or a better work around it
would be much appreciated. I want to keep the columns of NA's because
ultimately I am plotting the results with contour and the NA's refer to grid
cells not on land where I don't want to have contours.

Thanks for your help



Fiona Johnson
PhD Candidate, UNSW Water Research Centre
School of Civil & Environmental Engineering
The University of New South Wales, Sydney, NSW, 2052, Australia
Email: fiona.johnson (at) student.unsw.edu.au

More information about the R-help mailing list