diff_section {cycleRtools} | R Documentation |
Section data according to breaks.
Description
Generates a vector of "section" values/levels according to differences in
the supplied vector. The function simply rolls over x
, incrementing
the return vector every time there is a significant break (stop
argument) in the pattern of differences between adjacent elements of
x
. In practical terms, if x
is a series of timestamp values
(see example), every time there is a significant break in the timer (e.g.
>10 sec), the return vector is incremented by 1.
Usage
diff_section(x, br)
Arguments
x |
a numeric vector (e.g. a timer column) that increments uniformly. When there is a significant break in this uniformity, a new section is created, and so forth. |
br |
criterion for a significant break in terms of |
Value
a vector of the same length as x
.
Examples
t_sec <- c(1:10, 40:60, 100:150) # Discontinuous timer values.
pwr <- runif(length(t_sec), 0, 400) # Some power values.
x <- data.frame(t_sec, pwr)
## Generate section levels.
x$section <- diff_section(x$t_sec, br = 10) # 10 second breaks.
print(x)
split(x, x$section)
## Using "intervaldata", which has a large stop.
data(intervaldata)
intervaldata$section <- diff_section(intervaldata$timer.s, br = 20)
sp <- split(intervaldata, intervaldata$section)
## Plot.
eplot <- function(x) cycleRtools:::elev_plot(x, "timer.min")
layout(matrix(c(1, 2, 1, 3), 2, 2))
eplot(cycleRtools:::expand_stops(intervaldata))
eplot(sp[[1]])
eplot(sp[[2]])
[Package cycleRtools version 1.1.1 Index]