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