Off topic:Same results using fisher.test
0
0
Entering edit mode
6.1 years ago
sugus ▴ 150

Hi guys,

I want to use fisher.test() to perform association analysis but I meet a confused problem.

In a test data, different "alternative" will derive to different pValue

> fisher.test(c(1,0,1,0,0,0,1,1,1,1,1,1),c(1,0,1,1,1,1,0,0,1,0,0,0))

    Fisher's Exact Test for Count Data

data:  c(1, 0, 1, 0, 0, 0, 1, 1, 1, 1, 1, 1) and c(1, 0, 1, 1, 1, 1, 0, 0, 1, 0, 0, 0)
p-value = 0.5455
alternative hypothesis: true odds ratio is not equal to 1
95 percent confidence interval:
 0.00319446 4.50042353
sample estimates:
odds ratio 
  0.230358 

> fisher.test(c(1,0,1,0,0,0,1,1,1,1,1,1),c(1,0,1,1,1,1,0,0,1,0,0,0),alternative = "less")

    Fisher's Exact Test for Count Data

data:  c(1, 0, 1, 0, 0, 0, 1, 1, 1, 1, 1, 1) and c(1, 0, 1, 1, 1, 1, 0, 0, 1, 0, 0, 0)
p-value = 0.2727
alternative hypothesis: true odds ratio is less than 1
95 percent confidence interval:
 0.000000 3.151343
sample estimates:
odds ratio 
  0.230358

But in a larger data which is also binary entries with 0 and 1, the pValue is perfectly the same! Why?

> as.numeric(x)
  [1] 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 0 1 0 0 0 0 0 0 0 0 0
 [55] 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0
[109] 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
[163] 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
[217] 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0
> as.numeric(y)
  [1] 0 0 0 0 1 1 1 0 0 0 0 0 1 1 0 1 0 0 1 0 0 1 1 0 1 0 0 0 0 1 1 1 1 1 1 1 1 0 0 1 0 1 0 0 1 0 1 0 1 1 1 1 1 1
 [55] 1 0 1 0 0 1 0 1 0 0 1 1 1 0 0 0 0 0 0 0 0 1 0 0 0 1 1 0 1 1 1 0 1 0 0 0 0 0 1 1 1 1 0 1 1 1 1 1 0 1 1 1 1 0
[109] 0 0 0 1 1 1 1 0 1 1 1 1 1 1 1 0 1 0 1 1 0 1 1 0 1 0 1 1 1 1 1 1 1 0 0 0 1 0 1 0 0 0 0 1 0 1 1 0 1 0 0 0 1 1
[163] 0 0 1 1 0 0 1 1 1 0 0 0 0 0 0 0 0 0 1 1 1 0 1 0 1 0 1 0 0 1 1 1 1 0 1 1 0 0 0 1 1 1 1 1 0 1 1 0 0 1 0 0 1 1
[217] 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 0 1 1 1 1 0 1 1
> fisher.test(as.numeric(x),as.numeric(y),alternative = "two.side")

    Fisher's Exact Test for Count Data

data:  as.numeric(x) and as.numeric(y)
p-value = 0.0002977
alternative hypothesis: true odds ratio is not equal to 1
95 percent confidence interval:
 0.001366782 0.412310161
sample estimates:
odds ratio 
0.05916957 

> fisher.test(as.numeric(x),as.numeric(y),alternative = "less")

    Fisher's Exact Test for Count Data

data:  as.numeric(x) and as.numeric(y)
p-value = 0.0002977
alternative hypothesis: true odds ratio is less than 1
95 percent confidence interval:
 0.000000 0.337174
sample estimates:
odds ratio 
0.05916957

Hope somebody could give this an explaination. Thx a lot!

fisher.test two-side one-side • 782 views
ADD COMMENT
This thread is not open. No new answers may be added
Traffic: 2072 users visited in the last hour
Help About
FAQ
Access RSS
API
Stats

Use of this site constitutes acceptance of our User Agreement and Privacy Policy.

Powered by the version 2.3.6