[R] Variance for Vector of Constants is STILL Not Zero

Spencer Graves spencer.graves at pdf.com
Sat Feb 18 17:12:16 CET 2006


	  I got the same thing as Duncan:

 > var(rep(0.2, 100))
[1] 0
 > RSiteSearch('fpu')
A search query has been submitted to http://search.r-project.org
The results page should open in your browser shortly
 > var(rep(0.2, 100))
[1] 1.525181e-31
 > sessionInfo()
R version 2.2.1, 2005-12-20, i386-pc-mingw32

attached base packages:
[1] "methods"   "stats"     "graphics"  "grDevices" "utils"     "datasets"
[7] "base"

	  spencer graves

Duncan Murdoch wrote:

> On 2/17/2006 1:17 PM, Barry Zajdlik wrote:
> 
>>Hello all,
>>
>>Thanks for the responses but I am still annoyed by this seemingly simple
>>problem; I recorded sessionInfo() as below.
>>
>>x<-rep(0.02,10)
>>
>>>var(x)
>>
>>[1] 1.337451e-35
>>
>>> sessionInfo()
>>
>>R version 2.1.0, 2005-04-18, i386-pc-mingw32 
>>
>>attached base packages:
>>[1] "methods"   "stats"     "graphics"  "grDevices" "utils"
>>"datasets" 
>>[7] "base"     
>>
>>
>>I then decided to download the latest version today but obtained the
>>same result.
>>
>>
>>>x<-rep(0.02,10)
>>>var(x)
>>
>>[1] 1.337451e-35
> 
> 
> My guess is that you've got a video driver or some other software that's 
> messing with your floating point processor, reducing the precision from 
> 64 bit to 53 or less.  I can reproduce the error after running 
> RSiteSearch, which messes with my fpu in that way:
> 
>  > var(rep(0.2, 100))
> [1] 0
>  > RSiteSearch('fpu')
> A search query has been submitted to http://search.r-project.org
> The results page should open in your browser shortly
>  > var(rep(0.2, 100))
> [1] 1.525181e-31
> 
> (I'm not blaming RSiteSearch for doing something bad, it's the system 
> DLLs that it calls that are at fault.)
> 
> I think this is something we should address, but it's not easy.
> 
> Duncan Murdoch
> 
> 
>>>sessionInfo()
>>
>>R version 2.2.1, 2005-12-20, i386-pc-mingw32 
>>
>>attached base packages:
>>[1] "methods"   "stats"     "graphics"  "grDevices" "utils"
>>"datasets" 
>>[7] "base"    
>>
>>
>>I Changed .Machine$double.eps to make the calculations LESS accurate.
>>My thought was that if I reduced the precision, 1-eps would return 1
>>instead of some number less than 1.  My thought was that if eps were
>>sufficiently large my sample problem would return a zero.  This didn't
>>happen though.
>>
>>Again, any thoughts would be appreciated.
>>
>>Regards,
>>Barry Zajdlik
>>
>>______________________________________________
>>R-help at stat.math.ethz.ch mailing list
>>https://stat.ethz.ch/mailman/listinfo/r-help
>>PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html
> 
> 
> ______________________________________________
> R-help at stat.math.ethz.ch mailing list
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html




More information about the R-help mailing list