我在r中使用聚合函数计算不同时间点不同组的均值和sd
aggregate(.~ Group + Time, data = x, FUN = function(x) c(m = mean(x), n = sd(x)))
我有一个问题,这也给了我数据ID的均值和sd,所以我的结果如下:
# Time Group ID.m ID.n result.m result.n
# 1 0 x 20.5 10.0 6.5 1.15
# 2 1 x 20.5 10.0 8.0 2.13
# 3 0 y 20.5 10.0 7.0 2.66
...
如何删除ID的均值和sd,并且我想在不同的时间(时间为x轴)为每个组制作均值和均值+ -sd的图,我该怎么做?
答案 0 :(得分:1)
考虑使用 func updateRegistrationToken(registrationToken: String) {
let userTokenRef = ref.child("users").child(user1uid)
userTokenRef.setValue(["token": registrationToken])
}
包。加载tidyr
库时会包含它。 group_by和summarize函数替换您的聚合函数。在我看来,管道功能(%>%)更容易阅读:
tidyverse
如果你想要做的就是从结果中删除列:
# Libraries
library(tidyverse)
result_table <- mydata %>% # Specify your table
group_by(Group, Time) %>% # Specify your groups (two variables in your case)
summarize(m = mean(x), # Calculate mean for your groups
n = sd(x)) # Calcualte sd for your groups
要制作您的情节,您可以使用result_table %>% select(Time, Group, result.n, result.m) # using tidyr or
result_table[,c('Time', 'Group', 'result.n', 'result.m')] # Base R
中包含的ggplot2
tidyverse