[R] Mean of difftime vectors : "code infelicity" or intended behaviour ?
Emmanuel Charpentier
charpent at bacbuc.dyndns.org
Tue Mar 17 08:04:22 CET 2009
Oops. Clicked "Send" too fast (don't shoot, Brian !). I forgot :
> sessionInfo()
R version 2.8.1 (2008-12-22)
i486-pc-linux-gnu
locale:
LC_CTYPE=fr_FR.UTF-8;LC_NUMERIC=C;LC_TIME=fr_FR.UTF-8;LC_COLLATE=fr_FR.UTF-8;
LC_MONETARY=C;LC_MESSAGES=fr_FR.UTF-8;LC_PAPER=fr_FR.UTF-8;LC_NAME=C;
LC_ADDRESS=C;LC_TELEPHONE=C;LC_MEASUREMENT=fr_FR.UTF-8;LC_IDENTIFICATION=C
attached base packages:
[1] stats graphics grDevices datasets utils methods base
loaded via a namespace (and not attached):
[1] grid_2.8.1 lattice_0.17-20 lme4_0.999375-28
Matrix_0.999375-21
[5] nlme_3.1-90
>
On Tue, 17 Mar 2009 06:53:20 +0000, Emmanuel Charpentier wrote :
> Dear list,
>
> "+" (and "-") being defined for difftime class, I expected mean() to
> return something sensible. This is only half-true :
>
>> mean(c(1:5, 5:1),na.rm=TRUE)
> [1] 3
>> mean(as.difftime(c(1:5, 5:1),unit="mins"),na.rm=TRUE)
> Time difference of 3 mins
>
> Fine so far. However :
>
>> mean(c(1:5, NA,5:1),na.rm=TRUE)
> [1] 3
>> mean(as.difftime(c(1:5, NA,5:1),unit="mins"),na.rm=TRUE)
> Time difference of NA mins
>
> Ouch !
>
> Curiously, var(), max() and min() behave as expected. What's so special
> with mean() ?
>
>> RSiteSearch("mean difftime")
> [ ... doesn't return anything relevant ]
>
> NB : this isn't done for the hell of it. I intended to replace some
> missing dates, with something computed from other dates and mean time
> intervals).
>
> Any thoughs ?
>
> Emmanuel Charpentier
>
> ______________________________________________ R-help at 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.
More information about the R-help
mailing list