def generate_water_cmd(macierz, pliki_fasta_rodzina): """ Generuje polecenia wywolania programu water EMBOSS dla wszystkich sekwencji podanych jako nazwy plikow je zawierajacych :param macierz: lokalizacja/nazwa pliku z macierza substytucji PAM/BLOSUM :param pliki_fasta_fodzina: lista lokalizacji/nazw plikow z sekwencjami bialkowymi fasta nalezacymi do danej rodziny :return: polecenie wywolania programu water """ records = [] for file in pliki_fasta_rodzina: handle = open(file, "rU") records.extend(list(SeqIO.parse(handle, "fasta"))) handle.close() from Bio.Emboss.Applications import WaterCommandline all_water_cmd = [] for i in range(len(records)): for j in range(len(records)): if i < j: water_cmd = WaterCommandline(gapopen=100, gapextend=10)#maksymalne wartosci aby uzyskac uliniowienia bezspacjowe water_cmd.asequence = "asis:" + str(records[i].seq) water_cmd.bsequence = "asis:" + str(records[j].seq) water_cmd.stdout = True water_cmd.sprotein=True water_cmd.datafile=macierz all_water_cmd.append(str(water_cmd)) return all_water_cmd
def out(): filename1 = e1.get() filename2 = e2.get() outfile = e3.get() needle_cline = WaterCommandline() needle_cline.asequence = filename1 needle_cline.bsequence = filename2 needle_cline.gapopen = int(gapopen) needle_cline.gapextend = int(gapextend) needle_cline.outfile = "needle.txt" print(needle_cline) print(needle_cline.outfile) stdout, stderr = needle_cline() print(stdout + stderr) align = AlignIO.read("needle.txt", "emboss") file = open("needle.txt", "r") # print(file.read()) view = ("\n\n%s" % file.read()) root = Tk() S = Scrollbar(root) T = Text(root, height=4, width=500) S.pack(side=RIGHT, fill=Y) T.pack(side=LEFT, fill=Y) S.config(command=T.yview) T.config(yscrollcommand=S.set) T.insert(END, view) with open(outfile, "w") as f: f.write(view)
def waterAlign(seq1, seq2, gapopen, gapextend): water = WaterCommandline() water.asequence = seq1 water.bsequence = seq2 water.gapopen = gapopen water.gapextend = gapextend water.outfile = "needle.txt" stdout, stderr = water() print(stdout)
def doWater(contig, seq): with open("contig.faa", "w") as stuff1: stuff1.write(">contig\n") stuff1.write(contig) with open("seq.faa", "w") as stuff2: stuff2.write(">seq\n") stuff2.write(str(seq)) water_cline = WaterCommandline() water_cline.asequence="contig.faa" water_cline.bsequence="seq.faa" water_cline.gapopen=10 water_cline.gapextend=0.5 water_cline.outfile="water.txt" stdout, stderr = water_cline() print(stdout + stderr) values = getStartEnd() return values
def emboss_local_pairwise_alignment(query_dir, seq_type): if seq_type == 'fg': print '\n ...pairwise comparison of functional gene sequences...\n' elif seq_type == 'ssu': print '\n ...pairwise comparison of SSU rRNA sequences...\n' water_cline = WaterCommandline() water_cline.gapopen=10 water_cline.gapextend=0.5 query_list = [query for query in sorted(glob.glob(query_dir+"/*.fa"))] for i, a_seq in enumerate(query_list): water_cline.asequence=str(a_seq) for j, b_seq in enumerate(query_list[i:]): water_cline.bsequence=str(b_seq) align_out = query_dir+"/pairwise_"+str(i+1)+"_"+str(i+j+1)+".aln" water_cline.outfile=str(align_out) water_cline() print 'Done\n' return query_dir+"/*.aln"
# http://rosalind.info/problems/swat/ from Bio.Emboss.Applications import WaterCommandline from Bio import ExPASy, SeqIO if __name__ == "__main__": ids = open('rosalind_swat.txt').read().split(' ') for i in ids: handle = ExPASy.get_sprot_raw(i) r = SeqIO.read(handle, "swiss") handle.close() with open(i, 'w') as f: SeqIO.write(r, f, 'fasta') water_cline = WaterCommandline() water_cline.asequence = ids[0] water_cline.bsequence = ids[1] water_cline.outfile = "rosalind_swat_output.txt" water_cline.gapopen = 10 water_cline.gapextend = 1 water_cline() for line in open('rosalind_swat_output.txt').readlines(): if 'Score:' in line: print(int(float(line[:-1].split(':')[-1].strip())))
""" This is the first example of Python script. """ a = 10 # variable a b = 33 # variable b c = a / b # variable c holds the ratio # Let's print the result to screen. print("a:", a, " b:", b, " a/b=", c) from Bio.Seq import Seq a = Seq("ATATATACG") a.alphabet a.sequence() from Bio.Emboss.Applications import WaterCommandline cline = WaterCommandline(gapopen=10, gapextend=0.5) cline.asequence = "asis:ACCCGGGCGCGGT" cline.bsequence = "asis:ACCCGAGCGCGGT" cline.outfile = "temp_water.txt" print(cline)