nanoduration-class | R Documentation |
The type nanoduration
is a length of time (implemented as
an S4 class) with nanosecond precision. It is a count of
nanoseconds and may be negative. The expected arithmetic
operations are provided, including sequence generation.
nanoduration(hours = 0L, minutes = 0L, seconds = 0L, nanoseconds = 0L)
## S4 method for signature 'character'
as.nanoduration(x)
## S4 method for signature 'integer64'
as.nanoduration(x)
## S4 method for signature 'numeric'
as.nanoduration(x)
## S4 method for signature 'integer'
as.nanoduration(x)
## S4 method for signature 'difftime'
as.nanoduration(x)
## S4 method for signature ''NULL''
as.nanoduration(x)
## S4 method for signature 'missing'
as.nanoduration(x)
## S4 method for signature 'nanoduration'
show(object)
## S4 method for signature 'nanoduration'
print(x, quote = FALSE, ...)
## S3 method for class 'nanoduration'
format(x, ...)
## S3 method for class 'nanoduration'
as.integer64(x, ...)
## S4 method for signature 'nanoduration'
as.character(x)
## S4 method for signature 'nanoduration'
is.na(x)
## S4 method for signature 'nanoduration,nanoduration'
e1 - e2
## S4 method for signature 'nanoduration,integer64'
e1 - e2
## S4 method for signature 'nanoduration,integer'
e1 - e2
## S4 method for signature 'nanoduration,numeric'
e1 - e2
## S4 method for signature 'nanoduration,difftime'
e1 - e2
## S4 method for signature 'nanoduration,ANY'
e1 - e2
## S4 method for signature 'nanotime,nanoduration'
e1 - e2
## S4 method for signature 'nanotime,difftime'
e1 - e2
## S4 method for signature 'integer64,nanoduration'
e1 - e2
## S4 method for signature 'integer,nanoduration'
e1 - e2
## S4 method for signature 'numeric,nanoduration'
e1 - e2
## S4 method for signature 'difftime,nanoduration'
e1 - e2
## S4 method for signature 'ANY,nanoduration'
e1 - e2
## S4 method for signature 'nanoduration,ANY'
e1 + e2
## S4 method for signature 'nanoduration,nanoduration'
e1 + e2
## S4 method for signature 'nanoduration,integer64'
e1 + e2
## S4 method for signature 'nanoduration,numeric'
e1 + e2
## S4 method for signature 'nanoduration,difftime'
e1 + e2
## S4 method for signature 'nanotime,nanoduration'
e1 + e2
## S4 method for signature 'nanotime,difftime'
e1 + e2
## S4 method for signature 'nanoduration,nanotime'
e1 + e2
## S4 method for signature 'difftime,nanotime'
e1 + e2
## S4 method for signature 'nanoival,nanoduration'
e1 + e2
## S4 method for signature 'nanoival,nanoduration'
e1 - e2
## S4 method for signature 'nanoduration,nanoival'
e1 + e2
## S4 method for signature 'nanoival,difftime'
e1 + e2
## S4 method for signature 'nanoival,difftime'
e1 - e2
## S4 method for signature 'difftime,nanoival'
e1 + e2
## S4 method for signature 'integer64,nanoduration'
e1 + e2
## S4 method for signature 'numeric,nanoduration'
e1 + e2
## S4 method for signature 'difftime,nanoduration'
e1 + e2
## S4 method for signature 'nanoduration,numeric'
e1 * e2
## S4 method for signature 'nanoduration,integer64'
e1 * e2
## S4 method for signature 'numeric,nanoduration'
e1 * e2
## S4 method for signature 'integer64,nanoduration'
e1 * e2
## S4 method for signature 'nanoduration,nanoduration'
e1 / e2
## S4 method for signature 'nanoduration,integer64'
e1 / e2
## S4 method for signature 'nanoduration,numeric'
e1 / e2
## S4 method for signature 'nanoduration,ANY'
Arith(e1, e2)
## S4 method for signature 'nanoduration,character'
Compare(e1, e2)
## S4 method for signature 'character,nanoduration'
Compare(e1, e2)
## S4 method for signature 'nanoduration,ANY'
Compare(e1, e2)
## S4 method for signature 'nanoduration'
abs(x)
## S4 method for signature 'nanoduration'
sign(x)
## S4 method for signature 'nanoduration'
sum(x, ..., na.rm = FALSE)
## S4 method for signature 'nanoduration'
min(x, ..., na.rm = FALSE)
## S4 method for signature 'nanoduration'
max(x, ..., na.rm = FALSE)
## S4 method for signature 'nanoduration'
range(x, ..., na.rm = FALSE)
## S4 method for signature 'nanoduration'
x[[i, j, ..., drop = FALSE]]
## S4 method for signature 'nanoduration,numeric'
x[i, j, ..., drop = FALSE]
## S4 method for signature 'nanoduration,logical'
x[i, j, ..., drop = FALSE]
## S4 method for signature 'nanoduration,character'
x[i, j, ..., drop = FALSE]
## S4 method for signature 'nanoduration,ANY'
x[i, j, ..., drop = FALSE]
## S4 replacement method for signature 'nanoduration,ANY,ANY,ANY'
x[i, j, ...] <- value
## S3 method for class 'nanoduration'
c(...)
NA_nanoduration_
hours |
number of hours |
minutes |
number of minutes |
seconds |
number of seconds |
nanoseconds |
number of nanoseconds |
x |
a |
object |
argument for method |
quote |
indicates if the output of |
... |
further arguments passed to or from methods. |
e1 |
Operand of class |
e2 |
Operand of class |
na.rm |
if |
i |
index specifying elements to extract or replace. |
j |
Required for |
drop |
Required for |
value |
argument for |
An object of class nanoduration
of length 1.
A nanoduration
can be constructed with the function
as.nanoduration
which can take the types integer64
,
integer
and numeric
(all indicating the count in
nanosecond units) or the type character
.
It can also be constructed by specifying with individual arguments
the hours, minutes, seconds and nanoseconds with a call to
nanoduration
.
A nanoduration
is displayed as hours, minutes, seconds and
nanoseconds like this: 110:12:34.123_453_001
. The nanosecond
precision displayed is adjusted as necessary, so e.g. 1 second is
displayed as 00:00:01
.
A nanoduration object
Dirk Eddelbuettel
Leonardo Silvestri
nanotime
## constructors:
nanoduration(hours=10, minutes=3, seconds=2, nanoseconds=999999999)
as.nanoduration("10:03:02.999_999_999")
as.nanoduration(36182999999999)
## arithmetic:
as.nanoduration(10e9) - as.nanoduration(9e9)
as.nanoduration(10e9) + as.nanoduration(-9e9)
as.nanoduration("24:00:00") / 2
as.nanoduration("24:00:00") / as.nanoduration("12:00:00")
## comparison:
as.nanoduration("10:03:02.999_999_999") == 36182999999999
as.nanoduration("10:03:02.999_999_999") > as.nanoduration("10:03:02.999_999_998")
as.nanoduration("10:03:02.999_999_998") < "10:03:02.999_999_999"
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.