Mercurial > repos > arkarachai-fungtammasan > microsatellite_ngs
comparison combinedprobforallelecombination.py @ 0:20ab85af9505
Uploaded
author | arkarachai-fungtammasan |
---|---|
date | Fri, 03 Oct 2014 20:54:30 -0400 |
parents | |
children |
comparison
equal
deleted
inserted
replaced
-1:000000000000 | 0:20ab85af9505 |
---|---|
1 import sys | |
2 import collections | |
3 import math | |
4 SAMPLINGCOL=11 | |
5 ALLELE1COL=7 | |
6 ALLELE2COL=8 | |
7 SIGNCOL=4 | |
8 readprofileCOL=2 | |
9 motifCOL=3 | |
10 filaname=sys.argv[1] | |
11 fd=open(filaname) | |
12 lines=fd.readlines() | |
13 binomialcombine=collections.defaultdict(list) | |
14 for line in lines: | |
15 temp=line.strip().split('\t') | |
16 allelelist=[] | |
17 allelelist.append(int(temp[ALLELE1COL-1])) | |
18 allelelist.append(int(temp[ALLELE2COL-1])) | |
19 allelelist.sort() | |
20 #allelelist=map(str,allelelist) | |
21 alleleave=str(allelelist[0])+'_'+str(allelelist[1]) | |
22 #alleleave=str(sum(allelelist)/2.0) | |
23 ##alleleave=str(allelelist[0])+'_'+str(allelelist[1]) | |
24 totalcov=len(temp[readprofileCOL-1].split(',')) | |
25 motif=temp[motifCOL-1] | |
26 samplingvalue=float(temp[SAMPLINGCOL-1]) | |
27 SIGN=1 | |
28 binomialcombine[(totalcov,alleleave,motif)].append(SIGN*samplingvalue) | |
29 allkeys= binomialcombine.keys() | |
30 allkeys.sort() | |
31 ##print allkeys | |
32 print 'read_depth'+'\t'+'allele'+'\t'+'heterozygous_prob'+'\t'+'motif' | |
33 for key in allkeys: | |
34 ##templist=[str(key[0]),key[1],str(sum(binomialcombine[key])),key[2],str(map(str,(binomialcombine[key])))] | |
35 templist=[str(key[0]),key[1],str(sum(binomialcombine[key])),key[2]] | |
36 | |
37 print '\t'.join(templist) | |
38 #print allkeys#,binomialcombine | |
39 | |
40 | |
41 |