def create_2_base_sub(alleles, ref, alt): bases_list = alt.split(', ') bases_list.insert(0, ref) seqs = [bases_list[alleles[0]], bases_list[alleles[1]]] scaffold = max(bases_list, key=len) substitution = [] for seq in seqs: if len(seq) == len(scaffold): substitution.append(seq) elif seq == '.': substitution.append('-'*len(scaffold)) else: seq_and_scaffold = [seq, scaffold] aligned_seqs = align_unaligned_seqs(seq_and_scaffold, DNA, params={'-gapopen': -0.001}) aligned_seqs = str(aligned_seqs) bases_sub = aligned_seqs.split('\n') substitution.append(bases_sub[3]) return substitution
def main(): fdir = sys.argv[1] odir = sys.argv[2] mkdir_p(odir) for fname in glob.iglob("{0}/*.fasta".format(fdir)): groupName = fname.split( os.path.sep )[-1].rstrip(".fasta") print("group {0}".format(groupName)) try: seqs = cogent.LoadSeqs(fname, moltype=cogent.PROTEIN, aligned=False) except Exception as e: print(e) exit(0) aln = align_unaligned_seqs(seqs, cogent.PROTEIN) t = build_tree_from_alignment(aln, cogent.PROTEIN) print("tree for group {0}".format( str(t) ) ) with open( os.path.sep.join( [ odir, groupName+".nwk" ] ), 'wb') as ofile: ofile.write( str(t).replace("'","") )
def main(): fdir = sys.argv[1] odir = sys.argv[2] mkdir_p(odir) for fname in glob.iglob("{0}/*.fasta".format(fdir)): groupName = fname.split(os.path.sep)[-1].rstrip(".fasta") print("group {0}".format(groupName)) try: seqs = cogent.LoadSeqs(fname, moltype=cogent.PROTEIN, aligned=False) except Exception as e: print(e) exit(0) aln = align_unaligned_seqs(seqs, cogent.PROTEIN) t = build_tree_from_alignment(aln, cogent.PROTEIN) print("tree for group {0}".format(str(t))) with open(os.path.sep.join([odir, groupName + ".nwk"]), 'wb') as ofile: ofile.write(str(t).replace("'", ""))
def main(): arguments = docopt(__doc__, version='BuildSingleTree v1.0') print(arguments) netname = arguments['<network>'] seqname = arguments['<seqfile>'] ofname = arguments['-o'] print("creating tree for {0}".format(netname)) print("using sequences from {0}".format(seqname)) G = nx.read_adjlist(netname) try: seqs = cogent.LoadSeqs(seqname, moltype=cogent.PROTEIN, aligned=False) except Exception as e: print(e) sys.exit(0) aln = align_unaligned_seqs(seqs, cogent.PROTEIN) t = build_tree_From_alignment(aln, cogent.PROTEIN) print("tree = {0}".format( str(t) ) ) with open( os.path.sep.join( [ "all" ] ), 'wb') as ofile: ofile.write( str(t).replace("'","") )
def test_align_unaligned_seqs(self): """align_unaligned_seqs should work as expected""" res = align_unaligned_seqs(self.seqs1, RNA) self.assertEqual(res.toFasta(), align1)