def distanceTable(frq,method,outfile,met):
	keyDict = sorted(np.unique(("/".join(frq.keys())).split("/")));
	mapDict = dict()       	
	if method == 'min':
		mapDict =minDistance(frq)
	elif method == 'prod':
		mapDict =prodDistance(frq,met)
	pr.printDistanceTableToFile(mapDict,keyDict,outfile)
Exemple #2
0
def computeDistance(frq, method, percentile):
    if method == 'min':
		return minDistance(frq)
    else:
		return prodDistance(frq)
Exemple #3
0
			frq = atbs.findAnchoredDistanceTableOverallp(e,N,anch,taxa_list,taxa_inv, trees,taxa, outpath,debugFlag)
		    if e.label not in TreeList:
			TreeList[e.label] = dendropy.TreeList()
		    if verbose:
			print "computing the partial quartet table"
		    if readFromFile:
			tbsa.findTrueAverageTableAnchoringOnDifferentSidesSmallPolytomiesOverallFromFile(frq,quartTable,anch,taxa_list,N1,N2,am,met)
		    else:
			tbsa.findTrueAverageTableAnchoringOnDifferentSidesSmallPolytomiesOverall(frq,quartTable,anch,taxa_list,N1,N2,am,met)
		    if verbose:
			print "The anchor "+str(count)+" out of "+str(numSmallAnchors)+" anchors has been finished!"
		    count += 1
		if verbose:
		    print "computing distance table using the method: "+str(am)
		Frq=atbs.anchoredDistanceFromFrqSmallPolytomies(quartTable,am,met)
		D=pd.prodDistance(Frq,met)
		keyDict = sorted(list(np.unique((" ".join(D.keys())).split(" "))))
		fileDistance = "distancet-anchList-"+str(i)+".d"
		ftmp3=tempfile.mkstemp(suffix='.d', prefix=fileDistance, dir=outpath, text=None)
		pr.printDistanceTableToFile(D,keyDict,ftmp3[1])
		os.close(ftmp3[0])
		ftmp4=tempfile.mkstemp(suffix='.nwk', prefix=fileDistance+"_fastme_tree.nwk",dir=outpath,text=None)
		tstt.buildTreeFromDistanceMatrix(ftmp3[1],ftmp4[1],sumProg,sumProgOption)
		os.close(ftmp4[0])
		tree_tmp = dendropy.Tree.get(path=ftmp4[1],schema='newick')
		if e.label in TreeList:
		    TreeList[e.label].append(tree_tmp)
		else:
		    TreeList[e.label] = dendropy.TreeList()
		    TreeList[e.label].append(tree_tmp)