我的数据看起来是这样的
df<-structure(list(Data = c("P718", "Trans17", "Ham8Y"), Rep1_Condition = c(30100000,
1.11e+10, 2.05e+09), Rep2_Condition = c(37700000, 1.3e+10, 3.52e+09
), Rep3_Condition = c(4.27e+10, 0, 1.75e+10), Rep1_H1 = c(4.49e+08,
1.28e+11, 5.5e+10), Rep2_H1 = c(4.31e+08, 1.5e+11, 6.38e+10),
Rep3_H1 = c(3.89e+10, 0, 1.89e+10), Rep1_H2 = c(4.07e+08,
1.24e+11, 4.41e+10), Rep2_H2 = c(1.98e+08, 8.21e+10, 3.14e+10
), Rep3_H2 = c(1.75e+10, 0, 1.46e+09)), class = "data.frame", row.names = c(NA,
-3L))
我想为每个3次复制品添加中位数和标准偏差,例如:
P718 3.01e+07 3.77e+07 4.27e+10
值可以在其旁边。
类似这样的结构。
out<- structure(list(Data = c("P718", "Trans17", "Ham8Y"), Rep1_Condition = c(30100000,
1.11e+10, 2.05e+09), Rep2_Condition = c(37700000, 1.3e+10, 3.52e+09
), Rep3_Condition = c(4.27e+10, 0, 1.75e+10), Condition_median = c(NA,
NA, NA), Condition_SD = c(NA, NA, NA), Rep1_H1 = c(4.49e+08,
1.28e+11, 5.5e+10), Rep2_H1 = c(4.31e+08, 1.5e+11, 6.38e+10),
Rep3_H1 = c(3.89e+10, 0, 1.89e+10), H1_Median = c(NA, NA,
NA), H1_SD = c(NA, NA, NA), Rep1_H2 = c(4.07e+08, 1.24e+11,
4.41e+10), Rep2_H2 = c(1.98e+08, 8.21e+10, 3.14e+10), Rep3_H2 = c(1.75e+10,
0, 1.46e+09), H2_Median = c(NA, NA, NA), H2_SD = c(NA, NA,
NA)), class = "data.frame", row.names = c(NA, -3L))
df %>% pivot_longer(cols = -Data, names_to = c("grp", ".value"), names_sep = "_") %>% group_by(Data) %>% mutate(across(where(is.numeric), list(median= ~ median(.x), SD = ~ sd(.x))))
? - akrundf %>% pivot_longer(cols = -Data, names_to = c("grp", ".value"), names_sep = "_") %>% group_by(Data) %>% mutate(across(where(is.numeric), list(median= ~ median(.x), SD = ~ sd(.x)))) %>% pivot_wider(names_from = grp, values_from = Condition:H2_SD)
- akrundf %>% pivot_longer(cols = -Data, names_to = c("grp", ".value"), names_sep = "_") %>% group_by(Data) %>% mutate(across(where(is.numeric), list(median= ~ median(.x), SD = ~ sd(.x)))) %>% pivot_wider(names_from = grp, values_from = Condition:H2)
。 - akrun