[R] Odp: strange issue with "which" on "seq"

Nikhil Kaza nikhil.list at gmail.com
Wed Jun 9 14:20:16 CEST 2010


which(abs(v - .1) <= .Machine$double.eps)

seems to me too cumbersome to write. Any other easier way? all.equal  
does not quite work

Nikhil

On Jun 9, 2010, at 7:54 AM, Petr PIKAL wrote:

> Hi
>
> r-help-bounces at r-project.org napsal dne 09.06.2010 13:16:40:
>
>> Dear R community,
>> I am puzzled by the following lines:
>>
>>> v <- seq(-0.5,0.5,by=0.1)
>>> v
>>  [1] -0.5 -0.4 -0.3 -0.2 -0.1  0.0  0.1  0.2  0.3  0.4  0.5
>>> which(v == -0.4)
>>  [1] 2
>>> which(v == 0)
>>  [1] 6
>>> which(v == 0.1)
>> integer(0)
>>> which(v == 0.2)
>> integer(0)
>>> which(v == 0.3)
>> integer(0)
>>> which(v == 0.4)
>>  [1] 10
>>> which(v == 0.5)
>>  [1] 11
>>
>> Why "which" can only match some of the values in "v"? Are the numbers
>> generated by "seq" not exact fractional numbers?
>> Please, help me to understand this.
>
> Well FAQ 7.31 was not here some time. Computing in binary results in
> finite precision of fractional numbers.
>
> v <- seq(-0.5,0.5,by=0.1)
> v[7]-0.1
> [1] 8.326673e-17
>
> Regards
> Petr
>
>
>
>>
>> J
>>
>> Dr James Foadi PhD
>> Membrane Protein Laboratory (MPL)
>> Diamond Light Source Ltd
>> Diamond House
>> Harewell Science and Innovation Campus
>> Chilton, Didcot
>> Oxfordshire OX11 0DE
>>
>> Email    :  james.foadi at diamond.ac.uk
>> Alt Email:  j.foadi at imperial.ac.uk
>>
>> -- 
>> This e-mail and any attachments may contain confidential... 
>> {{dropped:8}}
>>
>> ______________________________________________
>> 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.
>
> ______________________________________________
> 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