Learn R Programming

tsibble (version 0.8.6)

tsibble-tidyverse: Tidyverse methods for tsibble

Description

  • arrange(): if not arranging key and index in past-to-future order, a warning is likely to be issued.

  • slice(): if row numbers are not in ascending order, a warning is likely to be issued.

  • select(): keeps the variables you mention as well as the index.

  • transmute(): keeps the variable you operate on, as well as the index and key.

  • summarise() reduces a sequence of values over time instead of a single summary, as well as dropping empty keys/groups.

Usage

# S3 method for tbl_ts
arrange(.data, ...)

# S3 method for tbl_ts filter(.data, ..., .preserve = FALSE)

# S3 method for tbl_ts slice(.data, ..., .preserve = FALSE)

# S3 method for tbl_ts select(.data, ...)

# S3 method for tbl_ts rename(.data, ...)

# S3 method for tbl_ts mutate(.data, ...)

# S3 method for tbl_ts transmute(.data, ...)

# S3 method for tbl_ts summarise(.data, ...)

Arguments

.data

A tbl_ts.

...

Same arguments accepted as its tidyverse generic.

.preserve

when FALSE (the default), the grouping structure is recalculated based on the resulting data, otherwise it is kept as is.

data

A tbl. All main verbs are S3 generics and provide methods for tbl_df(), dtplyr::tbl_dt() and dbplyr::tbl_dbi().

Details

Column-wise verbs, including select(), transmute(), summarise(), mutate() & transmute(), keep the time context hanging around. That is, the index variable cannot be dropped for a tsibble. If any key variable is changed, it will validate whether it's a tsibble internally. Use as_tibble() to leave off the time context.

Examples

Run this code
# NOT RUN {
library(dplyr, warn.conflicts = FALSE)
# Sum over sensors
pedestrian %>%
  index_by() %>%
  summarise(Total = sum(Count))
# shortcut
pedestrian %>%
  summarise(Total = sum(Count))
# Back to tibble
pedestrian %>%
  as_tibble() %>%
  summarise(Total = sum(Count))
library(tidyr)
# reshaping examples from tidyr
stocks <- tsibble(
  time = as.Date("2009-01-01") + 0:9,
  X = rnorm(10, 0, 1),
  Y = rnorm(10, 0, 2),
  Z = rnorm(10, 0, 4)
)
(stocksm <- stocks %>% gather(stock, price, -time))
stocksm %>% spread(stock, price)
# }

Run the code above in your browser using DataLab