【发布时间】:2020-08-08 12:28:25
【问题描述】:
我想计算一个变量的 M、最小值和最大值。在不同的访问中收集数据。我的数据如下所示:
id visit V1
1 1 18
1 2 24
2 2 NA
2 3 5
2 4 6
我希望它看起来像这样,其中我为每个参与者的 V1 设置了 M、SD、最小值和最大值列。
id visit V1 M MIN MAX
1 1 18 21 18 24
2 2 3 4.67 3 6
在计算 M 时,我想考虑访问次数(例如,18 + 24/2 次访问)。我尝试了这是第一步:
df %>%
group_by(id) %>%
mutate(M = mean(V1), MIN = min(V1), MAX = max(V1), na.rm = T)
当我尝试通过确保不包含 NA 来处理它们时,na.rm = T 会生成一个名为“na.rm”的新列,其中每个值都为真,这不是我想要的。对制作这项工作有什么想法吗?
【问题讨论】:
-
您可以尝试
df %>% group_by(id) %>% mutate(M=mean(V1),Min=min(V1),Max=max(V1))与df作为您的数据!