changeset 16:fcfdb2607cb8 draft

Uploaded
author rlegendre
date Wed, 13 May 2015 04:34:59 -0400
parents 702e60e819c2
children c87c40e642af
files get_codon_frequency.py
diffstat 1 files changed, 16 insertions(+), 4 deletions(-) [+]
line wrap: on
line diff
--- a/get_codon_frequency.py	Mon May 11 09:53:08 2015 -0400
+++ b/get_codon_frequency.py	Wed May 13 04:34:59 2015 -0400
@@ -325,7 +325,7 @@
                 # # cond2 = moyenne of replicats cond1divided by max
                 cond2_val[i] = ((cond2_1[i] / sum21 + cond2_2[i] / sum22) / 2)
                 cond2[i] = ((cond2_1[i] + cond2_2[i]) / 2)
-                # # standard deviation = absolute value of diffence between replicats of cond2
+                # # standard deviation = absolute value of difference between replicats of cond2
                 std_cond2.append(std(array([((cond2_1[i]) * 100 / sum21), ((cond2_2[i]) * 100 / sum22)])))
                 # # max value for each codon
                 max_val.append(max((cond1_1[i] / sum11 + cond1_2[i] / sum12) / 2, (cond2_1[i] / sum21 + cond2_2[i] / sum22) / 2))
@@ -379,9 +379,15 @@
         
         # write result
         with open(outfile, 'w') as out :
-            out.write('Codon\tRaw_' + c1 + '\tRaw_' + c2 + '\tNorm_' + c1 + '\tNorm_' + c2 + '\tFC\tFC_' + c1 + '\tFC_' + c2 + '\n')
+            out.write('Codon\tRaw_' + c1 + '\tRaw_' + c2 + '\tNorm_' + c1 + '\tNorm_' + c2 + '\tFC(Mut/WT)\n')
             for i in codon_sorted:
-                out.write(i + '\t' + str(cond1[i]) + '\t' + str(cond2[i]) + '\t' + str(cond1_norm[i]) + '\t' + str(cond2_norm[i]) + '\t' + str(cond2_norm[i] / cond1_norm[i]) + '\t' + str((cond2_1[i] / sum21) / (cond1_1[i] / sum11)) + '\t' + str((cond2_2[i] / sum22) / (cond1_1[i] / sum11)) + '\n')
+                ## if global foldchange is equal to zero
+                if cond1_norm[i] == 0 and cond2_norm[i] == 0:
+                    out.write(i + '\t' + str(cond1[i]) + '\t' + str(cond2[i]) + '\t' + str(cond1_norm[i]) + '\t' + str(cond2_norm[i]) + '\t1.0\n')
+                elif cond1_norm[i] == 0 :
+                    out.write(i + '\t' + str(cond1[i]) + '\t' + str(cond2[i]) + '\t' + str(cond1_norm[i]) + '\t' + str(cond2_norm[i]) + '\t0.0\n')
+                else: 
+                    out.write(i + '\t' + str(cond1[i]) + '\t' + str(cond2[i]) + '\t' + str(cond1_norm[i]) + '\t' + str(cond2_norm[i]) + '\t' + str(cond2_norm[i] / cond1_norm[i]) + '\n')
             chi = stats.chisquare(observed, expected)
             out.write('Khi2 test\n')
             out.write('T : ' + str(chi[0]) + '; p-value : ' + str(chi[1]) + '\n')
@@ -484,7 +490,12 @@
         with open(outfile, 'w') as out :
             out.write('Codon\tRaw_' + c1 + '\tRaw_' + c2 + '\tNorm_' + c1 + '\tNorm_' + c2 + '\tFC(Mut/WT)\n')
             for i in codon_sorted:
-                out.write(i + '\t' + str(cond1[i]) + '\t' + str(cond2[i]) + '\t' + str(cond1_norm[i]) + '\t' + str(cond2_norm[i]) + '\t' + str(cond2_norm[i] / cond1_norm[i]) + '\n')
+                if cond1_norm[i] == 0 and cond2_norm[i] == 0:
+                    out.write(i + '\t' + str(cond1[i]) + '\t' + str(cond2[i]) + '\t' + str(cond1_norm[i]) + '\t' + str(cond2_norm[i]) + '\t1.0\n')
+                elif cond1_norm[i] == 0 :
+                    out.write(i + '\t' + str(cond1[i]) + '\t' + str(cond2[i]) + '\t' + str(cond1_norm[i]) + '\t' + str(cond2_norm[i]) + '\t0.0\n')
+                else:
+                    out.write(i + '\t' + str(cond1[i]) + '\t' + str(cond2[i]) + '\t' + str(cond1_norm[i]) + '\t' + str(cond2_norm[i]) + '\t' + str(cond2_norm[i] / cond1_norm[i]) + '\n')
             out.write('Khi2 test\n')
             chi = stats.chisquare(observed, expected)
             out.write('T : ' + str(chi[0]) + '; p-value : ' + str(chi[1]) + '\n')
@@ -606,6 +617,7 @@
     pl.ylabel('Foldchange of codon occupancy')
     ax.yaxis.set_ticks_position('left')
     ax.xaxis.set_ticks_position('bottom')
+    pl.ylim(-1,3)
     pl.title(site+" site")
     pl.savefig(dirout + '/fc_codons.png', format="png", dpi=340)