- Slightly improved documentation.
- Minor internal code improvements.
- Ceased use of legacy time zone symlinks in tests.
- Bumped minimum tested R version from 4.0.2 to 4.2.3 using the corresponding Posit public package manager snapshot.
- Slightly improved documentation.
- Minor internal code improvements.
- Column names can often now be additionally specified by a character string containing either comma separated column names, for example,
"x,y,z"
, or the start and end column separated by a colon, for example,"x:z"
. - Fixed a bug in
interpolateLinear()
causing partial last observation carried forward behaviour when itsroll
argument was specified smaller than the size of the gap to be interpolated. - Fixed a bug in
interpolateLinear()
causing partial interpolation in certain cases when itsroll
argument was specified smaller than the size of the gap to be interpolated. - Slightly improved documentation.
- Added
funbyApproach
argument tonew()
,aggregate()
,colapply()
andsubset()
methods: allows for specifying the flavour of the applied temporal aggregation level functions (either"base"
utilisingas.POSIXct()
or"fasttime"
utilisingfasttime::fastPOSIXct()
or"RcppCCTZ"
utilisingRcppCCTZ::parseDatetime()
as the main function for transforming timestamps). Custom approaches for user defined TALFs are also possible. Please note that thebyFasttime*
versions of the TALFs are now deprecated. Use this argument from now on instead. - Added
funbyApproach
also to thelist
of helper data (funbyHelpers
argument) passed on to TALFs. - Added
funbyApproach
field reflecting the individualfunbyApproach
of aDTSg
object (can also be actively set in order to change the utilised approach). - Added undocumented
names()
method exclusive only to the R6 interface acting as an alias for thecols()
method. - Added
mode
andtypeof
arguments tocols()
method: allows for getting column names with a certainmode()
and/ortypeof()
. This can be especially handy when making use of theunits
package. - Added
DTSgFast
,DTSgFunbyApproach
andDTSgNA.status
options providing default values for thefast
,funbyApproach
andna.status
arguments of thenew()
method. - Added
DTSgDeprecatedWarnings
option: allows for disabling warnings from deprecated features. - Greatly sped up
by______()
andbyFasttime______()
TALFs. - It is no longer possible to use the deprecated value
"all"
with theclass
argument of thecols()
method in order to get all column names. Use the default valueNULL
instead for this."all"
is treated as a filter for classes of typeall
from now on. - Added an example to the
setCols()
method showing how to set measurement units with the help of theunits
package. - Added an example to the documentation of the
colapply()
method showing how to calculate running correlations with the help of therunner
package. - Bumped minimum tested R version from 3.5.2 to 4.0.2 using the corresponding MRAN repository snapshot.
- Slightly improved documentation.
- Minor internal code improvements.
- Added a “special class” called
".numerary"
available to theclass
argument of thecols()
method: allows for querying the names ofinteger
andnumeric
columns in one go. - Added undocumented
raggregate()
,rbind()
,set()
andsetnames()
methods exclusive only to the R6 interface acting as aliases for therowaggregate()
,rowbind()
,setCols()
andsetColNames()
methods. print()
method now truncates the number of printed rows of the values more aggressively.- Created a
pkgdown
website. - Improved vignettes and documentation.
- Fixed error "Error in prettyNum(.Internal(format(x, trim, digits, nsmall, width, 3L, : invalid value 0 for 'digits' argument" related to tests in upcoming R 4.2.0.
- Slightly improved documentation.
- Minor internal code improvements.
- Added
rowaggregate()
method: allows for applying summary functions row-wise to aDTSg
object. - Added
rowbind()
method: allows for combining the rows of aDTSg
object. - Added
setColNames()
method: allows for renaming columns of aDTSg
object. - Added
multiplier
andfunbyHelpers
arguments toaggregate()
,colapply()
andsubset()
methods: allows for adjusting the temporal aggregation level of TALFs and for passing on user defined helper data to TALFs. - Added
multiplier
also to thelist
of helper data passed on to TALFs. - Added
helpers
argument tocolapply()
androllapply()
methods: controls if helper data is passed on to an applied function (makes occasionally needed anonymous function wrappers obsolete, e.g.x$colapply(fun = function(x, ...) {cumsum(x)}, funby = byYm____)
can now be written asx$colapply(fun = cumsum, helpers = FALSE, funby = byYm____)
). - TALFs based on the
fasttime
package now also support time zones equivalent to UTC (executegrep("^(Etc/)?(UCT|UTC)$|^(Etc/)?GMT(\\+|-)?0?$", OlsonNames(), ignore.case = TRUE, value = TRUE)
for a full list of supported time zones). - Fixed that a
DTSg
object with only one timestamp did not set the name of its .dateTime column as expected. - Improved vignettes and documentation.
- Minor internal code improvements.
- Added
subset()
method: allows for filtering rows and/or selecting columns of aDTSg
object. - Added
setCols()
method: allows for setting the values of columns of, adding columns to and/or removing columns from aDTSg
object. - Added
[
extract operator: acts as a shortcut for thegetCol()
method. - Added examples to the documentation of the
colapply()
method showing how to calculate moving averages with the help of therunner
package instead of therollapply()
method. aggregate()
method can benefit fromdata.table
's GForce optimisation now when itsfun
argument is provided with a character vector specifying summary functions.- Greatly sped up
nas()
method. - Temporal aggregation level functions supplied to the
funby
argument of thecolapply()
method are not forced to return aPOSIXct
timestamp any longer. They are, however, forced to return an atomic mode (the same goes for thesubset()
method). getCol()
method now is capable of also querying the .dateTime column.R6Method
argument ofS3WrapperGenerator()
function now also takes a public method of anR6ClassGenerator
as a function and not only as an expression.- Fixed that not all missing values were made explicit after a call to the
merge()
method despite an"explicit"
na.status
in some cases. - Fixed that
getCol()
method tried to query all numeric columns instead of only the first one by default. - Improved vignettes and documentation.
- Minor internal code improvements.
- Added
getCol()
method: allows for querying the values of a single column of aDTSg
object. - Added
funby
andignoreDST
arguments tocolapply()
method: allows for applying functions likecumsum()
to a certain temporal level. - Added
na.status
argument tonew()
andalter()
methods: allows for making missing values either"explicit"
(default) or"implicit"
or leaving them alone via"undecided"
. - Added
na.status
field reflecting the status of missing values (can also be actively set). - Added
na.status
also to thelist
of helper data passed on to temporal aggregation level functions. funby
argument ofaggregate()
method now also accepts a namedlist
of functions: allows for calculating several summary statistics at once.periodicity
field can now be actively set in order to change the periodicity of the time series.timezone
field can now be actively set in order to convert the time zone of the series.- Fixed that a
DTSg
object with only one timestamp accepted a missing value in its .dateTime column. - Improved vignettes and documentation.
- Minor internal code improvements.
- Fixed error "Error in as.POSIXct.numeric(e) : 'origin' must be supplied" related to
rollback()
function in upcoming R 4.1.0. - Slightly improved vignettes.
- Minor internal code improvements.
- Added
memoryOverCPU
argument torollapply()
method: allows for preferring CPU over memory usage which makes the method more flexible in terms of resource consumption. - Settings of option
DTSgClone
in e.g. .RProfile are now respected and not overwritten byTRUE
when the package is loaded. - Fixed useless coercion of
POSIXct
.dateTime columns toPOSIXct
upon object creation in case they contained at least one missing value. - Switched to unit testing framework of the
tinytest
package instead of thetestthat
package. - Slightly improved vignettes and documentation.
- Minor internal code improvements.
- Added
resultCols
andsuffix
arguments tocolapply()
androllapply()
methods: allows for adding return values of applied functions as new columns instead of replacing existing ones. class
argument ofcols()
method now accepts a character vector of class names.- Changed default value of
class
argument ofcols()
method from"all"
toNULL
, however, for backward compatibility"all"
can still be used for the same result, but will eventually be treated as a filter for classes of typeall
. - Added
pattern
and...
arguments tocols()
method: allows for searching column names. - Switched to argument check functions of the
checkmate
package instead of theassertive.base
,assertive.numbers
,assertive.sets
andassertive.types
packages. - Slightly improved vignettes and documentation.
- Minor internal code improvements.
- Fixed error "Unsupported type passed to argument 'data'." related to
dygraphs
in at least some previous releases of R ≤ 3.5.3.
- Added
swallow
argument tonew()
method: allows for a more resource efficient object creation. - Added
drop
argument tovalues()
method: allows for a resource efficient destruction of aDTSg
object while preserving its values. - Added
class
argument tovalues()
method: can be used to return the values of aDTSg
object as adata.frame
instead of adata.table
. alter()
method and linked with itnew()
and other methods are now way more resource efficient in some cases.- Added
timestamps
field providing the total number of timestamps. print()
method now omits empty metadata fields.- Added means to measure code coverage with the help of
covr
. - Removed
xts
from suggested packages list (already comes along withdygraphs
). - Slightly improved vignettes and documentation.
- Minor internal code improvements.
- Slightly improved vignettes and documentation.
- First release.