所以我绘制了一些这种格式的数据
Time SD Average Situation n se
我使用了这段代码
ggplot(data, aes(x=Time, y=Average, colour=Situation)) +
geom_errorbar(aes(ymin=Average-se, ymax=Average+se), width=.1) +
geom_line() +
geom_point()
我想在Exp和Control之间进行T.test,我希望使用星号'*来显示图中的重要性....我很难找到执行此操作的代码....我知道如何做一个正常的T.test但我真的希望那些带有星号的图表显示出重要性
答案 0 :(得分:0)
编辑我已根据您的评论重写了这一点,以提供适用于我的示例:
假设您想将t检验中的p值添加到图表中......
set.seed(1)
### data following OPs format
data <- data.frame(Time=seq(10),
Average=abs(rnorm(10)),
Situation=rep(letters[1:2], 5)
)
### get p value
pval <- t.test(data$Average[data$Situation=="a"],
data$Average[data$Situation=="b"])$p.value
### strip to 3 significant digits
pval <- signif(pval, 3)
### add asterisk if <0.05
pval <- ifelse(pval<0.05, paste0(pval, " *"), pval)
pval <- paste0("t-test \n p=", pval)
### plot as per OP
ggplot(data, aes(x=Time, y=Average, colour=Situation)) +
geom_line() +
geom_point()+
### annotate it near lower left corner
annotate("text",
x=0.25*max(data$Time),
y=0.25*max(data$Average),
label=pval)
给
有关更多选项,请参阅?annotate
。如果您想要p值的符号范围,则可以通过调用switch
而不是ifelse
来修改它。
更大的问题可能是t-test
是否适合时间依赖的结果......