Nothing
CFCalendar$add_day()
method added to add a day to a data.frame
of date parts, using calendar logic.bounds <- TRUE
). If bounds have not been set, a NULL
value is returned. This is to ensure that factorizing to "approximate" time units (such as a month) will give correct results for the bounds. (Old API deprecated by November 2025, removed early 2026.)CFClimatology
to manage climatological statistics. Method
CFTime$factor()
with an era
argument will now have a CFClimatology
instance attached to the attribute "CFTime" of its return value.CFCalendarNone
for a calendar with no annual cycle. Such a
calendar represents a single instant in time, which may be useful for
experiments on a fixed moment during the year.str()
for CFTime
and CFClimatology
gives compact information.CFTime
instance for factor with a "day" or "dekad" period where
the last factor level is not at the end of the year.CFTime$new()
with a single character string offset will generate only the
single corresponding offset.CFTime$slice()
can now work with a single or multiple timestamp values.ncdfCF
package.utc
and tai
are added.standard
calendar now uses mixed Gregorian/Julian calendar as defined in the
CF Metadata Conventions. proleptic_gregorian
is now a separate calendar with
its own code base.utc
and tai
.slab()
has an additional argument rightmost.closed
to indicate if
the upper extreme value should be included in the result.indexOf()
and slab()
.CFfactor()
, cut()
, slab()
)
now have an attribute "CFtime" (among possible others) that describes the "time"
dimension of the analysis result applying the subset. In other words, if CFtime
instance 'Acf' describes the temporal dimension of data set 'A' and a factor 'Af'
is generated from 'Acf', then Bcf <- attr(Af, "CFtime")
describes the temporal
dimension of the result of, say, B <- apply(A, 1:2, tapply, Af, FUN)
.indexOf()
method added that returns the indices of supplied timestamps
in a CFtime instance, optionally with a fractional part. This can be used to
extract specific time steps, or to interpolate between time steps using the
fractional part, from the time dimension of the data set associated with the
CFtime instance. A vector of indices (e.g. referring to slices of the data set)
can also be supplied, in which case valid indices are returned, with the new
CFtime instance.cut()
method added to generate a factor, similar to cut.POSIXt()
but with
some differences in the arguments.CFfactor()
now supports a period "quarter", for calendar quarters.format()
method added that generates a character vector of timestamps for the
offsets in a CFtime instance. The format is specified using the flags used in
strptime()
, with some limitations. In particular, locale-specific formatting is
limited to month names and no weekday information can be generated. The range()
method has a new "format" parameter to support the same functionality and timestamps
can also be generated for the extremes of the bounds, if set.as_character()
and length()
methods added that return a vector of timestamps
or the number of offsets in a CFtime instance, respectively.CFtimestamp()
to
as_timestamp()
, CFcomplete()
to is_complete()
, CFrange()
to the standard
generic method range()
, and CFsubset()
to slab()
) to be more consistent
with the R universe. The original functions are now flagged as being deprecated.
Some datum functions (deep down where regular mortals do not dwell) have been
deleted.asPOSIX = TRUE
-- defaults to FALSE
, the
previous behaviour so the API is not broken.Any scripts or data that you put into this service are public.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.