bis*_*178 2 group-by r collapse dplyr
我有一个看起来像这样的数据集
Id Subject Date Vitals Value
10 John 2001-05-29 HeartRate 65
10 John 2001-05-29 HeartRate 68
10 John 2001-05-29 BP-Arterial 48
10 John 2001-05-29 PulseRate 64
34 Pete 2005-08-15 HeartRate 68
34 Pete 2005-08-15 BP-Arterial 56
10 John 2004-09-25 HeartRate 65
10 John 2004-09-25 BP-Arterial 64
10 John 2004-09-25 PulseRate 63
34 Pete 2007-07-21 BP-Arterial 68
34 Pete 2007-07-21 PulseRate 56
Run Code Online (Sandbox Code Playgroud)
我想做两件事,
1)由Vitals组.2)计算在特定日期为每个ID测量的Vitals数量,(ID + Date)并折叠并粘贴这些值,如下所示.
Vitals Series
HeartRate 2,1,1
BP-Arterial 1,1,1,1
PulseRate 1,1,1
Run Code Online (Sandbox Code Playgroud)
Series列下的值HeartRate是2, 1, 1因为测量了HeartRate
在2001-05-29两次获得ID 10,
曾在2005-08-15和
曾在2004-09-24获得ID 10
不知道如何使用dplyr折叠和粘贴这些值任何帮助非常感谢.
计算在特定日期(ID +日期)为每个ID测量的Vitals数量
这意味着您需要按所有三个分组.然后,我们可以通过最终崩溃的重要组合重组:
dat %>% group_by(Vitals, Id, Date) %>%
summarize(n = n()) %>%
ungroup() %>%
group_by(Vitals) %>%
summarize(Series = paste(n, collapse = ','))
# # A tibble: 3 × 2
# Vitals Series
# <fctr> <chr>
# 1 BP-Arterial 1,1,1,1
# 2 HeartRate 2,1,1
# 3 PulseRate 1,1,1
Run Code Online (Sandbox Code Playgroud)