I have next SNPs
data.frame structure
> str(SNPs)
'data.frame': 1703 obs. of 4 variables:
$ group: Factor w/ 2 levels "A","B": 1 1 1 1 1 1 1 1 1 1 ...
$ rs1 : Factor w/ 3 levels "D/D","I/D","I/I": 1 1 2 3 3 2 1 1 1 1 ...
$ rs2 : Factor w/ 3 levels "a/a","a/b","b/b": 3 3 2 3 3 2 2 3 3 2 ...
$ rs3 : Factor w/ 3 levels "G/G","G/T","T/T": 2 1 2 1 1 3 1 1 2 1 ...
...other rs
> head(SNPs)
group rs1 rs2 rs3 ...other rs
1 A D/D b/b G/T
2 A D/D b/b G/G
3 A I/D a/b G/T
4 A I/I b/b G/G
5 A I/I b/b G/G
6 A I/D a/b T/T
For example, I noticed that rs5 4b/4a
and rs6 G/G
in group A
very often occur together (see below). In group B
they very often occur together too. So I want to know - is it statistical regularity or not.
I can create table with all pairs in both groups
> SNPs$rs5_rs6 <- paste(SNPs$rs5, SNPs$rs6)
> tmp <- table(SNPs$rs5_rs6, SNPs$group)
> tmp
A B
4a/4a G/G 1 20
4b/4a G/G 31 83
4b/4a G/T 14 51
4b/4a T/T 1 0
4b/4b G/G 37 106
4b/4b G/T 35 119
4b/4b T/T 11 31
So, now I need compare (find p-value) group A and group B: 4a/4a G/G
in group A vs 4a/4a G/G
in group B, 4b/4a G/G
in group A vs 4b/4a G/G
in group B, 4b/4a G/T
in group A vs 4b/4a G/T
in group B and etc. Only this pairs/
How can I do that? I need p-values for all
> tmp
A B
4a/4a G/G 1 20 - p-value?
4b/4a G/G 31 83 - p-value?
4b/4a G/T 14 51 - p-value?
4b/4a T/T 1 0 - p-value?
4b/4b G/G 37 106 - p-value?
4b/4b G/T 35 119 - p-value?
4b/4b T/T 11 31 - p-value?
tmp
$\endgroup$chisq.test(tmp$A, tmp$B)
$\endgroup$tmp
and get 7 p-values: compare4a/4a G/G
in group A vs4a/4a G/G
in group B and get first p-value, compare4b/4a G/G
in group A vs4b/4a G/G
in group B and get the second p-value and etc. $\endgroup$