HI, Try this: S<-as.numeric(formatC(seq(0,4,0.01),digits=3)) which(S==2.02) #[1] 203 which(S==2.03) #[1] 204 which(S==3.03) #[1] 304 which(S==3.3) #[1] 331 which(S==3.) #[1] 301 A.K.
----- Original Message ----- From: Tom Bird <tomasb...@gmail.com> To: r-help@r-project.org Cc: Sent: Wednesday, August 15, 2012 8:37 AM Subject: [R] which() function not finding certain numbers Hi, I am using 32-bit R v 2.15.1, on Mac OsX v 10.6.8 with R GUI 1.52 Leopard build 32-bit (6188). I have also replicated this error on R 2.13.2 on a windows 7 machine. In some sequences of numbers, I am unable to use the which() function to index certain values. It seems to be primarily numbers with a 3 in the decimal. For example: > S=seq(0,4,0.01) > which(S==2.02) [1] 203 > which(S==2.03) integer(0) > which(S==2.04) [1] 205 > which(S==2.04) [1] 205 > which(S==3.03) integer(0) > which(S==3.3) integer(0) > which(S==3.) [1] 301 > which(S==3.5) [1] 351 > I'm not even sure if this is a bug, or just some misunderstanding of the seq() or which() functions, but any thoughts would be appreciated. TB [[alternative HTML version deleted]] ______________________________________________ R-help@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@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.