Mercurial > repos > davidvanzessen > mutation_analysis
diff mutation_analysis.py @ 104:603a10976e9c draft
Uploaded
author | davidvanzessen |
---|---|
date | Wed, 22 Jun 2016 10:07:28 -0400 |
parents | 5ffbf40cdd4b |
children | 01c9993865af |
line wrap: on
line diff
--- a/mutation_analysis.py Tue Jun 21 05:30:16 2016 -0400 +++ b/mutation_analysis.py Wed Jun 22 10:07:28 2016 -0400 @@ -81,6 +81,7 @@ AALength = (int(max(mutationList, key=lambda i: int(i[4]) if i[4] else 0)[4]) + 1) # [4] is the position of the AA mutation, None if silent AA_mutation = [0] * AALength +AA_mutation_dic = {"ca": AA_mutation[:], "cg": AA_mutation[:], "cm": AA_mutation[:], "un": AA_mutation[:]} AA_mutation_empty = AA_mutation[:] aa_mutations_by_id_file = outfile[:outfile.rindex("/")] + "/aa_id_mutations.txt" @@ -89,8 +90,11 @@ AA_mutation_for_ID = AA_mutation_empty[:] for mutation in mutationListByID[ID]: if mutation[4]: - AA_mutation[int(mutation[4])] += 1 - AA_mutation_for_ID[int(mutation[4])] += 1 + AA_mutation_position = int(mutation[4]) + AA_mutation[AA_mutation_position] += 1 + AA_mutation_for_ID[AA_mutation_position] += 1 + clss = genedic[ID][:2] + AA_mutation_dic[clss][AA_mutation_position] += 1 o.write(ID + "\t" + "\t".join([str(x) for x in AA_mutation_for_ID[1:]]) + "\n") @@ -149,6 +153,27 @@ o.write("mutations.at.position\t" + "\t".join([str(x) for x in AA_mutation[1:]]) + "\n") o.write("AA.at.position\t" + "\t".join([str(x) for x in absentAA]) + "\n") + +aa_mutations_file_ca = outfile[:outfile.rindex("/")] + "/aa_mutations_ca.txt" +with open(aa_mutations_file_ca, 'w') as o: + o.write("row.name\t" + "\t".join([str(x) for x in range(1, AALength-1)]) + "\n") + o.write("mutations.at.position\t" + "\t".join([str(x) for x in AA_mutation_dic["ca"][1:]]) + "\n") + o.write("AA.at.position\t" + "\t".join([str(x) for x in absentAA]) + "\n") + + +aa_mutations_file_cg = outfile[:outfile.rindex("/")] + "/aa_mutations_cg.txt" +with open(aa_mutations_file_cg, 'w') as o: + o.write("row.name\t" + "\t".join([str(x) for x in range(1, AALength-1)]) + "\n") + o.write("mutations.at.position\t" + "\t".join([str(x) for x in AA_mutation_dic["cg"][1:]]) + "\n") + o.write("AA.at.position\t" + "\t".join([str(x) for x in absentAA]) + "\n") + + +aa_mutations_file_cm = outfile[:outfile.rindex("/")] + "/aa_mutations_cm.txt" +with open(aa_mutations_file_cm, 'w') as o: + o.write("row.name\t" + "\t".join([str(x) for x in range(1, AALength-1)]) + "\n") + o.write("mutations.at.position\t" + "\t".join([str(x) for x in AA_mutation_dic["cg"][1:]]) + "\n") + o.write("AA.at.position\t" + "\t".join([str(x) for x in absentAA]) + "\n") + if linecount == 0: print "No data, exiting" with open(outfile, 'w') as o: