从 R 中的纵向数据中选择特定点(横截面)的测量值
selecting measurements from specific points (crossectional) from longitudinal data in R
我有一个特定测量的纵向数据列表。我只想 select 每个样本的最后一次测量。例如,假设我测量了一群人 运行 一英里所需的时间。我只想select测量他们最后的时间。数据示例如下。请注意,并非所有人都有相同数量的试验,有些人只有一次。
Name Trial Time
Jim 0 20:00
Jim 1 21:00
Jim 2 18:00
Jim 3 18:25
Mike 0 17:00
Mike 1 16:30
Sarah 0 17:00
Sarah 1 13:00
Tom 0 17:00
Tom 1 16:58
Tom 2 17:05
Cindy 0 14:00
Cindy 1 13:45
Cindy 2 13:25
Cindy 3 12:30
Cindy 4 12:30
Cindy 5 12:00
Cindy 6 10:00
Jose 0 14:00
Juan 0 17:00
Juan 1 17:30
Juan 2 20:00
下面是我的目标
Name Trial Time
Jim 3 18:25
Mike 1 16:30
Sarah 1 13:00
Tom 2 17:05
Cindy 6 10:00
Jose 0 14:00
Juan 2 20:00
可以使用dplyr过滤每个Name的Trial最大值
library(dplyr)
dat %>%
group_by(Name) %>%
filter(Trial == max(Trial)
我有一个特定测量的纵向数据列表。我只想 select 每个样本的最后一次测量。例如,假设我测量了一群人 运行 一英里所需的时间。我只想select测量他们最后的时间。数据示例如下。请注意,并非所有人都有相同数量的试验,有些人只有一次。
Name Trial Time
Jim 0 20:00
Jim 1 21:00
Jim 2 18:00
Jim 3 18:25
Mike 0 17:00
Mike 1 16:30
Sarah 0 17:00
Sarah 1 13:00
Tom 0 17:00
Tom 1 16:58
Tom 2 17:05
Cindy 0 14:00
Cindy 1 13:45
Cindy 2 13:25
Cindy 3 12:30
Cindy 4 12:30
Cindy 5 12:00
Cindy 6 10:00
Jose 0 14:00
Juan 0 17:00
Juan 1 17:30
Juan 2 20:00
下面是我的目标
Name Trial Time
Jim 3 18:25
Mike 1 16:30
Sarah 1 13:00
Tom 2 17:05
Cindy 6 10:00
Jose 0 14:00
Juan 2 20:00
可以使用dplyr过滤每个Name的Trial最大值
library(dplyr)
dat %>%
group_by(Name) %>%
filter(Trial == max(Trial)