我有一个数据x包含id
,date
和details
列:
id date details
1 28-07-2017 20:01:30 NA
2 28-07-2017 18:01:30 NA
1 28-07-2017 22:02:20 SQL
2 28-07-2017 19:01:30 SQL
1 29-07-2017 22:20:00 NA
3 30-07-2017 18:01:30 NA
3 31-07-2017 18:01:30 SQL
4 28-07-2017 18:01:30 NA
我希望我的数据看起来像这样:
id date details
1 28-07-2017 20:01:30 NA
1 28-07-2017 22:02:20 SQL
2 28-07-2017 18:01:30 NA
2 28-07-2017 19:01:30 SQL
3 30-07-2017 18:01:30 NA
3 31-07-2017 18:01:30 SQL
4 28-07-2017 18:01:30 NA
我希望在id
的基础上对数据x进行分组,然后按升序排序date
,然后如果有" SQL" details
列中的值然后删除相同id
的以下行。一旦SQL阶段到达id
变量,每个details
都不应该有记录。
我怎样才能在R?
中这样做答案 0 :(得分:0)
使用dput
将您的数据转换为我们可以使用的内容。这是一个理解它的链接:https://gist.github.com/dsparks/3688652
答案 1 :(得分:0)
将dplyr
包与magrittr
一起使用。这是一个快速的刺。
library("dplyr")
library("magrittr")
newdata <- olddata %>% group_by(id) %>% arrange (date) %>% filter(details !="SQL")