Re: [R] trouble with cumsum?

From: Dirk Eddelbuettel <edd_at_debian.org>
Date: Mon 30 May 2005 - 10:46:23 EST

On 29 May 2005 at 20:17, Makram Talih wrote:

| Dear R users,
| 
| I am using R version 2.0.1 (2004/11/15) on an i386-pc-mingw32 platform. I
| encounter the following problem while using cumsum:
| 
| > a <- rep(0.01, 100)
| > b <- cumsum(a)
| > sum(a) == 1
| [1] TRUE
| > b[100] == 1
| [1] FALSE
| 
| Am I missing something? 

Yes, FAQ section 7.31 entitled "Why doesn't R think these numbers are equal?".

| Should cumsum have such an outcome?

> a <- rep(0.01, 100)
> b <- cumsum(a)
> sum(a) == 1
[1] FALSE
> all.equal(sum(a), 1)
[1] TRUE
> all.equal(b[100], 1)
[1] TRUE
>

On my Linux system with R 2.1.0, the first equality fails whereas it "worked" for you. Morale: don't forget about floating-point math ...

Hth, Dirk

-- 
Statistics: The (futile) attempt to offer certainty about uncertainty.
         -- Roger Koenker, 'Dictionary of Received Ideas of Statistics'

______________________________________________
R-help@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
Received on Mon May 30 10:56:36 2005

This archive was generated by hypermail 2.1.8 : Fri 03 Mar 2006 - 03:32:15 EST