R / 数据清理:分离数据集中的多个时间序列
R / data cleaning: Separating multiple time series in a data set
我有一个包含多个时间序列块的数据框。块没有标识符,但块的第一个条目用布尔变量指示。我如何使用这个变量来创建标识符?
示例数据:
set.seed(102)
chunks <- data.frame(entry = c(1:50),
date = seq(ISOdate(2015,1,1), by = "day", length.out = 50),
newchunk = c(1, rbinom(49, 1, .2)),
measurement = rnorm(50, 100, 10))
结果应该是一个新变量 "seqID",它将块分组。我想知道 tidyr 包是否可以处理这种情况。
你可以试试cumsum
chunks$seqID <- cumsum(chunks$newchunk)
我有一个包含多个时间序列块的数据框。块没有标识符,但块的第一个条目用布尔变量指示。我如何使用这个变量来创建标识符?
示例数据:
set.seed(102)
chunks <- data.frame(entry = c(1:50),
date = seq(ISOdate(2015,1,1), by = "day", length.out = 50),
newchunk = c(1, rbinom(49, 1, .2)),
measurement = rnorm(50, 100, 10))
结果应该是一个新变量 "seqID",它将块分组。我想知道 tidyr 包是否可以处理这种情况。
你可以试试cumsum
chunks$seqID <- cumsum(chunks$newchunk)