arn...@hafro.is wrote:
The weighted.mean() function replaces NA values with 0.0 when the user specifies na.rm=TRUE:

   x <- c(101, 102, NA)
   mean(x, na.rm=TRUE)                         # 101.5, correct
   weighted.mean(x, na.rm=TRUE)                # 67.66667, wrong
   weighted.mean(x, w=c(1,1,1), na.rm=TRUE)    # 67.66667, wrong
   weighted.mean(x, w=c(1,1,1)/3, na.rm=TRUE)  # 67.66667, wrong

The weights are normalized w<-w/sum(w) before removing the NA values, effectively replacing x[is.na(x)]<-0. This bug was introduced between versions 2.9.2 and 2.10.0.

Yes,

r48644 on May 27, specifically.

--
   O__  ---- Peter Dalgaard             Ă˜ster Farimagsgade 5, Entr.B
  c/ /'_ --- Dept. of Biostatistics     PO Box 2099, 1014 Cph. K
 (*) \(*) -- University of Copenhagen   Denmark      Ph:  (+45) 35327918
~~~~~~~~~~ - (p.dalga...@biostat.ku.dk)              FAX: (+45) 35327907

______________________________________________
R-devel@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-devel

Reply via email to