Message-ID: <43940708.7050100@free.fr>
Date: 2005-12-05T09:23:20Z
From: Romain Francois
Subject: computing the variance
In-Reply-To: <4393FFEC.3040008@bii-sg.org>
Le 05.12.2005 09:53, Wang Tian Hua a ??crit :
>hi,
>when i was computing the variance of a simple vector, i found unexpect
>result. not sure whether it is a bug.
> > var(c(1,2,3))
>[1] 1 #which should be 2/3.
> > var(c(1,2,3,4,5))
>[1] 2.5 #which should be 10/5=2
>
>it seems to me that the program uses (sample size -1) instead of sample
>size at the denominator. how can i rectify this?
>
>regards,
>tianhua
>
>
These results are expected, it is so not a bug.
From details section in ?var
The denominator n - 1 is used which gives an unbiased estimator of
the (co)variance for i.i.d. observations. (.....)
If you really want biased variance, work around :
biasedVar <- function(x, ...){
n <- length(x)
(n-1) / n * var(x,...)
}
Romain
--
visit the R Graph Gallery : http://addictedtor.free.fr/graphiques
mixmod 1.7 is released : http://www-math.univ-fcomte.fr/mixmod/index.php
+---------------------------------------------------------------+
| Romain FRANCOIS - http://francoisromain.free.fr |
| Doctorant INRIA Futurs / EDF |
+---------------------------------------------------------------+