bio 1.3.1 → 1.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (303) hide show
  1. data/ChangeLog +2105 -3728
  2. data/KNOWN_ISSUES.rdoc +35 -3
  3. data/README.rdoc +8 -2
  4. data/RELEASE_NOTES.rdoc +166 -0
  5. data/bin/bioruby +4 -1
  6. data/bioruby.gemspec +146 -1
  7. data/bioruby.gemspec.erb +3 -1
  8. data/doc/ChangeLog-before-1.3.1 +3961 -0
  9. data/doc/Tutorial.rd +154 -22
  10. data/doc/Tutorial.rd.html +125 -68
  11. data/lib/bio.rb +21 -6
  12. data/lib/bio/appl/bl2seq/report.rb +11 -202
  13. data/lib/bio/appl/blast/format0.rb +0 -193
  14. data/lib/bio/appl/blast/report.rb +2 -147
  15. data/lib/bio/appl/blast/wublast.rb +0 -208
  16. data/lib/bio/appl/fasta.rb +4 -19
  17. data/lib/bio/appl/fasta/format10.rb +0 -14
  18. data/lib/bio/appl/genscan/report.rb +0 -176
  19. data/lib/bio/appl/hmmer.rb +1 -15
  20. data/lib/bio/appl/hmmer/report.rb +0 -100
  21. data/lib/bio/appl/meme/mast.rb +156 -0
  22. data/lib/bio/appl/meme/mast/report.rb +91 -0
  23. data/lib/bio/appl/meme/motif.rb +48 -0
  24. data/lib/bio/appl/psort.rb +0 -111
  25. data/lib/bio/appl/psort/report.rb +1 -45
  26. data/lib/bio/appl/pts1.rb +2 -4
  27. data/lib/bio/appl/sosui/report.rb +5 -54
  28. data/lib/bio/appl/targetp/report.rb +1 -104
  29. data/lib/bio/appl/tmhmm/report.rb +0 -36
  30. data/lib/bio/command.rb +94 -10
  31. data/lib/bio/data/aa.rb +1 -77
  32. data/lib/bio/data/codontable.rb +1 -95
  33. data/lib/bio/data/na.rb +1 -26
  34. data/lib/bio/db/aaindex.rb +1 -38
  35. data/lib/bio/db/fasta.rb +1 -134
  36. data/lib/bio/db/fasta/format_qual.rb +204 -0
  37. data/lib/bio/db/fasta/qual.rb +102 -0
  38. data/lib/bio/db/fastq.rb +645 -0
  39. data/lib/bio/db/fastq/fastq_to_biosequence.rb +40 -0
  40. data/lib/bio/db/fastq/format_fastq.rb +175 -0
  41. data/lib/bio/db/genbank/genbank.rb +1 -86
  42. data/lib/bio/db/gff.rb +0 -17
  43. data/lib/bio/db/go.rb +4 -72
  44. data/lib/bio/db/kegg/common.rb +112 -0
  45. data/lib/bio/db/kegg/compound.rb +29 -20
  46. data/lib/bio/db/kegg/drug.rb +74 -34
  47. data/lib/bio/db/kegg/enzyme.rb +26 -5
  48. data/lib/bio/db/kegg/genes.rb +128 -15
  49. data/lib/bio/db/kegg/genome.rb +3 -41
  50. data/lib/bio/db/kegg/glycan.rb +19 -24
  51. data/lib/bio/db/kegg/orthology.rb +16 -56
  52. data/lib/bio/db/kegg/reaction.rb +81 -28
  53. data/lib/bio/db/kegg/taxonomy.rb +1 -52
  54. data/lib/bio/db/litdb.rb +1 -16
  55. data/lib/bio/db/phyloxml/phyloxml.xsd +582 -0
  56. data/lib/bio/db/phyloxml/phyloxml_elements.rb +1174 -0
  57. data/lib/bio/db/phyloxml/phyloxml_parser.rb +954 -0
  58. data/lib/bio/db/phyloxml/phyloxml_writer.rb +228 -0
  59. data/lib/bio/db/prosite.rb +2 -95
  60. data/lib/bio/db/rebase.rb +5 -6
  61. data/lib/bio/db/sanger_chromatogram/abif.rb +120 -0
  62. data/lib/bio/db/sanger_chromatogram/chromatogram.rb +133 -0
  63. data/lib/bio/db/sanger_chromatogram/chromatogram_to_biosequence.rb +32 -0
  64. data/lib/bio/db/sanger_chromatogram/scf.rb +210 -0
  65. data/lib/bio/io/das.rb +0 -44
  66. data/lib/bio/io/ddbjxml.rb +1 -181
  67. data/lib/bio/io/flatfile.rb +1 -7
  68. data/lib/bio/io/flatfile/autodetection.rb +6 -0
  69. data/lib/bio/io/keggapi.rb +0 -442
  70. data/lib/bio/io/ncbirest.rb +130 -132
  71. data/lib/bio/io/ncbisoap.rb +2 -1
  72. data/lib/bio/io/pubmed.rb +0 -88
  73. data/lib/bio/location.rb +0 -73
  74. data/lib/bio/pathway.rb +0 -171
  75. data/lib/bio/sequence.rb +18 -1
  76. data/lib/bio/sequence/adapter.rb +3 -0
  77. data/lib/bio/sequence/format.rb +16 -0
  78. data/lib/bio/sequence/quality_score.rb +205 -0
  79. data/lib/bio/tree.rb +70 -5
  80. data/lib/bio/util/restriction_enzyme/single_strand.rb +3 -2
  81. data/lib/bio/util/sirna.rb +1 -23
  82. data/lib/bio/version.rb +1 -1
  83. data/sample/demo_aaindex.rb +67 -0
  84. data/sample/demo_aminoacid.rb +101 -0
  85. data/sample/demo_bl2seq_report.rb +220 -0
  86. data/sample/demo_blast_report.rb +285 -0
  87. data/sample/demo_codontable.rb +119 -0
  88. data/sample/demo_das.rb +105 -0
  89. data/sample/demo_ddbjxml.rb +212 -0
  90. data/sample/demo_fasta_remote.rb +51 -0
  91. data/sample/demo_fastaformat.rb +105 -0
  92. data/sample/demo_genbank.rb +132 -0
  93. data/sample/demo_genscan_report.rb +202 -0
  94. data/sample/demo_gff1.rb +49 -0
  95. data/sample/demo_go.rb +98 -0
  96. data/sample/demo_hmmer_report.rb +149 -0
  97. data/sample/demo_kegg_compound.rb +57 -0
  98. data/sample/demo_kegg_drug.rb +65 -0
  99. data/sample/demo_kegg_genome.rb +74 -0
  100. data/sample/demo_kegg_glycan.rb +72 -0
  101. data/sample/demo_kegg_orthology.rb +62 -0
  102. data/sample/demo_kegg_reaction.rb +66 -0
  103. data/sample/demo_kegg_taxonomy.rb +92 -0
  104. data/sample/demo_keggapi.rb +502 -0
  105. data/sample/demo_litdb.rb +42 -0
  106. data/sample/demo_locations.rb +99 -0
  107. data/sample/demo_ncbi_rest.rb +130 -0
  108. data/sample/demo_nucleicacid.rb +49 -0
  109. data/sample/demo_pathway.rb +196 -0
  110. data/sample/demo_prosite.rb +120 -0
  111. data/sample/demo_psort.rb +138 -0
  112. data/sample/demo_psort_report.rb +70 -0
  113. data/sample/demo_pubmed.rb +118 -0
  114. data/sample/demo_sirna.rb +63 -0
  115. data/sample/demo_sosui_report.rb +89 -0
  116. data/sample/demo_targetp_report.rb +135 -0
  117. data/sample/demo_tmhmm_report.rb +68 -0
  118. data/sample/pmfetch.rb +13 -4
  119. data/sample/pmsearch.rb +15 -4
  120. data/sample/test_phyloxml_big.rb +205 -0
  121. data/test/bioruby_test_helper.rb +61 -0
  122. data/test/data/KEGG/1.1.1.1.enzyme +935 -0
  123. data/test/data/KEGG/C00025.compound +102 -0
  124. data/test/data/KEGG/D00063.drug +104 -0
  125. data/test/data/KEGG/G00024.glycan +47 -0
  126. data/test/data/KEGG/G01366.glycan +18 -0
  127. data/test/data/KEGG/K02338.orthology +902 -0
  128. data/test/data/KEGG/R00006.reaction +14 -0
  129. data/test/data/fastq/README.txt +109 -0
  130. data/test/data/fastq/error_diff_ids.fastq +20 -0
  131. data/test/data/fastq/error_double_qual.fastq +22 -0
  132. data/test/data/fastq/error_double_seq.fastq +22 -0
  133. data/test/data/fastq/error_long_qual.fastq +20 -0
  134. data/test/data/fastq/error_no_qual.fastq +20 -0
  135. data/test/data/fastq/error_qual_del.fastq +20 -0
  136. data/test/data/fastq/error_qual_escape.fastq +20 -0
  137. data/test/data/fastq/error_qual_null.fastq +0 -0
  138. data/test/data/fastq/error_qual_space.fastq +21 -0
  139. data/test/data/fastq/error_qual_tab.fastq +21 -0
  140. data/test/data/fastq/error_qual_unit_sep.fastq +20 -0
  141. data/test/data/fastq/error_qual_vtab.fastq +20 -0
  142. data/test/data/fastq/error_short_qual.fastq +20 -0
  143. data/test/data/fastq/error_spaces.fastq +20 -0
  144. data/test/data/fastq/error_tabs.fastq +21 -0
  145. data/test/data/fastq/error_trunc_at_plus.fastq +19 -0
  146. data/test/data/fastq/error_trunc_at_qual.fastq +19 -0
  147. data/test/data/fastq/error_trunc_at_seq.fastq +18 -0
  148. data/test/data/fastq/error_trunc_in_plus.fastq +19 -0
  149. data/test/data/fastq/error_trunc_in_qual.fastq +20 -0
  150. data/test/data/fastq/error_trunc_in_seq.fastq +18 -0
  151. data/test/data/fastq/error_trunc_in_title.fastq +17 -0
  152. data/test/data/fastq/illumina_full_range_as_illumina.fastq +8 -0
  153. data/test/data/fastq/illumina_full_range_as_sanger.fastq +8 -0
  154. data/test/data/fastq/illumina_full_range_as_solexa.fastq +8 -0
  155. data/test/data/fastq/illumina_full_range_original_illumina.fastq +8 -0
  156. data/test/data/fastq/longreads_as_illumina.fastq +40 -0
  157. data/test/data/fastq/longreads_as_sanger.fastq +40 -0
  158. data/test/data/fastq/longreads_as_solexa.fastq +40 -0
  159. data/test/data/fastq/longreads_original_sanger.fastq +120 -0
  160. data/test/data/fastq/misc_dna_as_illumina.fastq +16 -0
  161. data/test/data/fastq/misc_dna_as_sanger.fastq +16 -0
  162. data/test/data/fastq/misc_dna_as_solexa.fastq +16 -0
  163. data/test/data/fastq/misc_dna_original_sanger.fastq +16 -0
  164. data/test/data/fastq/misc_rna_as_illumina.fastq +16 -0
  165. data/test/data/fastq/misc_rna_as_sanger.fastq +16 -0
  166. data/test/data/fastq/misc_rna_as_solexa.fastq +16 -0
  167. data/test/data/fastq/misc_rna_original_sanger.fastq +16 -0
  168. data/test/data/fastq/sanger_full_range_as_illumina.fastq +8 -0
  169. data/test/data/fastq/sanger_full_range_as_sanger.fastq +8 -0
  170. data/test/data/fastq/sanger_full_range_as_solexa.fastq +8 -0
  171. data/test/data/fastq/sanger_full_range_original_sanger.fastq +8 -0
  172. data/test/data/fastq/solexa_full_range_as_illumina.fastq +8 -0
  173. data/test/data/fastq/solexa_full_range_as_sanger.fastq +8 -0
  174. data/test/data/fastq/solexa_full_range_as_solexa.fastq +8 -0
  175. data/test/data/fastq/solexa_full_range_original_solexa.fastq +8 -0
  176. data/test/data/fastq/wrapping_as_illumina.fastq +12 -0
  177. data/test/data/fastq/wrapping_as_sanger.fastq +12 -0
  178. data/test/data/fastq/wrapping_as_solexa.fastq +12 -0
  179. data/test/data/fastq/wrapping_original_sanger.fastq +24 -0
  180. data/test/data/meme/db +0 -0
  181. data/test/data/meme/mast +0 -0
  182. data/test/data/meme/mast.out +13 -0
  183. data/test/data/meme/meme.out +3 -0
  184. data/test/data/phyloxml/apaf.xml +666 -0
  185. data/test/data/phyloxml/bcl_2.xml +2097 -0
  186. data/test/data/phyloxml/made_up.xml +144 -0
  187. data/test/data/phyloxml/ncbi_taxonomy_mollusca_short.xml +65 -0
  188. data/test/data/phyloxml/phyloxml_examples.xml +415 -0
  189. data/test/data/sanger_chromatogram/test_chromatogram_abif.ab1 +0 -0
  190. data/test/data/sanger_chromatogram/test_chromatogram_scf_v2.scf +0 -0
  191. data/test/data/sanger_chromatogram/test_chromatogram_scf_v3.scf +0 -0
  192. data/test/functional/bio/appl/test_pts1.rb +7 -5
  193. data/test/functional/bio/io/test_ensembl.rb +4 -3
  194. data/test/functional/bio/io/test_pubmed.rb +9 -3
  195. data/test/functional/bio/io/test_soapwsdl.rb +5 -4
  196. data/test/functional/bio/io/test_togows.rb +5 -4
  197. data/test/functional/bio/sequence/test_output_embl.rb +6 -4
  198. data/test/functional/bio/test_command.rb +54 -5
  199. data/test/runner.rb +5 -3
  200. data/test/unit/bio/appl/bl2seq/test_report.rb +5 -4
  201. data/test/unit/bio/appl/blast/test_ncbioptions.rb +4 -2
  202. data/test/unit/bio/appl/blast/test_report.rb +5 -4
  203. data/test/unit/bio/appl/blast/test_rpsblast.rb +5 -4
  204. data/test/unit/bio/appl/gcg/test_msf.rb +5 -5
  205. data/test/unit/bio/appl/genscan/test_report.rb +8 -9
  206. data/test/unit/bio/appl/hmmer/test_report.rb +5 -4
  207. data/test/unit/bio/appl/iprscan/test_report.rb +6 -5
  208. data/test/unit/bio/appl/mafft/test_report.rb +6 -5
  209. data/test/unit/bio/appl/meme/mast/test_report.rb +46 -0
  210. data/test/unit/bio/appl/meme/test_mast.rb +103 -0
  211. data/test/unit/bio/appl/meme/test_motif.rb +38 -0
  212. data/test/unit/bio/appl/paml/codeml/test_rates.rb +5 -4
  213. data/test/unit/bio/appl/paml/codeml/test_report.rb +5 -4
  214. data/test/unit/bio/appl/paml/test_codeml.rb +5 -4
  215. data/test/unit/bio/appl/sim4/test_report.rb +5 -4
  216. data/test/unit/bio/appl/sosui/test_report.rb +6 -5
  217. data/test/unit/bio/appl/targetp/test_report.rb +5 -3
  218. data/test/unit/bio/appl/test_blast.rb +5 -4
  219. data/test/unit/bio/appl/test_fasta.rb +4 -2
  220. data/test/unit/bio/appl/test_pts1.rb +4 -2
  221. data/test/unit/bio/appl/tmhmm/test_report.rb +6 -5
  222. data/test/unit/bio/data/test_aa.rb +5 -3
  223. data/test/unit/bio/data/test_codontable.rb +5 -4
  224. data/test/unit/bio/data/test_na.rb +5 -3
  225. data/test/unit/bio/db/biosql/tc_biosql.rb +5 -1
  226. data/test/unit/bio/db/embl/test_common.rb +4 -2
  227. data/test/unit/bio/db/embl/test_embl.rb +6 -6
  228. data/test/unit/bio/db/embl/test_embl_rel89.rb +6 -6
  229. data/test/unit/bio/db/embl/test_embl_to_bioseq.rb +7 -8
  230. data/test/unit/bio/db/embl/test_sptr.rb +6 -8
  231. data/test/unit/bio/db/embl/test_uniprot.rb +6 -5
  232. data/test/unit/bio/db/fasta/test_format_qual.rb +346 -0
  233. data/test/unit/bio/db/kegg/test_compound.rb +146 -0
  234. data/test/unit/bio/db/kegg/test_drug.rb +194 -0
  235. data/test/unit/bio/db/kegg/test_enzyme.rb +241 -0
  236. data/test/unit/bio/db/kegg/test_genes.rb +32 -4
  237. data/test/unit/bio/db/kegg/test_glycan.rb +260 -0
  238. data/test/unit/bio/db/kegg/test_orthology.rb +50 -0
  239. data/test/unit/bio/db/kegg/test_reaction.rb +96 -0
  240. data/test/unit/bio/db/pdb/test_pdb.rb +4 -2
  241. data/test/unit/bio/db/sanger_chromatogram/test_abif.rb +76 -0
  242. data/test/unit/bio/db/sanger_chromatogram/test_scf.rb +98 -0
  243. data/test/unit/bio/db/test_aaindex.rb +6 -6
  244. data/test/unit/bio/db/test_fasta.rb +5 -46
  245. data/test/unit/bio/db/test_fastq.rb +829 -0
  246. data/test/unit/bio/db/test_gff.rb +4 -2
  247. data/test/unit/bio/db/test_lasergene.rb +7 -5
  248. data/test/unit/bio/db/test_medline.rb +4 -2
  249. data/test/unit/bio/db/test_newick.rb +6 -6
  250. data/test/unit/bio/db/test_nexus.rb +4 -2
  251. data/test/unit/bio/db/test_phyloxml.rb +769 -0
  252. data/test/unit/bio/db/test_phyloxml_writer.rb +328 -0
  253. data/test/unit/bio/db/test_prosite.rb +6 -5
  254. data/test/unit/bio/db/test_qual.rb +63 -0
  255. data/test/unit/bio/db/test_rebase.rb +5 -3
  256. data/test/unit/bio/db/test_soft.rb +7 -6
  257. data/test/unit/bio/io/flatfile/test_autodetection.rb +6 -7
  258. data/test/unit/bio/io/flatfile/test_buffer.rb +6 -5
  259. data/test/unit/bio/io/flatfile/test_splitter.rb +4 -4
  260. data/test/unit/bio/io/test_ddbjxml.rb +4 -3
  261. data/test/unit/bio/io/test_ensembl.rb +5 -3
  262. data/test/unit/bio/io/test_fastacmd.rb +4 -3
  263. data/test/unit/bio/io/test_flatfile.rb +6 -5
  264. data/test/unit/bio/io/test_soapwsdl.rb +4 -3
  265. data/test/unit/bio/io/test_togows.rb +4 -2
  266. data/test/unit/bio/sequence/test_aa.rb +5 -3
  267. data/test/unit/bio/sequence/test_common.rb +4 -2
  268. data/test/unit/bio/sequence/test_compat.rb +4 -2
  269. data/test/unit/bio/sequence/test_dblink.rb +5 -3
  270. data/test/unit/bio/sequence/test_na.rb +4 -2
  271. data/test/unit/bio/sequence/test_quality_score.rb +330 -0
  272. data/test/unit/bio/shell/plugin/test_seq.rb +5 -3
  273. data/test/unit/bio/test_alignment.rb +5 -3
  274. data/test/unit/bio/test_command.rb +4 -3
  275. data/test/unit/bio/test_db.rb +5 -3
  276. data/test/unit/bio/test_feature.rb +4 -2
  277. data/test/unit/bio/test_location.rb +4 -2
  278. data/test/unit/bio/test_map.rb +5 -3
  279. data/test/unit/bio/test_pathway.rb +4 -2
  280. data/test/unit/bio/test_reference.rb +4 -2
  281. data/test/unit/bio/test_sequence.rb +5 -3
  282. data/test/unit/bio/test_shell.rb +5 -3
  283. data/test/unit/bio/test_tree.rb +6 -6
  284. data/test/unit/bio/util/restriction_enzyme/analysis/test_calculated_cuts.rb +4 -2
  285. data/test/unit/bio/util/restriction_enzyme/analysis/test_cut_ranges.rb +4 -2
  286. data/test/unit/bio/util/restriction_enzyme/analysis/test_sequence_range.rb +4 -2
  287. data/test/unit/bio/util/restriction_enzyme/double_stranded/test_aligned_strands.rb +4 -2
  288. data/test/unit/bio/util/restriction_enzyme/double_stranded/test_cut_location_pair.rb +4 -2
  289. data/test/unit/bio/util/restriction_enzyme/double_stranded/test_cut_location_pair_in_enzyme_notation.rb +4 -2
  290. data/test/unit/bio/util/restriction_enzyme/double_stranded/test_cut_locations.rb +4 -2
  291. data/test/unit/bio/util/restriction_enzyme/double_stranded/test_cut_locations_in_enzyme_notation.rb +4 -2
  292. data/test/unit/bio/util/restriction_enzyme/single_strand/test_cut_locations_in_enzyme_notation.rb +4 -2
  293. data/test/unit/bio/util/restriction_enzyme/test_analysis.rb +4 -2
  294. data/test/unit/bio/util/restriction_enzyme/test_cut_symbol.rb +4 -2
  295. data/test/unit/bio/util/restriction_enzyme/test_double_stranded.rb +4 -2
  296. data/test/unit/bio/util/restriction_enzyme/test_single_strand.rb +17 -13
  297. data/test/unit/bio/util/restriction_enzyme/test_single_strand_complement.rb +17 -13
  298. data/test/unit/bio/util/restriction_enzyme/test_string_formatting.rb +4 -2
  299. data/test/unit/bio/util/test_color_scheme.rb +5 -3
  300. data/test/unit/bio/util/test_contingency_table.rb +5 -3
  301. data/test/unit/bio/util/test_restriction_enzyme.rb +4 -2
  302. data/test/unit/bio/util/test_sirna.rb +6 -4
  303. metadata +147 -2
