we are having difficulties calculating the significance of our between-group comparisons. We did multiple differential expression Analyses of different time-points and mutations. We analysed the differentially expressed genes for each comparison and created a Venn Diagram (VD) with this data for several comparisons.

We would now like to know if the number of genes common for this VD is significantly enriched.

The first choice was of course to do a Fisher's exact test. Here is an example: We have found these genes in one of our analyses total number of genes - 39179 the 2x2 table should looks like that:

         sigA3     nonSigA3
sigB3      128         4698
nonsigB3   102        34251

when calculating this in R it gives a very significant p-value

sig <- rbind(c(128, 4698), c(102,34251 ))

Fisher's Exact Test for Count Data

data:  sig
p-value < 2.2e-16
alternative hypothesis: true odds ratio is not equal to 1
95 percent confidence interval:
   6.984585 12.005568
sample estimates:
odds ratio 

But the problem is, That this is always significant, it doesn't really matter what numbers I put into the two groups. Even when I changed the numbers 34251 or 4698 to 500 (I tried each of them), the significance is always very very high.

Has anyone an idea, what is going on here? Am I using the wrong test here?

Thanks Assa

  • $\begingroup$ If you replaced 4698 and 34251 with 128 and 102, respectively, you would not find significance. $\endgroup$
    – EdM
    Jun 23, 2015 at 13:52
  • $\begingroup$ thanks, but what now? does this mean, it is the correct way to analyse it? I still find it suspicious when I can see such a wide range of numbers to still be significant. $\endgroup$ Jun 23, 2015 at 15:24

1 Answer 1


There is nothing wrong with the mechanics of the Fisher's test. It evaluates whether there is a difference in the proportions of cases among rows/columns. In your example, you have approximately equal numbers in the two entries of the sigA3 column, while replacing either of the values in the nonSigA3 column with 500 leads to a very large difference between the top and bottom values in the nonSigA3 column. So you shouldn't be surprised to find that Fisher's test reports significance in those examples.

With the large number of cases in each entry of the table, you might want to consider a standard chi-square test instead. Fisher's test is most useful when there is a small number of cases, and is based on assumptions that may make it too conservative.

The major issue is what you mean by "the number of genes common for this VD is significantly enriched": "enriched" versus what? The table you display (and the Fisher's or chi-square test used to evaluate it) essentially addresses whether the sig/nonSig determination under A3 differs depending on the determination under B3 (or equivalently, vice-versa). If that is what you mean by "enriched," then this is a valid way to proceed.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.