is.finite and is.infinite return a vector of the same
  length as x, indicating which elements are finite (not infinite
  and not missing) or infinite.  Inf and -Inf are positive and negative infinity
  whereas NaN means Not a Number.  (These apply to numeric
  values and real and imaginary parts of complex values but not to
  values of integer vectors.)  Inf and NaN are
  reserved words in the R language.
is.finite(x)
is.infinite(x)
is.nan(x)
Inf
NaNx: dim,
  dimnames and names attributes are preserved.
is.finite returns a vector of the same length as x the
  jth element of which is TRUE if x[j] is finite (i.e., it
  is not one of the values NA, NaN, Inf or
  -Inf) and FALSE otherwise.  Complex
  numbers are finite if both the real and imaginary parts are.  is.infinite returns a vector of the same length as x the
  jth element of which is TRUE if x[j] is infinite (i.e.,
  equal to one of Inf or -Inf) and FALSE
  otherwise.  This will be false unless x is numeric or complex.
  Complex numbers are infinite if either the real or the imaginary part is.
  is.nan tests if a numeric value is NaN.  Do not test
  equality to NaN, or even use identical, since
  systems typically have many different NaN values.  One of these is
  used for the numeric missing value NA, and is.nan is
  false for that value.  A complex number is regarded as NaN if
  either the real or imaginary part is NaN but not NA.
  All elements of logical, integer and raw vectors are considered not to
  be NaN.
  All three functions accept NULL as input and return a length
  zero result. The default methods accept character and raw vectors, and
  return FALSE for all entries. Prior to R version 2.14.0 they
  accepted all input, returning FALSE for most non-numeric
  values; cases which are not atomic vectors are now signalled as
  errors.
All three functions are generic: you can write methods to handle specific classes of objects, see InternalMethods.
https://en.wikipedia.org/wiki/NaN.
D. Goldberg (1991) What Every Computer Scientist Should Know about Floating-Point Arithmetic ACM Computing Surveys, 23(1). Postscript version available at http://www.validlab.com/goldberg/paper.ps Extended PDF version at http://www.validlab.com/goldberg/paper.pdf
  The C99 function isfinite is used for is.finite.
NA, Not Available which is not a number
  as well, however usually used for missing values and applies to many
  modes, not just numeric and complex.pi / 0 ## = Inf a non-zero number divided by zero creates infinity
0 / 0  ## =  NaN
1/0 + 1/0 # Inf
1/0 - 1/0 # NaN
stopifnot(
    1/0 == Inf,
    1/Inf == 0
)
sin(Inf)
cos(Inf)
tan(Inf)
Run the code above in your browser using DataLab