Round                  package:base                  R Documentation

_R_o_u_n_d_i_n_g _o_f _N_u_m_b_e_r_s

_D_e_s_c_r_i_p_t_i_o_n:

     'ceiling' takes a single numeric argument 'x' and returns a
     numeric vector containing the smallest integers not less than the
     corresponding elements of 'x'.

     'floor' takes a single numeric argument 'x' and returns a numeric
     vector containing the largest integers not greater than the
     corresponding elements of 'x'.

     'round' rounds the values in its first argument to the specified
     number of decimal places (default 0). Note that for rounding off a
     5, the IEEE standard is used, "_go to the even digit_". Therefore
     'round(0.5)' is '0' and 'round(-1.5)' is '-2'.

     'signif' rounds the values in its first argument to the specified
     number of significant digits.

     'trunc' takes a single numeric argument 'x' and returns a numeric
     vector containing the integers by truncating the values in 'x'
     toward '0'.

     'zapsmall' determines a 'digits' argument 'dr' for calling
     'round(x, digits = dr)' such that values "close to zero" (compared
     with the maximal absolute one) are "zapped", i.e., treated as '0'.

_U_s_a_g_e:

     ceiling(x)
     floor(x)
     round(x, digits = 0)
     signif(x, digits = 6)
     trunc(x)
     zapsmall(x, digits = getOption("digits"))

_A_r_g_u_m_e_n_t_s:

       x: a numeric vector.

  digits: integer indicating the precision to be used.

_D_e_t_a_i_l_s:

     All but 'zapsmall' are generic functions: methods can be defined
     for them individually or via the 'Math' group generic.

_R_e_f_e_r_e_n_c_e_s:

     Becker, R. A., Chambers, J. M. and Wilks, A. R. (1988) _The New S
     Language_. Wadsworth & Brooks/Cole. (except 'zapsmall'.)

     Chambers, J. M. (1998) _Programming with Data. A Guide to the S
     Language_. Springer. ('zapsmall'.)

_S_e_e _A_l_s_o:

     'as.integer'.

_E_x_a_m_p_l_e_s:

     round(.5 + -2:4) # IEEE rounding: -2  0  0  2  2  4  4
     ( x1 <- seq(-2, 4, by = .5) )
     round(x1)#-- IEEE rounding !
     x1[trunc(x1) != floor(x1)]
     x1[round(x1) != floor(x1 + .5)]
     (non.int <- ceiling(x1) != floor(x1))

     x2 <- pi * 100^(-1:3)
     round(x2, 3)
     signif(x2, 3)

     print   (x2 / 1000, digits=4)
     zapsmall(x2 / 1000, digits=4)
     zapsmall(exp(1i*0:4*pi/2))

