小编wet*_*ter的帖子

按两列值的范围查找数据框中的匹配间隔

我有一个时间相关事件的数据框.

这是一个例子:

Name     Event Order     Sequence     start_event     end_event     duration     Group 
JOHN     1               A               0               19          19           ID1
JOHN     2               A               60              112         52           ID1  
JOHN     3               A               392             429         37           ID1  
JOHN     4               B               282             329         47           ID1
JOHN     5               C               147             226         79           ID1  
JOHN     6               C               566             611         45           ID1  
ADAM     1               A               19              75          56           ID2
ADAM     2               A               384             407         23           ID2  
ADAM     3               B               0               79          79           ID2  
ADAM     4               B               505             586         81           ID2 …
Run Code Online (Sandbox Code Playgroud)

r dplyr

10
推荐指数
1
解决办法
1437
查看次数

随时间序列滚动事件计数

我正在尝试在时间范围内按组计算滚动计数/出现次数总和。

我有一个包含一些示例数据的数据框,如下所示:

dates = as.Date(c("2011-10-09",
        "2011-10-15",
        "2011-10-16", 
        "2011-10-18", 
        "2011-10-21", 
        "2011-10-22", 
        "2011-10-24"))

group1=c("A",
         "C",
         "A", 
         "A", 
         "L", 
         "F", 
         "A")
group2=c("D",
         "A",
         "B", 
         "H", 
         "A", 
         "A", 
         "E")

df1 <- data.frame(dates, group1, group2)
Run Code Online (Sandbox Code Playgroud)

我为每个唯一的“组”迭代单个数据框,例如,这就是“A”组的外观(它们出现在每一行中,无论是在 group1 还是 group2 中)。

我想计算“A”(然后是每个组)时间范围内事件发生的次数 - 事件的“日期”(即当前行日期)和前 4 天。我想向前滚动,例如,第 1 行的计数为 1,第 2 行的计数也为 1(除了当前日期之外,过去 4 天内没有任何事件),第 3 行的计数为 2,行4 将有 3 等。

对于每一行,我想以一列结束,基本上说,在这个事件日期,在当前日期(如日期列中所示)和过去 4 天内发生了 X 个事件.

r dplyr rollapply data.table

4
推荐指数
1
解决办法
2991
查看次数

R 中重叠/非重叠时间间隔的总和

这是以下内容:通过两列值的范围查找数据框中的匹配间隔

我有一个与时间相关的事件的数据框。

使用与之前相同的样本数据:

Name     Event Order     Sequence     start_event     end_event     duration     Group 
JOHN     1               A               0               19          19           ID1
JOHN     2               A               60              112         52           ID1  
JOHN     3               A               392             429         37           ID1  
JOHN     4               B               282             329         47           ID1
JOHN     5               C               147             226         79           ID1  
JOHN     6               C               566             611         45           ID1  
ADAM     1               A               0               79          56           ID2
ADAM     2               A               384             407         23           ID2  
ADAM     3               B               0               79          79           ID2  
ADAM     4               B               505             586 …
Run Code Online (Sandbox Code Playgroud)

time r overlap intervals dplyr

2
推荐指数
1
解决办法
1396
查看次数

ggplot:如何省略持续时间条形图的时间段

我已经清理了一个更大的数据框到一个简单的表,看起来像这样(注意这是几百行的小样本):

Name<-c("Bob","Bob","Bob","Bob","Bob","Anne","Anne","Anne","Anne","Anne","Anne","Joe","Joe")
start_event <-c(0,266,352,354,553,0,36,192,206,458,997,1102,1198)
end_event <-c(27.5,296,354,402,561,27.5,71,203,217,515,1033,1109,1215)
duration <-c(27.5,30,2,48,8,27.5,35,11,11,57,36,7,17)
run<-c(1,2,3,4,5,1,2,3,4,5,6,1,2)
df<-data.frame(Name,run,start_event,end_event,duration)
Run Code Online (Sandbox Code Playgroud)

我的目标是创建具有对名称的曲线图的y轴,在总的事件持续时间的x轴(在分钟。将是start_event和最大将是最后end_event)。

对于每个人,一个条形代表他们活动的持续时间,从开始到结束。在它们不活跃的时候,会有没有条形的间隙。

我尝试使用 geom_rect、geom_bar 和 geom_line 尝试将另一个示例(下面的链接)中的一些代码混合在一起,但我遇到了离散/连续值的问题。

为了帮助直观地构建这个参考,为这个 Q 提供的这个答案产生了我想要实现的类似结果:https : //stackoverflow.com/a/17130467

不需要躲避条形/矩形,最好堆叠在一条水平线上。

预先感谢您的任何指导/帮助!

r ggplot2

1
推荐指数
1
解决办法
257
查看次数

标签 统计

r ×4

dplyr ×3

data.table ×1

ggplot2 ×1

intervals ×1

overlap ×1

rollapply ×1

time ×1