view test/usecase1.py @ 704:80043822a41e
Added fileio.File.read_alignment and fileio.File.write_alignment [closes #57]
This is now the recommended interface.
In the following commits this interface will be used to write markup together
with alignment.
Previously, fileio received the alignment torn-apart into sequence
representations as strings with gaps, sequence names and descriptions.
Now, fileio tears the alignment apart by itself.
author |
Daniil Alexeyevsky <dendik@kodomo.fbb.msu.ru> |
date |
Thu, 07 Jul 2011 19:21:12 +0400 |
parents |
07b5351b0b56 |
children |
ddf85d0a8924 |
line source
2 from allpy import protein
3 from allpy import processors
5 # Create sequences from string representation of sequence body
6 sequence_1 = protein.Sequence.from_string("mkstf", name="E2E4")
7 sequence_2 = protein.Sequence.from_string("mstkfff", description="Longer sequence")
9 # Create alignment from sequences
10 alignment = protein.Alignment()
11 alignment.append_sequence(sequence_1)
12 alignment.append_sequence(sequence_2)
13 alignment.realign(processors.Muscle())
15 # For each sequence, print number of gaps and non-gaps in alignment
16 for row in alignment.rows():
19 for column in alignment.columns:
24 print "%s: %s gaps, %s non-gaps" % (row.sequence.name, gaps, monomers)
26 # Print number of gaps in each column
28 for column in alignment.columns:
30 for sequence in alignment.sequences:
31 if sequence not in column:
33 gaps.append(column_gaps)
34 print " ".join(map(str, gaps))
36 # Write alignment to file
37 alignment.to_file(sys.stdout)