【发布时间】:2021-11-22 04:27:34
【问题描述】:
我正在尝试在时间序列中多次查找特定值,在本例中是第一个值。数据是这样的
data <- data.table::data.table(value = c(0, 0, 0, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 1, 1, 1, 1),
time = c(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21))
现在我想找到value == 1 的第一个值并给我时间。
时间的结果应该如下所示:4、14、18
如果解决方案灵活,那么您可以跳过少量后面的零,这也会有很大帮助。 对于这种情况,时间的结果将如下所示:4、18,因为您可以跳过中间的 2 个零。
我已经尝试过使用 which(min) 的解决方案,但它只给了我第一个值,而不是下面的第一个值。
【问题讨论】:
标签: r time-series data.table