R 在此数据表中发生x个事件后,如何消除一系列事件?

R 在此数据表中发生x个事件后,如何消除一系列事件?,r,reshape2,R,Reshape2,我有一个data.frame,它给出了不同模拟中每个x和y坐标的事件发生时间。我已使用dput()将此表的标题附加到下面 head\u data这就是您要寻找的: library(tidyr) data_clust_10_cut %>% pivot_wider(names_from="sim", values_from="infected") # # A tibble: 8 x 7 # time `simulation 1` `simulat

我有一个data.frame,它给出了不同模拟中每个x和y坐标的事件发生时间。我已使用dput()将此表的标题附加到下面


head\u data这就是您要寻找的:

library(tidyr)
data_clust_10_cut %>% pivot_wider(names_from="sim", values_from="infected")
# # A tibble: 8 x 7
#     time `simulation 1` `simulation 2` `simulation 3` `simulation 4`
#    <dbl>          <int>          <int>          <int>          <int>
# 1   100              0              0              0              0
# 2   200              0              0              0              0
# 3   400              1              0              0              0
# 4   600             NA              0              0              0
# 5   800             NA              0              0              1
# 6   900             NA              0             NA             NA
# 7  1000             NA              0             NA             NA
# 8  1100             NA              0             NA             NA
# # … with 2 more variables: `simulation 5` <int>, `simulation 6` <int>
# 
library(tidyr)
数据\u clust\u 10\u cut%>%pivot\u加宽(name\u from=“sim”,value\u from=“infected”)
##A tibble:8 x 7
#时间`模拟1``模拟2``模拟3``模拟4`
#                                            
# 1   100              0              0              0              0
# 2   200              0              0              0              0
# 3   400              1              0              0              0
#4600Na0
#5800NA 01
#6900NA 0NA
#7 1000纳0纳
#81100纳0纳
##…还有两个变量:`simulation 5`、`simulation 6`
# 
data_long <- melt(head_data, id.vars = c('x', 'y', 'id'), value.name = 'time', variable.name = 'sim')
times <- sort(unique(data_long$time))
data_clust_10 <- data_long %>% group_by(sim) %>%
  do(data.frame(time=times, infected=sapply(times, function(x) sum(.$time <= x))))
data_clust_10_cut<-filter(data_clust_10, infected < 2)
library(tidyr)
data_clust_10_cut %>% pivot_wider(names_from="sim", values_from="infected")
# # A tibble: 8 x 7
#     time `simulation 1` `simulation 2` `simulation 3` `simulation 4`
#    <dbl>          <int>          <int>          <int>          <int>
# 1   100              0              0              0              0
# 2   200              0              0              0              0
# 3   400              1              0              0              0
# 4   600             NA              0              0              0
# 5   800             NA              0              0              1
# 6   900             NA              0             NA             NA
# 7  1000             NA              0             NA             NA
# 8  1100             NA              0             NA             NA
# # … with 2 more variables: `simulation 5` <int>, `simulation 6` <int>
#