TALFs {DTSg}R Documentation

Temporal Aggregation Level Functions (TALFs)

Description

Simply hand over one of these functions to the funby argument of one of the methods of a DTSg object, which supports it. The method then does the rest of the work. See respective calling method for further information. Other uses are possible, but not recommended.

Usage

byY_____(.dateTime, .helpers)

byYQ____(.dateTime, .helpers)

byYm____(.dateTime, .helpers)

byYmd___(.dateTime, .helpers)

byYmdH__(.dateTime, .helpers)

byYmdHM_(.dateTime, .helpers)

byYmdHMS(.dateTime, .helpers)

by______(.dateTime, .helpers)

by_Q____(.dateTime, .helpers)

by_m____(.dateTime, .helpers)

by___H__(.dateTime, .helpers)

by____M_(.dateTime, .helpers)

by_____S(.dateTime, .helpers)

Arguments

.dateTime

A POSIXct vector.

.helpers

A list with helper data as handed over by methods of DTSg objects, which support the funby argument.

Value

All functions return a POSIXct vector with timestamps corresponding to the function's temporal aggregation level.

Families and flavours

There are two families of temporal aggregation level functions. The one family truncates timestamps (truncating family), the other extracts a certain part of them (extracting family). Each family comes in four flavours: the first relies solely on base R, the second utilises fasttime::fastPOSIXct of fasttime, the third RcppCCTZ::parseDatetime of RcppCCTZ and the fourth timechange::time_floor of timechange.

The timechange flavour generally is the fastest for both families of functions and all time zones. Second best option for the extracting family of functions generally is the fasttime flavour, which, however, works with UTC and equivalent as well as all Etc/GMT time zones only (execute grep("^(Etc/)?(UCT|UTC)$|^(Etc/)?GMT(\\+|-)?0?$", OlsonNames(), ignore.case = TRUE, value = TRUE) for a full list of supported time zones) and is limited to timestamps between the years 1970 and 2199. For time zones other than UTC and equivalent the RcppCCTZ flavour generally is the second best option.

Use the funbyApproach argument of the respective calling method in order to specify the utilised flavour.

The truncating family sets timestamps to the lowest possible point in time of the corresponding temporal aggregation level:

By convention, the extracting family sets the year to 2199 and extracts a certain part of timestamps:

See Also

aggregate, colapply, subset


[Package DTSg version 2.0.0 Index]