首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >基于时间序列中空白的行分组

基于时间序列中空白的行分组
EN

Stack Overflow用户
提问于 2016-01-29 14:30:29
回答 1查看 406关注 0票数 4

我有一个时间序列的全球定位系统数据,需要分割成更小的部分,基于差距在时间戳。

例如,考虑下面的数据框架,我希望添加一个分段号,它分割每个“块”时间戳,在每次时间序列中至少有30秒的间隔时,有效地吐出数据。

生成的data.frame如下所示:

代码语言:javascript
运行
复制
   timestamp segment
1          1       1
2          3       1
3          5       1
4         10       1
5         42       2
6         45       2
7         92       3
8        156       4
9        160       4
10       162       4
11       163       4
12       164       4
13       200       5
14       203       5

有什么办法有效地做到这一点吗?data.frame是一个分组tbl_df (dplyr包),它有几个不同的时间序列,并且可能相当大。

EN

回答 1

Stack Overflow用户

发布于 2016-01-29 16:09:18

如果您的data.frame的名称是"df“

代码语言:javascript
运行
复制
df$segment[1] <- 1

for (i in 2:nrow(df)) {
    if (df$timestamp[i] < (df$timestamp[i-1] + 30)) {
        df$segment[i] <- df$segment[i-1]
    } else {
        df$segment[i] <- (df$segment[i-1] + 1)
    }
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35086962

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档