Câu hỏi
Sử dụng dplyr
, làm cách nào để chọn các quan sát / hàng dữ liệu được nhóm trên cùng và dưới cùng trong một câu lệnh?
Dữ liệu & ví dụ
Đưa ra một khung dữ liệu
df <- data.frame(id=c(1,1,1,2,2,2,3,3,3),
stopId=c("a","b","c","a","b","c","a","b","c"),
stopSequence=c(1,2,3,3,1,4,3,1,2))
Tôi có thể nhận được các quan sát trên và dưới từ mỗi nhóm bằng slice
cách sử dụng hai cách riêng biệt:
firstStop <- df %>%
group_by(id) %>%
arrange(stopSequence) %>%
slice(1) %>%
ungroup
lastStop <- df %>%
group_by(id) %>%
arrange(stopSequence) %>%
slice(n()) %>%
ungroup
Tôi có thể kết hợp hai statmenet này thành một trong đó chọn cả quan sát trên và dưới không?