The tsibble package provides a data class of tbl_ts to represent tidy temporal data. A tsibble consists of a time index, key, and other measured variables in a data-centric format, which is built on top of the tibble.

## Index

The time indices are preserved as the essential data component of the tsibble, instead of implicit attribute (for example, the tsp attribute in a ts object). A few index classes, such as Date, POSIXct, and difftime, forms the basis of the tsibble, with new additions yearweek, yearmonth, and yearquarter representing year-week, year-month, and year-quarter respectively. Any arbitrary index class are also supported, including zoo::yearmon, zoo::yearqtr, and nanotime. For a tbl_ts of regular interval, a choice of index representation has to be made. For example, a monthly data should correspond to time index created by yearmonth or zoo::yearmon, instead of Date or POSIXct. Because months in a year ensures the regularity, 12 months every year. However, if using Date, a month contains days ranging from 28 to 31 days, which results in irregular time space. This is also applicable to year-week and year-quarter.

Since the tibble that underlies the tsibble only accepts a 1d atomic vector or a list, a tbl_ts doesn't accept POSIXlt and timeDate columns.

## Key

Key variable(s) together with the index uniquely identifies each record, which can be created via the id function as identifiers:

## Interval

The interval function returns the interval associated with the tsibble.

• Regular: the value and its time unit including "nanosecond", "microsecond", "millisecond", "second", "minute", "hour", "day", "week", "month", "quarter", "year". An unrecognisable time interval is labelled as "unit".

• Irregular: as_tsibble(regular = FALSE) gives the irregular tsibble. It is marked with !.

• Unknown: if there is only one entry for each key variable, the interval cannot be determined (?).

An interval is obtained based on the corresponding index representation:

• integer/numeric: either "unit" or "year"

• yearquarter/yearqtr: "quarter"

• yearmonth/yearmon: "month"

• yearweek: "week"

• Date: "day"

• POSIXct: "hour", "minute", "second", "millisecond", "microsecond"

• nanotime: "nanosecond"

## Time zone

Time zone corresponding to index will be displayed if index is POSIXct. ? means that the obtained time zone is a zero-length character "".

The tsibble package fully utilises the print method from the tibble. Please refer to tibble::tibble-package to change display options.

#> Using date as index variable.
#> Using qtr as index variable.