annotate scripts/S02a_codon_counting.py @ 0:78dd6454f6f0 draft

planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
author abims-sbr
date Tue, 02 May 2017 04:20:51 -0400
parents
children 988467f963f0
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
1 #!/usr/bin/python
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
2
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
3 #python codoncounting.py alignement_file
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
4 #Warning!! alignement_file should always be preceded by a path, at least ./
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
5 #Warning!! pairs.txt should be located in the same folder as alignement_file
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
6
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
7 #the script counts the number of codons, amino acids, and types of amino acids in sequences, as well as the mutation bias from one item to another between 2 sequences
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
8 #counting is then compared to empirical p-values, obtained from bootstrapped sequences obtained from a subset of sequences
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
9 #the script takes as input the DNA alignment (fasta format): python codoncounting.py file_path.fasta
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
10 #in the output files, the pvalues indicate the position of the observed data in a distribution of empirical countings obtained from a resample of the data. Values above 0.95 indicate a significantly higher counting, values under 0.05 a significantly lower counting
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
11
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
12 #the script automatically reads the sequences to compare from a file that must be called pairs.txt and located with the .fasta file
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
13 #in the pairs.txt file, sequences (let's assume X, Y, Z, U, V) pairs must be written as 'X Y\nU V\nZ V'
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
14 #in this case, codoncounting will count the occurence of codons, amino acids, and types of amino acids in X, U, Z, and count the mutation bias from Y to X, V to U and V to Z
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
15 #you can add comments in the pairs.txt file inbetween lines, beginning with '#'. E.G. 'X Y\n#This is my comment\nU V\nZ V'
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
16 #X, Y, Z, U, V must be character strings contained in the sequences names in the .fasta file (and be specific to each of them)
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
17 #in pairs.txt, you must write how should be built the bootstrapped resampling of sequences. This must be formated as:'X Y\nbackground: length iterration plusminus listofspecies\nU V\nZ V', explanation below
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
18 #backgrounds must be excplicitely written in the pairs.txt file (the script still integers default parameters). This implies that the first line of pairs.txt should be a background line
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
19 #by default, once the background has been determined, it will be applied to each subsequent analysis until another background is written
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
20 #e.g. 'background: length1 iterration1 plusminus1 listofspecies1\nU V\nZ V\nbackground: length2 iterration2 plusminus2 listofspecies2\nX Y' the first background is applied to U V and Z V and the 2nd background to X Y
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
21
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
22
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
23 #the script resamples random pairs of aligned codon to determine what countings can be expected under the hypothesis of an homogenous dataset
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
24 #countings are performed on each generated random alignement, thousands of alignments allow to draw a gaussian distribution of the countings
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
25 #then the script simply checks whether the observed data are within the 5% lowest or 5% highest values of the distribution
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
26 #in background: length iterration plusminus listofspecies
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
27 #-> length is the number of pairs of codons in each generated alignments (effect on the robustness on the countings performed on this alignement)
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
28 #-> iterration is the number of alignments that will be generated (effect on the resolution of the gaussian distribution)
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
29 #-> plusminus can be either '+' or '-', '+' indicates that the following species only must be resampled, '-' that the following species must be excluded from the resampling
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
30 #-> listofspecies is the list of species (names contained in the sequences names from the fasta file) that must be included or excluded from the sampling. You can also write 'all' to include every species (in this case, plusminus parameter is ignored)
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
31 #full example: background 5000 10000 + melanogaster elegans sapiens
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
32 #iterration shouldn't be lower that 1000 to have a relatively smooth gaussian distribution, length shouldn't be lower as 1000 to detect codons with relatively low occurence (<1%)
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
33 #for the list of species, you can try to form subgroups depending on the studied parameter (e.g. comparing a terrestrial species with a background composed of marine species)
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
34
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
35
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
36 #added: also counts GC3 and IVYWREL
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
37 #added: also counts GC12, CvP bias and EK/QH
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
38 #added: also counts purine load and PAYRE/SDGM
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
39
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
40
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
41 def viable(seqs,pos):
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
42 r=0
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
43 compt=0
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
44 for i in range(len(seqs)):
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
45 if i%2==1:
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
46 if not '-' in seqs[i][pos:pos+3]:
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
47 compt+=1
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
48 if compt>1:
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
49 r=1
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
50 return r
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
51
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
52 def substrcountings(table,pvalues):
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
53
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
54 string=[]
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
55 names=[]
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
56 numbers=[]
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
57 stats=['pvalues']
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
58 for f in table:
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
59 names.append(' %s' % f)
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
60 numbers.append(' %f' % table[f])
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
61 stats.append(' %f' % pvalues[f])
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
62 names.append('\n')
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
63 numbers.append('\n')
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
64 stats.append('\n')
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
65 string=names+numbers+stats
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
66
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
67 return string
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
68
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
69 def substrbiases(table,pvalues):
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
70
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
71 string=[]
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
72 names=[]
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
73 numbers=[]
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
74 stats=['pvalues']
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
75 for f in table:
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
76 for g in table[f]:
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
77 names.append(' %s to %s' % (g,f))
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
78 numbers.append(' %f' % table[f][g])
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
79 stats.append(' %f' % pvalues[f][g])
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
80 names.append('\n')
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
81 numbers.append('\n')
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
82 stats.append('\n')
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
83 string=names+numbers+stats
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
84
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
85 return string
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
86
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
87
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
88 def strcountings(codons, aa, classif,codonspvalues,aapvalues,classifpvalues,GC3,GC12,IVYWREL,EKQH,PAYRESDGM,purineload,CvP):
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
89
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
90 subcodons=['occurence of codons\n']+substrcountings(codons,codonspvalues)
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
91 subaa=subcodons+['\noccurence of amino_acids\n']+substrcountings(aa,aapvalues)
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
92 subclassif=subaa+['\noccurence of amino_acid types\n']+substrcountings(classif,classifpvalues)
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
93
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
94 string=subclassif+[('\nGC3 GC12 IVYWREL EK/QH PAYRE/SDGM Purine_load CvP\n%f %f %f %f %f %f %f\n' % (GC3, GC12, IVYWREL, EKQH, PAYRESDGM, purineload, CvP))]
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
95
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
96 return string
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
97
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
98
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
99 def strbiases(codons, aa, classif,codonspvalues,aapvalues,classifpvalues):
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
100
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
101 subcodons=['codons mutations biases\n']+substrbiases(codons,codonspvalues)
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
102 subaa=subcodons+['\namino acids mutation biases\n']+substrbiases(aa,aapvalues)
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
103 subclassif=subaa+['\ntypes of amino_acids mutation biasecodoncountingv22.pys\n']+substrbiases(classif,classifpvalues)
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
104
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
105 return subclassif
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
106
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
107
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
108 def testpvalue(bootstrap,value,iterration): #computes where the observed value is located in the expected counting distribution
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
109
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
110 maxval=iterration-1
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
111 minval=0
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
112 testval=(maxval+minval)/2
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
113 while maxval-minval > 1:
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
114 if value > bootstrap[testval]:
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
115 minval=testval
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
116 testval=(maxval+minval)/2
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
117 elif value < bootstrap[testval]:
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
118 maxval=testval
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
119 testval=(maxval+minval)/2
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
120 else:
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
121 break
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
122 pvalue=(testval+1)/float(iterration+1)
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
123
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
124 return pvalue
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
125
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
126
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
127 def gettables(content,reversecode,code,classif): #generates the tables contening all the countings
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
128
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
129 if content==[]:
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
130 codonscount={k:[] for k in reversecode}
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
131 aacount={k:[] for k in code}
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
132 aaclassifcount={k:[] for k in classif}
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
133
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
134 codons={}
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
135 for k in reversecode:
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
136 codons[k]={}
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
137 for q in reversecode:
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
138 codons[k][q]=[]
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
139 aa={}
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
140 for k in code:
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
141 aa[k]={}
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
142 for q in code:
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
143 aa[k][q]=[]
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
144 aaclassif={}
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
145 for k in classif:
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
146 aaclassif[k]={}
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
147 for q in classif:
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
148 aaclassif[k][q]=[]
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
149
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
150 elif content==0:
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
151 codonscount={k:0 for k in reversecode}
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
152 aacount={k:0 for k in code}
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
153 aaclassifcount={k:0 for k in classif}
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
154
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
155 codons={}
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
156 for k in reversecode:
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
157 codons[k]={}
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
158 for q in reversecode:
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
159 codons[k][q]=0
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
160 aa={}
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
161 for k in code:
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
162 aa[k]={}
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
163 for q in code:
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
164 aa[k][q]=0
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
165 aaclassif={}
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
166 for k in classif:
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
167 aaclassif[k]={}
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
168 for q in classif:
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
169 aaclassif[k][q]=0
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
170
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
171 return codonscount, aacount, aaclassifcount, codons, aa, aaclassif
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
172
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
173
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
174 def countings(seq1,seq2,code,classif,reversecode,reverseclassif):
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
175 #countings actually counts occurence and mutation bias of codons, amino acids and types of amino acids
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
176
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
177 codonscount, aacount, aaclassifcount, codons, aa, aaclassif=gettables(0,reversecode,code,classif)
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
178 codonscount2, aacount2, aaclassifcount2, _, _, _=gettables(0,reversecode,code,classif)
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
179
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
180 G12=0
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
181 C12=0
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
182 G3=0
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
183 C3=0
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
184 A=0
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
185 T=0
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
186
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
187 i=0
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
188 compcodons=0
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
189 while i<len(seq1)-1:
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
190 if not '-' in seq1[i:i+3]: #coutings of occurences is obtained from the maximum of full codons being in the sequence
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
191 compcodons+=1
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
192
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
193 if (seq1[i]=='g'):
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
194 G12+=1
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
195 if (seq1[i]=='c'):
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
196 C12+=1
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
197 if (seq1[i+1]=='g'):
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
198 G12+=1
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
199 if (seq1[i+1]=='c'):
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
200 C12+=1
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
201 if (seq1[i+2]=='g'):
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
202 G3+=1
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
203 if (seq1[i+2]=='c'):
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
204 C3+=1
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
205
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
206 if (seq1[i]=='a'):
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
207 A+=1
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
208 if (seq1[i]=='t'):
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
209 T+=1
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
210 if (seq1[i+1]=='a'):
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
211 A+=1
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
212 if (seq1[i+1]=='t'):
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
213 T+=1
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
214 if (seq1[i+2]=='a'):
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
215 A+=1
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
216 if (seq1[i+2]=='t'):
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
217 T+=1
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
218
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
219 codonscount[seq1[i:i+3]]+=1
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
220 aacount[reversecode[seq1[i:i+3]]]+=1
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
221 aaclassifcount[reverseclassif[reversecode[seq1[i:i+3]]]]+=1
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
222 if (not '-' in seq1[i:i+3]) and (not '-' in seq2[i:i+3]) and (not seq1[i:i+3]==seq2[i:i+3]): #mutation biases are count from non ambiguous pairs of codons in the 2 sequences
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
223 codons[seq1[i:i+3]][seq2[i:i+3]]+=1
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
224 codonscount2[seq2[i:i+3]]+=1
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
225 aacount2[reversecode[seq2[i:i+3]]]+=1
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
226 aaclassifcount2[reverseclassif[reversecode[seq2[i:i+3]]]]+=1
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
227 i+=3
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
228
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
229 IVYWREL=aacount['ile']+aacount['val']+aacount['tyr']+aacount['trp']+aacount['arg']+aacount['glu']+aacount['leu']
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
230 EKQH=(aacount['glu']+aacount['lys'])/max([float(aacount['gln']+aacount['his']),1])
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
231 PAYRESDGM=(aacount['pro']+aacount['ala']+aacount['tyr']+aacount['arg']+aacount['glu'])/max([float(aacount['ser']+aacount['asp']+aacount['gly']+aacount['met']),1])
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
232
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
233 for i in codons:
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
234 for j in codons[i]:
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
235 if not reversecode[i]==reversecode[j]:
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
236 aa[reversecode[i]][reversecode[j]]+=codons[i][j]
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
237
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
238 for i in aa:
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
239 for j in aa[i]:
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
240 if not reverseclassif[i]==reverseclassif[j]:
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
241 aaclassif[reverseclassif[i]][reverseclassif[j]]+=aa[i][j]
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
242
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
243
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
244 for f in codons: #mutations from codon C in sequence X to codon c in sequence Y are normalized by the total number of codons C in sequence X
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
245 for g in codons[f]:
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
246 codons[f][g]=codons[f][g]/float(max([codonscount2[g],1]))
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
247 for f in aa:
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
248 for g in aa[f]:
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
249 aa[f][g]=aa[f][g]/float(max([aacount2[g],1]))
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
250 for f in aaclassif:
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
251 for g in aaclassif[f]:
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
252 aaclassif[f][g]=aaclassif[f][g]/float(max([aaclassifcount2[g],1]))
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
253 for f in codonscount: #occurences are normalized by the total number of non ambiguous codons in the sequence
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
254 codonscount[f]=codonscount[f]/float(compcodons)
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
255 for f in aacount:
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
256 aacount[f]=aacount[f]/float(compcodons)
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
257 for f in aaclassifcount:
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
258 aaclassifcount[f]=aaclassifcount[f]/float(compcodons)
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
259
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
260 for f in codons:
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
261 for g in codons[f]:
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
262 if f==g:
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
263 break
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
264 if (codons[g][f]==0) and (codons[f][g])>0:
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
265 codons[f][g]=1
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
266 elif (codons[g][f]==0) and (codons[f][g])==0:
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
267 codons[f][g]=0
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
268 else:
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
269 x=codons[f][g]/codons[g][f]
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
270 codons[f][g]=-pow(2,1-x)+1
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
271
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
272 for f in aa:
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
273 for g in aa[f]:
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
274 if f==g:
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
275 break
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
276 if (aa[g][f]==0) and (aa[f][g])>0:
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
277 aa[f][g]=1
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
278 elif (aa[g][f]==0) and (aa[f][g])==0:
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
279 aa[f][g]=0
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
280 else:
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
281 x=aa[f][g]/aa[g][f]
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
282 aa[f][g]=-pow(2,1-x)+1
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
283
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
284 for f in aaclassif:
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
285 for g in aaclassif[f]:
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
286 if f==g:
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
287 break
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
288 if (aaclassif[g][f]==0) and (aaclassif[f][g])>0:
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
289 aaclassif[f][g]=1
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
290 elif (aaclassif[g][f]==0) and (aaclassif[f][g])==0:
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
291 aaclassif[f][g]=0
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
292 else:
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
293 x=aaclassif[f][g]/aaclassif[g][f]
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
294 aaclassif[f][g]=-pow(2,1-x)+1
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
295
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
296 GC3=(G3+C3)/float(compcodons)
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
297 GC12=(G12+C12)/float(2*compcodons)
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
298 purineload=(1000*(G12+G3+A-C12-C3-T))/float(3*compcodons)
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
299 IVYWREL=IVYWREL/float(compcodons)
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
300 CvP=aaclassifcount['charged']-aaclassifcount['polar']
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
301
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
302
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
303 return codonscount, aacount, aaclassifcount, codons, aa, aaclassif, GC3, GC12, IVYWREL, EKQH, PAYRESDGM, purineload, CvP
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
304
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
305
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
306 def sampling(inputfile,length,iterration,plusminus,species,code,classif,reversecode,reverseclassif):
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
307 #sampling provides 'iterations' pairs of sequences of 'length' non ambiguous codons obtained from the dataset specified by 'species' and 'plusminus'
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
308 #sort of bootstrap
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
309
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
310 codonscount, aacount, aaclassifcount, codons, aa, aaclassif=gettables([],reversecode,code,classif)
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
311
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
312 inputfile.seek(0) #generates the bootstrapped sequences
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
313 lines=[]
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
314 comp=-1
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
315 if species==['all']:
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
316 while 1:
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
317 line=inputfile.readline()[:-1]
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
318 if not line:
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
319 break
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
320 lines.append(line)
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
321 comp+=1
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
322 else:
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
323 if plusminus=='+':
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
324 while 1:
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
325 line1=inputfile.readline()[:-1]
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
326 if not line1:
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
327 break
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
328 line2=inputfile.readline()[:-1]
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
329 if any(spe in line1 for spe in species):
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
330 lines.append(line1)
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
331 lines.append(line2)
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
332 comp+=2
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
333 elif plusminus=='-':
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
334 while 1:
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
335 line1=inputfile.readline()[:-1]
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
336 if not line1:
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
337 break
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
338 line2=inputfile.readline()[:-1]
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
339 if not any(spe in line1 for spe in species):
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
340 lines.append(line1)
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
341 lines.append(line2)
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
342 comp+=2
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
343 l=len(lines[1])-1
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
344
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
345 for z in range(iterration):
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
346 if z%(iterration/10)==0:
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
347 print str(10*z/(iterration/10))+' %'
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
348 seqa=[]
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
349 seqb=[]
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
350 for i in range(length):
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
351 site=random.randrange(0,l,3)
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
352 while viable(lines,site)==0:
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
353 site=random.randrange(0,l,3)
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
354 a='---'
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
355 b='---'
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
356 while ('-' in a) or ('-' in b):
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
357 posa=2
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
358 posb=2
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
359 while posa==posb:
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
360 posa=random.randrange(1,comp+1,2)
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
361 posb=random.randrange(1,comp+1,2)
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
362 a=lines[posa][site:site+3]
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
363 b=lines[posb][site:site+3]
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
364 seqa.append(a)
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
365 seqb.append(b)
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
366 seqa=(''.join(seqa)).lower()
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
367 seqb=(''.join(seqb)).lower()
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
368
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
369 codonscounttemp, aacounttemp, aaclassifcounttemp, codonstemp, aatemp, aaclassiftemp, _, _, _, _, _, _, _=countings(seqa,seqb,code,classif,reversecode,reverseclassif)
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
370 for f in codonscount:
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
371 codonscount[f].append(codonscounttemp[f])
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
372 for f in aacount:
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
373 aacount[f].append(aacounttemp[f])
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
374 for f in aaclassifcount:
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
375 aaclassifcount[f].append(aaclassifcounttemp[f])
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
376 for f in codons:
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
377 for g in codons[f]:
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
378 codons[f][g].append(codonstemp[f][g])
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
379 for f in aa:
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
380 for g in aa[f]:
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
381 aa[f][g].append(aatemp[f][g])
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
382 for f in aaclassif:
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
383 for g in aaclassif[f]:
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
384 aaclassif[f][g].append(aaclassiftemp[f][g]) #counts the occurences and mutation biases for each the bootstrapped sequence
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
385
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
386 print '100 %'
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
387
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
388 for f in codonscount:
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
389 codonscount[f].sort()
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
390 for f in aacount:
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
391 aacount[f].sort()
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
392 for f in aaclassifcount:
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
393 aaclassifcount[f].sort()
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
394 for f in codons:
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
395 for g in codons[f]:
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
396 codons[f][g].sort()
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
397 for f in aa:
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
398 for g in aa[f]:
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
399 aa[f][g].sort()
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
400 for f in aaclassif:
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
401 for g in aaclassif[f]:
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
402 aaclassif[f][g].sort()
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
403
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
404 return codonscount, aacount, aaclassifcount, codons, aa, aaclassif
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
405
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
406 ################
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
407 ######RUN#######
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
408 ################
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
409
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
410 import string, os, sys, re, random
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
411 from math import pow
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
412 PATH = sys.argv[1]
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
413 length=1000
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
414 iterration=100
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
415 background=0
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
416 speciesboot=['all']
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
417 stringcounts=[' ']
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
418 stringbiases=[' ']
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
419 towrite=1
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
420
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
421 code={'phe':['ttt','ttc'],'leu':['tta','ttg','ctt','ctc','cta','ctg'],'ile':['att','atc','ata'],'met':['atg'],'val':['gtt','gtc','gta','gtg'],'ser':['tct','tcc','tca','tcg','agt','agc'],'pro':['cct','cca','ccg','ccc'],'thr':['act','acc','aca','acg'],'ala':['gct','gcc','gca','gcg'],'tyr':['tat','tac'],'his':['cat','cac'],'gln':['caa','cag'],'asn':['aat','aac'],'lys':['aaa','aag'],'asp':['gat','gac'],'glu':['gaa','gag'],'cys':['tgt','tgc'],'trp':['tgg'],'arg':['cgt','cgc','cga','cgg','aga','agg'],'gly':['ggt','ggc','gga','ggg']}
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
422 classif={'unpolar':['gly','ala','val','leu','met','ile'],'polar':['ser','thr','cys','pro','asn','gln'],'charged':['lys','arg','his','asp','glu'],'aromatics':['phe','tyr','trp']}
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
423
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
424 reversecode={v:k for k in code for v in code[k]}
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
425 reverseclassif={v:k for k in classif for v in classif[k]}
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
426
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
427 pairs=open("pairs.txt","r") #finds the pairs to analyze
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
428 pairlist=[]
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
429 while 1:
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
430 line=pairs.readline()
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
431 if not line:
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
432 #if not lastline.startswith('#'):
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
433 #pairlist[-1][1]=string.split(lastline,' ')[1]
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
434 break
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
435 #lastline=line
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
436 if not line.startswith('#'):
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
437 if not line.startswith('background:'):
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
438 if background==0:
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
439 pairlist.append([string.split(line,' ')[0],string.split(line,' ')[1][:-1]])
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
440 elif background==1:
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
441 pairlist.append([string.split(line,' ')[0],string.split(line,' ')[1][:-1],length,iterration,plusminus,species])
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
442 background=0
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
443 else:
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
444 parameters=string.split(line[:-1],': ')[1]
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
445 listparameters=string.split(parameters,' ')
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
446 length=int(listparameters[0])
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
447 iterration=int(listparameters[1])
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
448 plusminus=listparameters[2]
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
449 species=listparameters[3:]
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
450 background=1
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
451
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
452
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
453 concat=open(sys.argv[1],"r")
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
454
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
455 for p in pairlist: #pairs analysis
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
456 concat.seek(0)
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
457 while 1:
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
458 line=concat.readline()
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
459 seq=concat.readline()
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
460 if p[0] in line:
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
461 seq1=seq[:-1].lower()
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
462 elif p[1] in line:
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
463 seq2=seq[:-1].lower()
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
464 if not line:
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
465 break
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
466
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
467 if len(p)>2: #bootstrap simulations if the background changed
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
468 length=p[2]
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
469 iterration=p[3]
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
470 plusminus=p[4]
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
471 species=p[5]
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
472 applause='background: '+str(length)+' '+str(iterration)+' '+str(plusminus)+' '+' '.join(species)
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
473 print applause
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
474 stringcounts.append(applause+'\n\n\n')
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
475 stringbiases.append(applause+'\n\n\n')
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
476 codonscountboot, aacountboot, aaclassifcountboot, codonsboot, aaboot, aaclassifboot=sampling(concat,length,iterration,plusminus,species,code,classif,reversecode,reverseclassif)
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
477 print str(p[0])+' vs '+str(p[1])
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
478 codonscount, aacount, aaclassifcount, codons, aa, aaclassif, GC3, GC12, IVYWREL, EKQH, PAYRESDGM, purineload, CvP=countings(seq1,seq2,code,classif,reversecode,reverseclassif)
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
479 codonscountpvalue, aacountpvalue, aaclassifcountpvalue, codonspvalue, aapvalue, aaclassifpvalue=gettables(0,reversecode,code,classif)
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
480
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
481
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
482 for f in codons: #tests the countings and saves the pvalues
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
483 for g in codons[f]:
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
484 codonspvalue[f][g]=testpvalue(codonsboot[f][g],codons[f][g],iterration)
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
485 for f in aa:
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
486 for g in aa[f]:
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
487 aapvalue[f][g]=testpvalue(aaboot[f][g],aa[f][g],iterration)
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
488 for f in aaclassif:
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
489 for g in aaclassif[f]:
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
490 aaclassifpvalue[f][g]=testpvalue(aaclassifboot[f][g],aaclassif[f][g],iterration)
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
491
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
492
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
493 for substring in stringcounts: #to not write twice the same counting with the same background
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
494 if (("counting of %s" % p[0]) in substring) and (applause in substring):
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
495 towrite=0
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
496
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
497 if towrite:
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
498 for f in codonscount:
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
499 codonscountpvalue[f]=testpvalue(codonscountboot[f],codonscount[f],iterration)
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
500 for f in aacount:
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
501 aacountpvalue[f]=testpvalue(aacountboot[f],aacount[f],iterration)
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
502 for f in aaclassifcount:
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
503 aaclassifcountpvalue[f]=testpvalue(aaclassifcountboot[f],aaclassifcount[f],iterration)
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
504
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
505 stringcounts=stringcounts[:-1]+[''.join([stringcounts[-1],("counting of %s\n\n" % p[0])+''.join(strcountings(codonscount, aacount, aaclassifcount,codonscountpvalue,aacountpvalue,aaclassifcountpvalue,GC3,GC12,IVYWREL,EKQH,PAYRESDGM,purineload,CvP))+'\n\n'])]
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
506 else:
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
507 towrite=1
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
508
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
509 stringbiases.append("mutation biases from %s to %s\n\n" % (p[1], p[0]))
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
510 stringbiases=stringbiases+strbiases(codons, aa, aaclassif,codonspvalue,aapvalue,aaclassifpvalue)
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
511 stringbiases.append('\n\n')
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
512 print 'done'
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
513
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
514 concat.close()
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
515
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
516 stringcounts=''.join(stringcounts)
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
517 stringbiases=''.join(stringbiases)
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
518 # results=open(os.path.dirname(PATH)+"/"+string(os.path.split(PATH)[1],' ')[0]+'_results.txt',"w")
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
519 results=open('./codoncounting_results.txt',"w")
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
520 results.write("%s" % stringcounts)
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
521 results.write("\n\n")
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
522 results.write("%s" % stringbiases)
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
523 results.close()
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
524
78dd6454f6f0 planemo upload for repository htpps://github.com/abims-sbr/adaptearch commit 73670b26c75bb6c1a6332481920f3036314de364
abims-sbr
parents:
diff changeset
525