43ec01740360a35e46841e0a94bb1f71e0078147
[jalview.git] / wiki / PhyloBioRuby.wiki
1 #summary Tutorial for multiple sequence alignments and phylogenetic methods in BioRuby -- under development!
2
3
4
5 = Introduction =
6
7 Tutorial for multiple sequence alignments and phylogenetic methods in !BioRuby -- under development!
8
9
10
11 = Multiple Sequence Alignments =
12
13
14 == Multiple Sequence Alignment Input and Output ==
15
16 === Reading in a Multiple Sequence Alignment from a File ===
17
18 _... to be done_
19
20 {{{
21 #!/usr/bin/env ruby
22 require 'bio'
23
24 }}}
25
26  
27
28 === Writing a Multiple Sequence Alignment to a File ===
29
30 _... to be done_
31
32 {{{
33 #!/usr/bin/env ruby
34 require 'bio'
35
36 }}}
37
38
39
40 == Calculating Multiple Sequence Alignments ==
41
42 !BioRuby can be used to execute a variety of multiple sequence alignment
43 programs (such as [http://mafft.cbrc.jp/alignment/software/ MAFFT], [http://probcons.stanford.edu/ Probcons], [http://www.clustal.org/ ClustalW], [http://www.drive5.com/muscle/ Muscle], and [http://www.tcoffee.org/Projects_home_page/t_coffee_home_page.html T-Coffee]). 
44 In the following, examples for using the MAFFT and Muscle are shown.
45
46
47 === MAFFT ===
48
49 {{{
50 #!/usr/bin/env ruby
51 require 'bio'
52
53 # Calculates the alignment using the MAFFT program on the local
54 # machine with options '--maxiterate 1000 --localpair'
55 # and stores the result in 'report'.
56 options = ['--maxiterate', '1000', '--localpair']
57 mafft = Bio::MAFFT.new('path/to/mafft', options)
58 report = mafft.query_align(seqs)
59
60 # Accesses the actual alignment
61 align = report.alignment
62
63 # Prints each sequence to the console.
64 align.each { |s| puts s.to_s }
65
66 }}}
67
68 References:
69
70  * Katoh, Toh (2008) "Recent developments in the MAFFT multiple sequence alignment program" Briefings in Bioinformatics 9:286-298 
71
72  * Katoh, Toh 2010 (2010) "Parallelization of the MAFFT multiple sequence alignment program" Bioinformatics 26:1899-1900 
73
74
75
76 === Muscle ===
77
78 {{{
79 #!/usr/bin/env ruby
80 require 'bio'
81
82 # Calculates the alignment using the Muscle program on the local
83 # machine with options '-quiet -maxiters 64'
84 # and stores the result in 'report'.
85 options = ['-quiet', '-maxiters', '64']
86 muscle = Bio::Muscle.new('path/to/muscle', options)
87 report = muscle.query_align(seqs)
88
89 # Accesses the actual alignment
90 align = report.alignment
91
92 # Prints each sequence to the console.
93 align.each { |s| puts s.to_s }
94
95 }}}
96
97 References:
98
99  * Edgar, R.C. (2004) "MUSCLE: multiple sequence alignment with high accuracy and high throughput" Nucleic Acids Res 32(5):1792-1797
100
101
102
103 == Manipulating Multiple Sequence Alignments ==
104
105 It is probably a good idea to 'clean up' multiple sequence to be used
106 for phylogenetic inference. For instance, columns with more than 50% gaps can be deleted, like so:
107
108
109 _... to be done_
110
111 {{{
112 #!/usr/bin/env ruby
113 require 'bio'
114
115 }}}
116
117
118 ----
119
120 = Phylogenetic Trees =
121
122 == Phylogenetic Tree Input and Output ==
123
124 === Reading in of Phylogenetic Trees ===
125
126 _... to be done_
127
128 {{{
129 #!/usr/bin/env ruby
130 require 'bio'
131
132 }}}
133
134 Also, see: https://www.nescent.org/wg_phyloinformatics/BioRuby_PhyloXML_HowTo_documentation
135
136
137
138 === Writing of Phylogenetic Trees ===
139
140 _... to be done_
141
142 {{{
143 #!/usr/bin/env ruby
144 require 'bio'
145
146 }}}
147
148 Also, see: https://www.nescent.org/wg_phyloinformatics/BioRuby_PhyloXML_HowTo_documentation
149
150
151
152 == Phylogenetic Inference ==
153
154 _Currently !BioRuby does not contain wrappers for phylogenetic inference programs, thus I am progress of writing a RAxML wrapper followed by a wrapper for FastME..._
155
156 _What about pairwise distance calculation?_
157
158
159
160 == Maximum Likelihood ==
161
162 === RAxML ===
163
164 _... to be done_
165
166 {{{
167 #!/usr/bin/env ruby
168 require 'bio'
169
170 }}}
171
172
173
174 == Pairwise Distance Based Methods ==
175
176 === FastME ===
177
178 _... to be done_
179
180 {{{
181 #!/usr/bin/env ruby
182 require 'bio'
183
184 }}}
185
186
187
188 === PHYLIP? ===
189
190
191
192 == Support Calculation? ==
193
194 === Bootstrap Resampling? ===
195
196
197 ----
198
199 = Analyzing Phylogenetic Trees =
200
201 == PAML ==
202
203
204 == Gene Duplication Inference ==
205
206 _need to further test and then import GSoC 'SDI' work..._
207
208
209 == Others? ==