如何计算重复键的差异,如下所示?
library(nycflights13)
head(flights, n=6) %>% select(origin, dep_time)
# A tibble: 6 x 2
origin dep_time
<chr> <int>
1 EWR 517
2 LGA 533
3 JFK 542
4 JFK 544
5 LGA 554
6 EWR 554
origin dep_time
<chr> <int>
1 EWR 37
2 LGA 23
3 JFK 2
答案 0 :(得分:1)
summarise
返回一个数据集,该数据集的每一列均按行排列。在数据集“航班”中,每个“来源”都有多行。在这种情况下,我们可以将summarise
设为list
,然后将unnest
library(nycflights13)
library(tidyverse)
flights %>%
select(origin, dep_time) %>%
group_by(origin) %>%
summarise(dep_time = list(diff(dep_time))) %>%
unnest
答案 1 :(得分:0)
您可以使用lag来计算差异,然后通过取2个原点的序列的最后一个值来进行分组
Flight %>%
arrange(Origin)%>%
mutate(diff= Deptime - c(1, lag(Deptime)[-1]))%>%
group_by(Origin)%>%
summarise(last(diff))