我有一个这样的数据框
node <- c("ABC_Amod_wdm-1/1/10/1","ABC_Amod_wdm-1/1/10/1","ABC_Arvali_wdm-1/1/10/1","ABC_Arvali_wdm-1/1/10/1","ABC_Arvali_wdm-1/1/10/1","ABC_Arvali_wdm-1/1/10/1","ABC_Arvali_wdm-1/1/10/1","ABC_Arvali_wdm-1/1/10/1","ABC_Arvali_wdm-1/1/10/1","ABC_Arvali_wdm-1/1/10/1","ABC_Arvali_wdm-1/1/10/1","ABC_Arvali_wdm-1/1/10/1")
activity <- c("LOSS_OF_MULTIPLEX_SECTION-OMS_A","LOSS_OF_MULTIPLEX_SECTION-OMS_A","UNDERLYING_RESOURCE_UNAVAILABLE-OMS_A","UNDERLYING_RESOURCE_UNAVAILABLE-OMS_A","LOSS_OF_SIGNAL-OTS","UNDERLYING_RESOURCE_UNAVAILABLE-OMS_A","LOSS_OF_MULTIPLEX_SECTION-OMS_A","UNDERLYING_RESOURCE_UNAVAILABLE-OMS_A","UNDERLYING_RESOURCE_UNAVAILABLE-OMS_A","UNDERLYING_RESOURCE_UNAVAILABLE-OMS_A","UNDERLYING_RESOURCE_UNAVAILABLE-OMS_A","UNDERLYING_RESOURCE_UNAVAILABLE-OMS_A")
time <- c("2020-05-09 04:50:42","2020-05-09 06:16:54","2020-05-09 09:30:49","2020-05-09 13:33:20","2020-05-10 20:01:10","2020-05-10 20:01:11","2020-05-10 20:35:24","2020-05-11 16:33:31","2020-05-16 13:40:29","2020-05-16 14:39:00","2020-05-16 15:12:52","2020-05-18 17:12:57")
df <- data.frame(node, activity, time)
df我试过这个代码
library(dplyr)
x<-df %>%
arrange(node, activity) %>%
group_by(node) %>%
mutate(nextactivity = lead(activity)) %>%
ungroup %>%
dplyr::select(-time) %>%
na.omit()但是这个没有给我想要的输出。它仍然是n个节点,我需要n-1个节点。
发布于 2020-11-10 10:23:19
您可以将time保留为数字格式,对数据执行arrange操作,并删除NA行。
library(dplyr)
df %>%
arrange(node, time) %>%
group_by(node) %>%
mutate(nextactivity = lead(activity)) %>%
ungroup %>%
dplyr::select(-time) %>%
na.omit()
# node activity nextactivity
# <chr> <chr> <chr>
#1 A cdf abc
#2 A abc nop
#3 A nop ghi
#4 A ghi jkm
#5 B tuv pqr https://stackoverflow.com/questions/64761939
复制相似问题