@@ -0,0 +1,120 @@
1
+ #
2
+ # = sample/demo_prosite.rb - demonstration of Bio::PROSITE
3
+ #
4
+ # Copyright:: Copyright (C) 2001 Toshiaki Katayama <k@bioruby.org>
5
+ # License:: The Ruby License
6
+ #
7
+ #
8
+ # == Description
9
+ #
10
+ # Demonstration of Bio::PROSITE, parser class for PROSITE database entry.
11
+ #
12
+ # == Usage
13
+ #
14
+ # Specify files containing PROSITE data.
15
+ #
16
+ # $ ruby demo_prosite.rb files...
17
+ #
18
+ # Example usage using test data:
19
+ #
20
+ # $ ruby -Ilib sample/demo_prosite.rb test/data/prosite/prosite.dat
21
+ #
22
+ # == Development information
23
+ #
24
+ # The code was moved from lib/bio/db/prosite.rb.
25
+ #
26
+
27
+ require 'bio'
28
+
29
+ begin
30
+ require 'pp'
31
+ alias p pp
32
+ rescue LoadError
33
+ end
34
+
35
+ Bio::FlatFile.foreach(Bio::PROSITE, ARGF) do |ps|
36
+ puts "### ps = Bio::PROSITE.new(str)"
37
+
38
+ list = %w(
39
+ name
40
+ division
41
+ ac
42
+ entry_id
43
+ dt
44
+ date
45
+ de
46
+ definition
47
+ pa
48
+ pattern
49
+ ma
50
+ profile
51
+ ru
52
+ rule
53
+ nr
54
+ statistics
55
+ release
56
+ swissprot_release_number
57
+ swissprot_release_sequences
58
+ total
59
+ total_hits
60
+ total_sequences
61
+ positive
62
+ positive_hits
63
+ positive_sequences
64
+ unknown
65
+ unknown_hits
66
+ unknown_sequences
67
+ false_pos
68
+ false_positive_hits
69
+ false_positive_sequences
70
+ false_neg
71
+ false_negative_hits
72
+ partial
73
+ cc
74
+ comment
75
+ max_repeat
76
+ site
77
+ skip_flag
78
+ dr
79
+ sp_xref
80
+ pdb_xref
81
+ pdoc_xref
82
+ )
83
+
84
+ list.each do |method|
85
+ puts ">>> #{method}"
86
+ p ps.__send__(method)
87
+ end
88
+
89
+ puts ">>> taxon_range"
90
+ p ps.taxon_range
91
+ puts ">>> taxon_range(expand)"
92
+ p ps.taxon_range(true)
93
+
94
+ puts ">>> list_truepositive"
95
+ p ps.list_truepositive
96
+ puts ">>> list_truepositive(by_name)"
97
+ p ps.list_truepositive(true)
98
+
99
+ puts ">>> list_falsenegative"
100
+ p ps.list_falsenegative
101
+ puts ">>> list_falsenegative(by_name)"
102
+ p ps.list_falsenegative(true)
103
+
104
+ puts ">>> list_falsepositive"
105
+ p ps.list_falsepositive
106
+ puts ">>> list_falsepositive(by_name)"
107
+ p ps.list_falsepositive(true)
108
+
109
+ puts ">>> list_potentialhit"
110
+ p ps.list_potentialhit
111
+ puts ">>> list_potentialhit(by_name)"
112
+ p ps.list_potentialhit(true)
113
+
114
+ puts ">>> list_unknown"
115
+ p ps.list_unknown
116
+ puts ">>> list_unknown(by_name)"
117
+ p ps.list_unknown(true)
118
+
119
+ puts "=" * 78
120
+ end
@@ -0,0 +1,138 @@
1
+ #
2
+ # = sample/demo_psort.rb - demonstration of Bio::PSORT, client for PSORT WWW server
3
+ #
4
+ # Copyright:: Copyright (C) 2003-2006
5
+ # Mitsuteru C. Nakao <n@bioruby.org>
6
+ # License:: The Ruby License
7
+ #
8
+ #
9
+ # == Description
10
+ #
11
+ # Demonstration of Bio::PSORT, client for PSORT (protein sorting site
12
+ # prediction systems) WWW server.
13
+ #
14
+ # == Requirements
15
+ #
16
+ # Internet connection is needed.
17
+ #
18
+ # == Usage
19
+ #
20
+ # Simply run this script.
21
+ #
22
+ # $ ruby demo_psort.rb
23
+ #
24
+ # == Development information
25
+ #
26
+ # The code was moved from lib/bio/appl/psort.rb.
27
+ #
28
+
29
+ require 'bio'
30
+
31
+ #if __FILE__ == $0
32
+
33
+ #begin
34
+ # require 'psort/report.rb'
35
+ #rescue LoadError
36
+ #end
37
+
38
+
39
+ seq = ">hoge mit
40
+ MALEPIDYTT RDEDDLDENE LLMKISNAAG SSRVNDNNDD LTFVENDKII
41
+ ARYSIQTSSK QQGKASTPPV EEAEEAAPQL PSRSSAAPPP PPRRATPEKK
42
+ DVKDLKSKFE GLAASEKEEE EMENKFAPPP KKSEPTIISP KPFSKPQEPV
43
+ FKGYHVQVTA HSREIDAEYL KIVRGSDPDT TWLIISPNAK KEYEPESTGS
44
+ KKSFTPSKSP APVSKKEPVK TPSPAPAAKI PKENPWATAE YDYDAAEDNE
45
+ NIEFVDDDWW LGELEKDGSK GLFPSNYVSL LPSRNVASGA PVQKEEPEQE
46
+ SFHDFLQLFD ETKVQYGLAR RKAKQNSGNA ETKAEAPKPE VPEDEPEGEP
47
+ DDWNEPELKE RDFDQAPLKP NQSSYKPIGK IDLQKVIAEE KAKEDPRLVQ
48
+ DYKKIGNPLP GMHIEADNEE EPEENDDDWD DDEDEAAQPP ANFAAVANNL
49
+ KPTAAGSKID DDKVIKGFRN EKSPAQLWAE VSPPGSDVEK IIIIGWCPDS
50
+ APLKTRASFA PSSDIANLKN ESKLKRDSEF NSFLGTTKPP SMTESSLKND
51
+ KAEEAEQPKT EIAPSLPSRN SIPAPKQEEA PEQAPEEEIE GN
52
+ "
53
+ Seq1 = ">hgoe
54
+ LTFVENDKII NI
55
+ "
56
+
57
+ puts "\n Bio::PSORT::PSORT"
58
+
59
+ puts "\n ==> p serv = Bio::PSORT::PSORT.imsut"
60
+ p serv = Bio::PSORT::PSORT1.imsut
61
+
62
+ puts "\n ==> p serv.class "
63
+ p serv.class
64
+
65
+ puts "\n ==> p serv.title = 'Query_title_splited_by_white space'"
66
+ p serv.title = 'Query_title_splited_by_white space'
67
+
68
+ puts "\n ==> p serv.exec(seq, false) "
69
+ p serv.exec(seq, false)
70
+
71
+ puts "\n ==> p serv.exec(seq) "
72
+ p serv.exec(seq)
73
+
74
+ puts "\n ==> p report = serv.exec(Bio::FastaFormat.new(seq)) "
75
+ p report = serv.exec(Bio::FastaFormat.new(seq))
76
+
77
+ puts "\n ==> p report.class"
78
+ p report.class
79
+
80
+
81
+ puts "\n ==> p report_raw = serv.exec(Bio::FastaFormat.new(seq), false) "
82
+ p report_raw = serv.exec(Bio::FastaFormat.new(seq), false)
83
+
84
+ puts "\n ==> p report_raw.class"
85
+ p report_raw.class
86
+
87
+
88
+ puts "\n ==> p report.methods"
89
+ p report.methods
90
+
91
+ methods = ['entry_id', 'origin', 'title', 'sequence','result_info',
92
+ 'reasoning', 'final_result', 'raw']
93
+ methods.each do |method|
94
+ puts "\n ==> p report.#{method}"
95
+ p eval("report.#{method}")
96
+ end
97
+
98
+
99
+
100
+ puts "\n Bio::PSORT::PSORT2"
101
+
102
+ puts "\n ==> p serv = Bio::PSORT::PSORT2.imsut"
103
+ p serv = Bio::PSORT::PSORT2.imsut
104
+
105
+ puts "\n ==> p serv.class "
106
+ p serv.class
107
+
108
+ puts "\n ==> p seq "
109
+ p seq
110
+
111
+ puts "\n ==> p serv.title = 'Query_title_splited_by_white space'"
112
+ p serv.title = 'Query_title_splited_by_white space'
113
+
114
+ puts "\n ==> p serv.exec(seq) # parsed report"
115
+ p serv.exec(seq)
116
+
117
+ puts "\n ==> p report = serv.exec(Bio::FastaFormat.new(seq)) # parsed report"
118
+ p report = serv.exec(Bio::FastaFormat.new(seq))
119
+
120
+
121
+
122
+ puts "\n ==> p serv.exec(seq, false) # report in plain text"
123
+ p serv.exec(seq, false)
124
+
125
+ puts "\n ==> p report_raw = serv.exec(Bio::FastaFormat.new(seq), false) # report in plain text"
126
+ p report_raw = serv.exec(Bio::FastaFormat.new(seq), false)
127
+
128
+
129
+ puts "\n ==> p report.methods"
130
+ p report.methods
131
+
132
+ methods = ['entry_id', 'scl', 'definition', 'seq', 'features', 'prob', 'pred', 'k', 'raw']
133
+ methods.each do |method|
134
+ puts "\n ==> p report.#{method}"
135
+ p eval("report.#{method}")
136
+ end
137
+
138
+ #end
@@ -0,0 +1,70 @@
1
+ #
2
+ # = sample/demo_psort_report.rb - demonstration of Bio::PSORT::PSORT2::Report
3
+ #
4
+ # Copyright:: Copyright (C) 2003
5
+ # Mitsuteru C. Nakao <n@bioruby.org>
6
+ # License:: The Ruby License
7
+ #
8
+ #
9
+ # == IMPORTANT NOTE
10
+ #
11
+ # The sample may not work because it has not been tested for a long time.
12
+ #
13
+ # == Description
14
+ #
15
+ # Demonstration of Bio::PSORT::PSORT2::Report, parser class for the PSORT
16
+ # systems output.
17
+ #
18
+ # == Usage
19
+ #
20
+ # Specify a file containing PSORT2 output.
21
+ #
22
+ # $ ruby demo_psort_report.rb
23
+ #
24
+ # == Development information
25
+ #
26
+ # The code was moved from lib/bio/appl/psort/report.rb.
27
+ #
28
+
29
+ require 'bio'
30
+
31
+ # testing code
32
+
33
+ #if __FILE__ == $0
34
+
35
+
36
+ while entry = $<.gets(Bio::PSORT::PSORT2::Report::DELIMITER)
37
+
38
+ puts "\n ==> a = Bio::PSORT::PSORT2::Report.parser(entry)"
39
+ a = Bio::PSORT::PSORT2::Report.parser(entry)
40
+
41
+ puts "\n ==> a.entry_id "
42
+ p a.entry_id
43
+ puts "\n ==> a.scl "
44
+ p a.scl
45
+ puts "\n ==> a.pred "
46
+ p a.pred
47
+ puts "\n ==> a.prob "
48
+ p a.prob
49
+ p a.prob.keys.sort.map {|k| k.rjust(4)}.inspect.gsub('"','')
50
+ p a.prob.keys.sort.map {|k| a.prob[k].to_s.rjust(4) }.inspect.gsub('"','')
51
+
52
+ puts "\n ==> a.k "
53
+ p a.k
54
+ puts "\n ==> a.definition"
55
+ p a.definition
56
+ puts "\n ==> a.seq"
57
+ p a.seq
58
+
59
+ puts "\n ==> a.features.keys.sort "
60
+ p a.features.keys.sort
61
+
62
+ a.features.keys.sort.each do |key|
63
+ puts "\n ==> a.features['#{key}'] "
64
+ puts a.features[key]
65
+ end
66
+
67
+
68
+ end
69
+
70
+ #end
@@ -0,0 +1,118 @@
1
+ #
2
+ # = sample/demo_pubmed.rb - demonstration of Bio::PubMed
3
+ #
4
+ # Copyright:: Copyright (C) 2001, 2007, 2008 Toshiaki Katayama <k@bioruby.org>
5
+ # Copyright:: Copyright (C) 2006 Jan Aerts <jan.aerts@bbsrc.ac.uk>
6
+ # License:: The Ruby License
7
+ #
8
+ #
9
+ # == Description
10
+ #
11
+ # Demonstration of Bio::PubMed, NCBI Entrez/PubMed client module.
12
+ #
13
+ # == Requirements
14
+ #
15
+ # Internet connection is needed.
16
+ #
17
+ # == Usage
18
+ #
19
+ # Simply run this script.
20
+ #
21
+ # $ ruby demo_pubmed.rb
22
+ #
23
+ # == Development information
24
+ #
25
+ # The code was moved from lib/bio/io/pubmed.rb and modified as below:
26
+ # * Codes using Entrez CGI are disabled.
27
+
28
+ require 'bio'
29
+
30
+ Bio::NCBI.default_email = 'staff@bioruby.org'
31
+
32
+ #if __FILE__ == $0
33
+
34
+ puts "=== instance methods ==="
35
+
36
+ pubmed = Bio::PubMed.new
37
+
38
+ puts "--- Search PubMed by E-Utils ---"
39
+ opts = {"rettype" => "count"}
40
+ puts Time.now
41
+ puts pubmed.esearch("(genome AND analysis) OR bioinformatics", opts)
42
+ puts Time.now
43
+ puts pubmed.esearch("(genome AND analysis) OR bioinformatics", opts)
44
+ puts Time.now
45
+ puts pubmed.esearch("(genome AND analysis) OR bioinformatics", opts)
46
+ puts Time.now
47
+ pubmed.esearch("(genome AND analysis) OR bioinformatics").each do |x|
48
+ puts x
49
+ end
50
+
51
+ puts "--- Retrieve PubMed entry by E-Utils ---"
52
+ puts Time.now
53
+ puts pubmed.efetch(16381885)
54
+ puts Time.now
55
+ puts pubmed.efetch("16381885")
56
+ puts Time.now
57
+ puts pubmed.efetch("16381885")
58
+ puts Time.now
59
+ opts = {"retmode" => "xml"}
60
+ puts pubmed.efetch([10592173, 14693808], opts)
61
+ puts Time.now
62
+ puts pubmed.efetch(["10592173", "14693808"], opts)
63
+
64
+ #puts "--- Search PubMed by Entrez CGI ---"
65
+ #pubmed.search("(genome AND analysis) OR bioinformatics").each do |x|
66
+ # p x
67
+ #end
68
+
69
+ #puts "--- Retrieve PubMed entry by Entrez CGI ---"
70
+ #puts pubmed.query("16381885")
71
+
72
+
73
+ puts "--- Retrieve PubMed entry by PMfetch ---"
74
+ puts pubmed.pmfetch("16381885")
75
+
76
+
77
+ puts "=== class methods ==="
78
+
79
+
80
+ puts "--- Search PubMed by E-Utils ---"
81
+ opts = {"rettype" => "count"}
82
+ puts Time.now
83
+ puts Bio::PubMed.esearch("(genome AND analysis) OR bioinformatics", opts)
84
+ puts Time.now
85
+ puts Bio::PubMed.esearch("(genome AND analysis) OR bioinformatics", opts)
86
+ puts Time.now
87
+ puts Bio::PubMed.esearch("(genome AND analysis) OR bioinformatics", opts)
88
+ puts Time.now
89
+ Bio::PubMed.esearch("(genome AND analysis) OR bioinformatics").each do |x|
90
+ puts x
91
+ end
92
+
93
+ puts "--- Retrieve PubMed entry by E-Utils ---"
94
+ puts Time.now
95
+ puts Bio::PubMed.efetch(16381885)
96
+ puts Time.now
97
+ puts Bio::PubMed.efetch("16381885")
98
+ puts Time.now
99
+ puts Bio::PubMed.efetch("16381885")
100
+ puts Time.now
101
+ opts = {"retmode" => "xml"}
102
+ puts Bio::PubMed.efetch([10592173, 14693808], opts)
103
+ puts Time.now
104
+ puts Bio::PubMed.efetch(["10592173", "14693808"], opts)
105
+
106
+ #puts "--- Search PubMed by Entrez CGI ---"
107
+ #Bio::PubMed.search("(genome AND analysis) OR bioinformatics").each do |x|
108
+ # p x
109
+ #end
110
+
111
+ #puts "--- Retrieve PubMed entry by Entrez CGI ---"
112
+ #puts Bio::PubMed.query("16381885")
113
+
114
+
115
+ puts "--- Retrieve PubMed entry by PMfetch ---"
116
+ puts Bio::PubMed.pmfetch("16381885")
117
+
118
+ #end
@@ -0,0 +1,63 @@
1
+ #
2
+ # = sample/demo_sirna.rb - demonstration of Bio::SiRNA
3
+ #
4
+ # Copyright:: Copyright (C) 2004, 2005
5
+ # Itoshi NIKAIDO <dritoshi@gmail.com>
6
+ # License:: The Ruby License
7
+ #
8
+ #
9
+ # == Description
10
+ #
11
+ # Demonstration of Bio::SiRNA, class for designing small inhibitory RNAs.
12
+ #
13
+ # == Usage
14
+ #
15
+ # Specify files containing nucleotide sequences.
16
+ #
17
+ # $ ruby demo_sirna.rb files...
18
+ #
19
+ # Example usage using test data:
20
+ #
21
+ # $ ruby -Ilib sample/demo_sirna.rb test/data/fasta/example1.txt
22
+ #
23
+ # == Development information
24
+ #
25
+ # The code was moved from lib/bio/util/sirna.rb, and modified for reading
26
+ # normal sequence files.
27
+ #
28
+
29
+ require 'bio'
30
+
31
+ if ARGV.size <= 0 then
32
+ puts "Demonstration of designing SiRNA for each sequence."
33
+ puts "Usage: #{$0} files..."
34
+ exit(0)
35
+ end
36
+
37
+ ARGV.each do |filename|
38
+ Bio::FlatFile.foreach(filename) do |entry|
39
+ puts "##entry.entry_id: #{entry.entry_id}"
40
+ puts "##entry.definition: #{entry.definition}"
41
+ seq = entry.naseq
42
+ puts "##entry.naseq.length: #{seq.length}"
43
+
44
+ sirna = Bio::SiRNA.new(seq)
45
+ pairs = sirna.design # or .design('uitei') or .uitei or .reynolds
46
+
47
+ pairs.each do |pair|
48
+ puts pair.report
49
+
50
+ shrna = Bio::SiRNA::ShRNA.new(pair)
51
+ shrna.design # or .design('BLOCK-iT') or .block_it
52
+ puts shrna.report
53
+
54
+ puts "# as DNA"
55
+ puts shrna.top_strand.dna
56
+ puts shrna.bottom_strand.dna
57
+ end
58
+
59
+ puts "=" * 78
60
+
61
+ end #Bio::FlatFile.foreach
62
+ end #ARGV.each
63
+