Essentially a wrapper around round
, rather than truncate
, which is what as.integer
does. Internally, this is simply as.integer(floor(x + 0.5))
.
asInteger(x)
A numeric vector
An integer vector of length x
, rounded to zero decimal places
prior to as.integer
Values ending in .5
will be rounded up, whether positive or negative.
This is different than round
.
x <- seq(-2, 2, 0.25)
data.frame(dbl = x, int = asInteger(x))
#> dbl int
#> 1 -2.00 -2
#> 2 -1.75 -2
#> 3 -1.50 -1
#> 4 -1.25 -1
#> 5 -1.00 -1
#> 6 -0.75 -1
#> 7 -0.50 0
#> 8 -0.25 0
#> 9 0.00 0
#> 10 0.25 0
#> 11 0.50 1
#> 12 0.75 1
#> 13 1.00 1
#> 14 1.25 1
#> 15 1.50 2
#> 16 1.75 2
#> 17 2.00 2