[R] Is.integer and testing for integers
Sundar Dorai-Raj
sundar.dorai-raj at pdf.com
Thu Jun 30 17:39:11 CEST 2005
Tuszynski, Jaroslaw W. wrote:
> Hi,
>
> I was trying to figure out if there is a function in R that tests if R
> object contains only integers. I though "is.integer" would be it, but this
> function only checks "whether its argument is of integer type or not". As a
> result
> x = (1:5)^2
> is.integer(x)
> Returns false. Of course I can write my own function like
> "!any(x!=as.integer(x))" but I am just trying to make sure I am not
> reinventing the wheel.
>
> Jarek
Since "^" returns a double, it's no wonder is.integer(x) didn't work as
you expected. Perhaps you want something more like
is.int <- function(x, tol = .Machine$double.eps) {
(x - floor(x)) < tol
}
is.int((1:5)^2)
HTH,
--sundar
More information about the R-help
mailing list