comparison mutation_analysis.py @ 78:b523ce95d857 draft

Uploaded
author davidvanzessen
date Wed, 11 May 2016 10:29:33 -0400
parents becea91089ed
children 07f7da724a77
comparison
equal deleted inserted replaced
77:c5c86d15cb94 78:b523ce95d857
226 return lst[0] 226 return lst[0]
227 227
228 l = int(l / 2) 228 l = int(l / 2)
229 229
230 if len(lst) % 2 == 0: 230 if len(lst) % 2 == 0:
231 print "list length is", l
232 return float(lst[l] + lst[(l - 1)]) / 2.0 231 return float(lst[l] + lst[(l - 1)]) / 2.0
233 else: 232 else:
234 return lst[l] 233 return lst[l]
235 234
236 funcs = {"mean": mean, "median": median, "sum": sum} 235 funcs = {"mean": mean, "median": median, "sum": sum}
244 with open(directory + gene + "_" + fname + "_value.txt", 'r') as v: 243 with open(directory + gene + "_" + fname + "_value.txt", 'r') as v:
245 valuedic[gene + "_" + fname] = float(v.readlines()[0].rstrip()) 244 valuedic[gene + "_" + fname] = float(v.readlines()[0].rstrip())
246 with open(directory + "all_" + fname + "_value.txt", 'r') as v: 245 with open(directory + "all_" + fname + "_value.txt", 'r') as v:
247 valuedic["total_" + fname] = float(v.readlines()[0].rstrip()) 246 valuedic["total_" + fname] = float(v.readlines()[0].rstrip())
248 247
249 print valuedic 248
250
251 def get_xyz(lst, gene, f, fname): 249 def get_xyz(lst, gene, f, fname):
252 x = int(round(f(lst))) 250 x = int(round(f(lst)))
253 y = valuedic[gene + "_" + fname] 251 y = valuedic[gene + "_" + fname]
254 z = str(round(x / float(valuedic[gene + "_" + fname]) * 100, 1)) if valuedic[gene + "_" + fname] != 0 else "0" 252 z = str(round(x / float(valuedic[gene + "_" + fname]) * 100, 1)) if valuedic[gene + "_" + fname] != 0 else "0"
255 return (str(x), str(y), z) 253 return (str(x), str(y), z)
263 with open(foutfile, 'w') as o: 261 with open(foutfile, 'w') as o:
264 for typ in arr: 262 for typ in arr:
265 o.write(typ + " (%)") 263 o.write(typ + " (%)")
266 curr = dic[typ] 264 curr = dic[typ]
267 for gene in genes: 265 for gene in genes:
268 geneMatcher = re.compile(".*" + gene + ".*") 266 geneMatcher = re.compile("^" + gene + ".*")
269 if valuedic[gene + "_" + fname] is 0: 267 if valuedic[gene + "_" + fname] is 0:
270 o.write(",0,0,0") 268 o.write(",0,0,0")
271 else: 269 else:
272 x, y, z = get_xyz([curr[x] for x in [y for y, z in genedic.iteritems() if geneMatcher.match(z)]], gene, func, fname) 270 x, y, z = get_xyz([curr[x] for x in [y for y, z in genedic.iteritems() if geneMatcher.match(z)]], gene, func, fname)
273 o.write("," + x + "," + y + "," + z) 271 o.write("," + x + "," + y + "," + z)