From: Dirk Eddelbuettel <edd_at_debian.org>

Date: Mon 30 May 2005 - 10:46:23 EST

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.htmlReceived 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
*