
NCL Home >
Documentation >
Functions >
Type converters
numeric2int
Converts values of any numeric type to type integer.
Prototype
load "$NCARG_ROOT/lib/ncarg/nclscripts/csm/contributed.ncl" ; This library is automatically loaded ; from NCL V6.2.0 onward. ; No need for user to explicitly load. function numeric2int ( x : numeric, iopt [1] : integer ) return_val [dimsizes(x)] : integer
Arguments
xA scalar or array of any dimensionality and of type numeric.
ioptA scalar integer. If x is of type byte, short or integer this argument is ignored. For x of type float or double:
iopt=0 means that the returned integers will have been truncated iopt=1 means that the returned integers will have been rounded.
Return value
An array of the same size as x and of type integer.
Description
This function converts values of type numeric to values of type integer.
- If x is of type integer, the values are unchanged.
- If x is of type byte or short, the values will be promoted to integers.
- If x is of type float or double, the returned values will be truncated or rounded.
See Also
doubletoint, floattoint, round, short2flt, flt2dble
Examples
Example 1
load "$NCARG_ROOT/lib/ncarg/nclscripts/csm/contributed.ncl" x = 7.2 ; or x=7.2d ix = numeric2int( x, 0 ) ; ix=7 (truncated) y = 9.7 ; or y=9.7d iy = numeric2int( y, 1 ) ; iy=10 (rounded) a = -13.7 ; or a=-13.7d ia = numeric2int( a, 1 ) ; ia=-14 (rounded) b = -13.2 ; or b=-13.2d ib = numeric2int( b, 0 ) ; ib=-13 (truncated) ; --- q = random_uniform( -20,20, (/3,4/) ) iqt = numeric2int(q,0) ; truncated iqr = numeric2int(q,1) ; rounded print(q+" "+iqt+" "+iqr) ~The truncated (T) and rounded (R) results are:
x T R (0,0) -7.05158 -7 -7 (0,1) -7.02432 -7 -7 (0,2) -0.26449 0 0 (0,3) -8.45081 -8 -8 (1,0) -5.87974 -5 -6 (1,1) -13.84160 -13 -14 (1,2) 2.64845 2 3 (1,3) 12.82880 12 13 (2,0) -6.98022 -6 -7 (2,1) -6.39681 -6 -6 (2,2) 15.80710 15 16 (2,3) -6.53602 -6 -7