#Very simple tests on an empty alignment alignment = Alignment(Alphabet.generic_alphabet) assert alignment.get_alignment_length() == 0 assert alignment.get_all_seqs() == [] del alignment #Basic tests on simple three string alignment alignment = Alignment(Alphabet.generic_alphabet) letters = "AbcDefGhiJklMnoPqrStuVwxYz" alignment.add_sequence("mixed", letters) alignment.add_sequence("lower", letters.lower()) alignment.add_sequence("upper", letters.upper()) assert alignment.get_alignment_length() == 26 assert len(alignment.get_all_seqs()) == 3 assert alignment.get_seq_by_num(0).tostring() == letters assert alignment.get_seq_by_num(1).tostring() == letters.lower() assert alignment.get_seq_by_num(2).tostring() == letters.upper() assert alignment.get_all_seqs()[0].description == "mixed" assert alignment.get_all_seqs()[1].description == "lower" assert alignment.get_all_seqs()[2].description == "upper" for (col, letter) in enumerate(letters) : assert alignment.get_column(col) == letter \ + letter.lower() \ + letter.upper() #Check row extractions: assert alignment[0].id == "mixed" assert alignment[-1].id == "upper" #Check sub-alignment extraction by row slicing: assert isinstance(alignment[::-1], Alignment) assert alignment[::-1][0].id == "upper"
#Very simple tests on an empty alignment alignment = Alignment(Alphabet.generic_alphabet) assert alignment.get_alignment_length() == 0 assert len(alignment) == 0 del alignment #Basic tests on simple three string alignment alignment = Alignment(Alphabet.generic_alphabet) letters = "AbcDefGhiJklMnoPqrStuVwxYz" alignment.add_sequence("mixed", letters) alignment.add_sequence("lower", letters.lower()) alignment.add_sequence("upper", letters.upper()) assert alignment.get_alignment_length() == 26 assert len(alignment) == 3 assert alignment.get_seq_by_num(0).tostring() == letters assert alignment.get_seq_by_num(1).tostring() == letters.lower() assert alignment.get_seq_by_num(2).tostring() == letters.upper() assert alignment[0].description == "mixed" assert alignment[1].description == "lower" assert alignment[2].description == "upper" for (col, letter) in enumerate(letters): assert alignment.get_column(col) == letter \ + letter.lower() \ + letter.upper() #Check row extractions: assert alignment[0].id == "mixed" assert alignment[-1].id == "upper" #Check sub-alignment extraction by row slicing: assert isinstance(alignment[::-1], Alignment) assert alignment[::-1][0].id == "upper"
print seqrec #tipo de dato alineamiento de secuencias, guarda no procesa from Bio.Align.Generic import Alignment seq1='MHQAIFIYQIGYPLKSGYIQSIRSPEYDNW' seq2='MH--IFIYQIGYALKSGYIQSIRSPEY-NW' align=Alignment(Bio.Alphabet.Gapped(IUPAC.protein)) #instance of Alignment class align.add_sequence('asp',seq1) align.add_sequence('unk',seq2) print align #Alignment methods #get_all_seqs: return all sequences in the alignment as a list of SeqRecord for s in align.get_all_seqs(): #in align: (the same) print '->',s.seq #get_seq_by_num(n): return only the selected sequence by index print str(align.get_seq_by_num(1)) #Seq object print align[0] #SeqRecord object print str(align[0].seq) #get_alignment_length(): get length of alignment print align.get_alignment_length() #get_column(n): return a string with all the letters in the n column print align.get_column(0) print align.get_column(2) #AlignInfo module: to extract info from alignment objects from Bio.Align import AlignInfo #print_info_content function #SummaryInfo,PSSM classes summary=AlignInfo.SummaryInfo(align) print summary.information_content() print summary.dumb_consensus()