如何使用误差线和 p 值绘制每天的治疗平均值?

Posted

技术标签:

【中文标题】如何使用误差线和 p 值绘制每天的治疗平均值?【英文标题】:How to plot treatment means per day with error bars and p values? 【发布时间】:2021-11-25 20:10:00 【问题描述】:

所以我有在第 0 天、第 15 天和实验结束时 (WEAN) 收集的数据。这些是两次处理之间的动物体重。它是这样的:

PIG TRT DAY0 DAY15 WEAN 
1 SOY 1.48  5.22  8.35    
2 SOY 1.44  5.07  7.76   
3 SOY 1.66  5.30  9.46    
4 LIN 1.94  5.91 10.10   
5 LIN 1.54  4.96  9.01 
6 LIN 1.68  5.56  9.52 

它总共由 61 头猪组成。使用 ggplot2 或 ggpubr,我如何执行统计数据并使用 x = 体重收集天数和 y = 权重在单线图中绘制处理均值,并带有误差线和 p 值?

感谢您的帮助!

【问题讨论】:

到目前为止你尝试了什么? 因为我正在将分析从 SAS 转移到 R Studio。但是现在,我有了平均值、平均值的标准误差和 p 值。我在想我是否可以用 R 做同样的分析,然后用 ggplot 或 ggpubr 绘制它们。但我不知道如何操作这些数据并在不同的时间点绘制它们。我试过这个,但这只是一个时间点,我不知道如何组合它们。 ggplot(df2, aes(x=time, y=pigletweightkg, group=treatment)) + geom_line(aes(linetype=treatment, color=treatment))+ geom_point(aes(color=treatment))+ theme(legend.position="right") 【参考方案1】:

对于您的样本数据,我认为您的目的是绘制每个处理和日期的每头猪的平均值。你可以试试

library(tidyverse)

dummy %>%
  select(-PIG) %>%
  melt() %>%
  group_by(TRT, variable) %>%
  summarise(mean = mean(value),
            sd = sd(value),
            upper = mean + 1.96 * sd,
            lower = mean - 1.96 * sd) %>%
  ungroup %>%
  ggplot(aes(variable, mean, color = TRT, group = TRT)) +
  geom_line() + geom_point() + geom_errorbar(aes(ymin = lower, ymax = upper, width = 0.2), position = ) +
  xlab("date") + ylab("mean of pig's weights")

【讨论】:

以上是关于如何使用误差线和 p 值绘制每天的治疗平均值?的主要内容,如果未能解决你的问题,请参考以下文章

在 R 中的折线图中添加误差线(ggplot)

如何从普罗米修斯绘制每天的平均值

带有误差条的散点图

ggplot2 中的误差线和线条不匹配

minitab方差分析得出F值P值等数据后如何识别显著性?

1.9.8