R中的双向ANOVA后各组的多重比较(事后)

问题描述 投票:0回答:1

我对R还是很陌生,需要一些帮助使其进行所需的分析。我有一个这样的数据框(简化):

   Gene time      Expression
1    Gene1       W1  18.780294
2    Gene2       W1  13.932397
3    Gene3       W1  20.877093
4    Gene1       W2   9.291295
5    Gene2       W2  10.939570
6    Gene3       W2  12.236713
7    Gene1       W3  13.810722
8    Gene2       W3  23.944473
9    Gene3       W3  17.355429

我想知道每个时间点(第1周,第2周,第3周...)的基因(基因1、2、3,)的平均'表达'值之间是否存在显着差异。例如,我想知道在第3周(第3周)Gene1的表达是否与Gene2显着不同我已经执行了方差分析和TukeyHSD

my_ANOVA = aov(Expression ~ Gene , data = my_Data)
summary(my_ANOVA)

my_posthoc =TukeyHSD(my_ANOVA, which = "Gene") 
my_posthoc

结果是

  Tukey multiple comparisons of means
    95% family-wise confidence level

Fit: aov(formula = Expression ~ Gene, data = my_Data)

$Gene
                 diff       lwr      upr     p adj
Gene2-Gene1 2.3113763 -11.24096 15.86371 0.8631245
Gene3-Gene1 2.8623080 -10.69002 16.41464 0.8002795
Gene3-Gene2 0.5509317 -13.00140 14.10326 0.9914716

它为我提供了整个时间轴上Gene1与Gene2的总比较。但是我想特别知道在时间W1,基因1和2是否不同,或者在时间W3呢?

r anova tukey
1个回答
0
投票

[如果您只是想按时间拆分数据并分别运行每个分析,尽管数据集太小而无法产生可用的结果,这很简单:

my_Data.W <- split(my_Data, my_Data$time)
lapply(1:3, function(x) summary(aov(Expression~Gene, data=my_Data.W[[x]])))
lapply(1:3, function(x) TukeyHSD(aov(Expression~Gene, data=my_Data.W[[x]])))
© www.soinside.com 2019 - 2024. All rights reserved.