bioroebe 0.10.80 → 0.12.12

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of bioroebe might be problematic. Click here for more details.

Files changed (242) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +3612 -2781
  3. data/bin/bioroebe +7 -1
  4. data/bin/bioroebe_hash +7 -0
  5. data/bin/codon_to_aminoacid +1 -0
  6. data/bioroebe.gemspec +3 -3
  7. data/doc/README.gen +3612 -2742
  8. data/doc/quality_control/commandline_applications.md +3 -3
  9. data/doc/todo/bioroebe_java_todo.md +22 -0
  10. data/doc/todo/bioroebe_todo.md +2059 -2615
  11. data/lib/bioroebe/aminoacids/aminoacid_substitution.rb +1 -9
  12. data/lib/bioroebe/aminoacids/codon_percentage.rb +1 -9
  13. data/lib/bioroebe/aminoacids/deduce_aminoacid_sequence.rb +1 -9
  14. data/lib/bioroebe/aminoacids/display_aminoacid_table.rb +1 -0
  15. data/lib/bioroebe/aminoacids/show_hydrophobicity.rb +1 -6
  16. data/lib/bioroebe/base/colours_for_base/colours_for_base.rb +18 -8
  17. data/lib/bioroebe/base/commandline_application/commandline_arguments.rb +15 -11
  18. data/lib/bioroebe/base/commandline_application/misc.rb +66 -49
  19. data/lib/bioroebe/base/commandline_application/opn.rb +8 -8
  20. data/lib/bioroebe/base/commandline_application/reset.rb +3 -2
  21. data/lib/bioroebe/base/misc.rb +35 -0
  22. data/lib/bioroebe/base/prototype/misc.rb +11 -1
  23. data/lib/bioroebe/codon_tables/frequencies/parse_frequency_table.rb +2 -10
  24. data/lib/bioroebe/codons/codons.rb +1 -1
  25. data/lib/bioroebe/codons/convert_this_codon_to_that_aminoacid.rb +192 -58
  26. data/lib/bioroebe/codons/possible_codons_for_this_aminoacid.rb +1 -9
  27. data/lib/bioroebe/codons/show_codon_tables.rb +6 -2
  28. data/lib/bioroebe/codons/show_codon_usage.rb +15 -4
  29. data/lib/bioroebe/colours/rev.rb +4 -1
  30. data/lib/bioroebe/constants/aminoacids_and_proteins.rb +1 -0
  31. data/lib/bioroebe/constants/database_constants.rb +1 -1
  32. data/lib/bioroebe/constants/files_and_directories.rb +31 -4
  33. data/lib/bioroebe/constants/misc.rb +20 -0
  34. data/lib/bioroebe/conversions/dna_to_aminoacid_sequence.rb +58 -24
  35. data/lib/bioroebe/count/count_amount_of_aminoacids.rb +3 -2
  36. data/lib/bioroebe/count/count_amount_of_nucleotides.rb +3 -0
  37. data/lib/bioroebe/crystal/README.md +2 -0
  38. data/lib/bioroebe/crystal/to_rna.cr +19 -0
  39. data/lib/bioroebe/data/README.md +11 -8
  40. data/lib/bioroebe/data/electron_microscopy/pos_example.pos +396 -0
  41. data/lib/bioroebe/data/electron_microscopy/test_particles.star +36 -0
  42. data/lib/bioroebe/data/fasta/human/Homo_sapiens_hemoglobin_subunit_alpha_HBB_mRNA.fasta +9 -0
  43. data/lib/bioroebe/data/fasta/human/Homo_sapiens_hemoglobin_subunit_beta_HBB_mRNA.fasta +8 -0
  44. data/lib/bioroebe/data/fasta/human/README.md +2 -0
  45. data/lib/bioroebe/electron_microscopy/coordinate_analyzer.rb +15 -18
  46. data/lib/bioroebe/{fasta_and_fastq/parse_fasta/run.rb → electron_microscopy/electron_microscopy_module.rb} +16 -8
  47. data/lib/bioroebe/electron_microscopy/fix_pos_file.rb +1 -9
  48. data/lib/bioroebe/electron_microscopy/flipy.rb +83 -0
  49. data/lib/bioroebe/electron_microscopy/parse_coordinates.rb +2 -10
  50. data/lib/bioroebe/electron_microscopy/read_file_xmd.rb +1 -9
  51. data/lib/bioroebe/electron_microscopy/simple_star_file_generator.rb +4 -9
  52. data/lib/bioroebe/enzymes/has_this_restriction_enzyme.rb +10 -3
  53. data/lib/bioroebe/enzymes/restriction_enzyme.rb +23 -1
  54. data/lib/bioroebe/enzymes/restriction_enzymes/statistics.rb +65 -0
  55. data/lib/bioroebe/fasta_and_fastq/autocorrect_the_name_of_this_fasta_file.rb +1 -9
  56. data/lib/bioroebe/fasta_and_fastq/compact_fasta_file/compact_fasta_file.rb +7 -9
  57. data/lib/bioroebe/fasta_and_fastq/fasta_defline/fasta_defline.rb +1 -5
  58. data/lib/bioroebe/fasta_and_fastq/fasta_to_yaml/fasta_to_yaml.rb +81 -0
  59. data/lib/bioroebe/fasta_and_fastq/parse_fasta/parse_fasta.rb +1465 -7
  60. data/lib/bioroebe/fasta_and_fastq/return_fasta_subsection_of_this_file.rb +11 -2
  61. data/lib/bioroebe/fasta_and_fastq/show_fasta_headers.rb +27 -12
  62. data/lib/bioroebe/fasta_and_fastq/simplify_fasta_header/simplify_fasta_header.rb +1 -5
  63. data/lib/bioroebe/fasta_and_fastq/split_this_fasta_file_into_chromosomes/constants.rb +0 -5
  64. data/lib/bioroebe/genome/README.md +4 -0
  65. data/lib/bioroebe/genome/genome.rb +67 -0
  66. data/lib/bioroebe/genomes/genome_pattern.rb +3 -9
  67. data/lib/bioroebe/gui/gtk +1 -0
  68. data/lib/bioroebe/gui/gtk3/alignment/alignment.rb +73 -128
  69. data/lib/bioroebe/gui/gtk3/controller/controller.rb +45 -27
  70. data/lib/bioroebe/gui/gtk3/dna_to_aminoacid_widget/dna_to_aminoacid_widget.rb +76 -50
  71. data/lib/bioroebe/gui/gtk3/fasta_table_widget/fasta_table_widget.rb +99 -21
  72. data/lib/bioroebe/gui/gtk3/hamming_distance/hamming_distance.rb +42 -28
  73. data/lib/bioroebe/gui/gtk3/nucleotide_analyser/nucleotide_analyser.rb +119 -71
  74. data/lib/bioroebe/gui/gtk3/protein_to_DNA/protein_to_DNA.rb +18 -18
  75. data/lib/bioroebe/gui/gtk3/random_sequence/random_sequence.rb +19 -11
  76. data/lib/bioroebe/gui/jruby/alignment/alignment.rb +165 -0
  77. data/lib/bioroebe/gui/libui/alignment/alignment.rb +3 -1
  78. data/lib/bioroebe/gui/libui/controller/controller.rb +116 -0
  79. data/lib/bioroebe/gui/libui/random_sequence/random_sequence.rb +18 -2
  80. data/lib/bioroebe/gui/libui/show_codon_table/show_codon_table.rb +2 -0
  81. data/lib/bioroebe/gui/libui/three_to_one/three_to_one.rb +8 -6
  82. data/lib/bioroebe/gui/shared_code/alignment/alignment_module.rb +102 -0
  83. data/lib/bioroebe/gui/shared_code/levensthein_distance/levensthein_distance_module.rb +18 -16
  84. data/lib/bioroebe/gui/shared_code/protein_to_DNA/protein_to_DNA_module.rb +14 -14
  85. data/lib/bioroebe/gui/swing/three_to_one/ThreeToOne$1.class +0 -0
  86. data/lib/bioroebe/gui/swing/three_to_one/ThreeToOne$CloseListener.class +0 -0
  87. data/lib/bioroebe/gui/swing/three_to_one/ThreeToOne.class +0 -0
  88. data/lib/bioroebe/gui/swing/three_to_one/ThreeToOne.java +141 -0
  89. data/lib/bioroebe/images/FORWARD_PRIMER.png +0 -0
  90. data/lib/bioroebe/images/REVERSE_PRIMER.png +0 -0
  91. data/lib/bioroebe/java/README.md +4 -0
  92. data/lib/bioroebe/java/bioroebe/Sequence.java +25 -1
  93. data/lib/bioroebe/java/bioroebe/src/main/java/bioroebe/Base.class +0 -0
  94. data/lib/bioroebe/java/bioroebe/{Base.java → src/main/java/bioroebe/Base.java} +15 -2
  95. data/lib/bioroebe/java/bioroebe/{BisulfiteTreatment.class → src/main/java/bioroebe/BisulfiteTreatment.class} +0 -0
  96. data/lib/bioroebe/java/bioroebe/{Codons.class → src/main/java/bioroebe/Codons.class} +0 -0
  97. data/lib/bioroebe/java/bioroebe/src/main/java/bioroebe/Codons.java +34 -0
  98. data/lib/bioroebe/java/bioroebe/src/main/java/bioroebe/Commandline.class +0 -0
  99. data/lib/bioroebe/java/bioroebe/src/main/java/bioroebe/Commandline.java +101 -0
  100. data/lib/bioroebe/java/bioroebe/{GenerateRandomDnaSequence.class → src/main/java/bioroebe/GenerateRandomDnaSequence.class} +0 -0
  101. data/lib/bioroebe/java/bioroebe/{GenerateRandomDnaSequence.java → src/main/java/bioroebe/GenerateRandomDnaSequence.java} +8 -2
  102. data/lib/bioroebe/java/bioroebe/{IsPalindrome.class → src/main/java/bioroebe/IsPalindrome.class} +0 -0
  103. data/lib/bioroebe/java/bioroebe/{IsPalindrome.java → src/main/java/bioroebe/IsPalindrome.java} +5 -1
  104. data/lib/bioroebe/java/bioroebe/src/main/java/bioroebe/PartnerNucleotide.class +0 -0
  105. data/lib/bioroebe/java/bioroebe/src/main/java/bioroebe/PartnerNucleotide.java +56 -0
  106. data/lib/bioroebe/java/bioroebe/{RemoveFile.java → src/main/java/bioroebe/RemoveFile.java} +10 -4
  107. data/lib/bioroebe/java/bioroebe/{RemoveNumbers.class → src/main/java/bioroebe/RemoveNumbers.class} +0 -0
  108. data/lib/bioroebe/java/bioroebe/{RemoveNumbers.java → src/main/java/bioroebe/RemoveNumbers.java} +1 -0
  109. data/lib/bioroebe/java/bioroebe/{ToCamelcase.class → src/main/java/bioroebe/ToCamelcase.class} +0 -0
  110. data/lib/bioroebe/java/bioroebe/{ToCamelcase.java → src/main/java/bioroebe/ToCamelcase.java} +3 -3
  111. data/lib/bioroebe/java/bioroebe/src/main/java/bioroebe/ToRNA.class +0 -0
  112. data/lib/bioroebe/java/bioroebe/src/main/java/bioroebe/ToRNA.java +42 -0
  113. data/lib/bioroebe/java/bioroebe/src/main/java/bioroebe/toplevel_methods/BaseComposition.class +0 -0
  114. data/lib/bioroebe/java/bioroebe/src/main/java/bioroebe/toplevel_methods/BaseComposition.java +75 -0
  115. data/lib/bioroebe/misc/ruler.rb +11 -2
  116. data/lib/bioroebe/nucleotides/most_likely_nucleotide_sequence_for_this_aminoacid_sequence.rb +1 -9
  117. data/lib/bioroebe/nucleotides/show_nucleotide_sequence.rb +7 -7
  118. data/lib/bioroebe/parsers/genbank_parser.rb +347 -26
  119. data/lib/bioroebe/parsers/gff.rb +1 -9
  120. data/lib/bioroebe/patterns/scan_for_repeat.rb +1 -5
  121. data/lib/bioroebe/pdb/fetch_fasta_sequence_from_pdb.rb +1 -9
  122. data/lib/bioroebe/pdb/parse_mmCIF_file.rb +1 -9
  123. data/lib/bioroebe/pdb/parse_pdb_file.rb +4 -10
  124. data/lib/bioroebe/project/project.rb +1 -1
  125. data/lib/bioroebe/python/README.md +1 -0
  126. data/lib/bioroebe/python/__pycache__/mymodule.cpython-39.pyc +0 -0
  127. data/lib/bioroebe/python/gui/gtk3/all_in_one.css +4 -0
  128. data/lib/bioroebe/python/gui/gtk3/all_in_one.py +59 -0
  129. data/lib/bioroebe/python/gui/gtk3/widget1.py +20 -0
  130. data/lib/bioroebe/python/gui/tkinter/all_in_one.py +91 -0
  131. data/lib/bioroebe/python/mymodule.py +8 -0
  132. data/lib/bioroebe/python/protein_to_dna.py +33 -0
  133. data/lib/bioroebe/python/shell/shell.py +19 -0
  134. data/lib/bioroebe/python/to_rna.py +14 -0
  135. data/lib/bioroebe/python/toplevel_methods/esystem.py +12 -0
  136. data/lib/bioroebe/python/toplevel_methods/open_in_browser.py +20 -0
  137. data/lib/bioroebe/python/toplevel_methods/palindromes.py +42 -0
  138. data/lib/bioroebe/python/toplevel_methods/rds.py +13 -0
  139. data/lib/bioroebe/python/toplevel_methods/shuffleseq.py +23 -0
  140. data/lib/bioroebe/python/toplevel_methods/three_delimiter.py +37 -0
  141. data/lib/bioroebe/python/toplevel_methods/time_and_date.py +43 -0
  142. data/lib/bioroebe/python/toplevel_methods/to_camelcase.py +21 -0
  143. data/lib/bioroebe/requires/require_the_bioroebe_project.rb +3 -1
  144. data/lib/bioroebe/sequence/alignment.rb +14 -4
  145. data/lib/bioroebe/sequence/dna.rb +1 -0
  146. data/lib/bioroebe/sequence/nucleotide_module/nucleotide_module.rb +28 -25
  147. data/lib/bioroebe/sequence/protein.rb +105 -3
  148. data/lib/bioroebe/sequence/sequence.rb +87 -21
  149. data/lib/bioroebe/shell/menu.rb +3829 -3714
  150. data/lib/bioroebe/shell/misc.rb +59 -4307
  151. data/lib/bioroebe/shell/readline/readline.rb +1 -1
  152. data/lib/bioroebe/shell/shell.rb +11255 -28
  153. data/lib/bioroebe/siRNA/siRNA.rb +81 -1
  154. data/lib/bioroebe/string_matching/find_longest_substring.rb +3 -2
  155. data/lib/bioroebe/string_matching/hamming_distance.rb +1 -9
  156. data/lib/bioroebe/taxonomy/class_methods.rb +3 -8
  157. data/lib/bioroebe/taxonomy/constants.rb +4 -3
  158. data/lib/bioroebe/taxonomy/edit.rb +2 -1
  159. data/lib/bioroebe/taxonomy/help/help.rb +10 -10
  160. data/lib/bioroebe/taxonomy/help/helpline.rb +2 -2
  161. data/lib/bioroebe/taxonomy/info/check_available.rb +15 -9
  162. data/lib/bioroebe/taxonomy/info/info.rb +18 -11
  163. data/lib/bioroebe/taxonomy/info/is_dna.rb +46 -36
  164. data/lib/bioroebe/taxonomy/interactive.rb +140 -104
  165. data/lib/bioroebe/taxonomy/menu.rb +27 -18
  166. data/lib/bioroebe/taxonomy/parse_fasta.rb +3 -1
  167. data/lib/bioroebe/taxonomy/shared.rb +1 -0
  168. data/lib/bioroebe/taxonomy/taxonomy.rb +1 -0
  169. data/lib/bioroebe/toplevel_methods/aminoacids_and_proteins.rb +31 -24
  170. data/lib/bioroebe/toplevel_methods/colourize_related_methods.rb +164 -0
  171. data/lib/bioroebe/toplevel_methods/databases.rb +1 -1
  172. data/lib/bioroebe/toplevel_methods/digest.rb +18 -8
  173. data/lib/bioroebe/toplevel_methods/fasta_and_fastq.rb +107 -63
  174. data/lib/bioroebe/toplevel_methods/file_and_directory_related_actions.rb +14 -2
  175. data/lib/bioroebe/toplevel_methods/frequencies.rb +8 -1
  176. data/lib/bioroebe/toplevel_methods/misc.rb +142 -12
  177. data/lib/bioroebe/toplevel_methods/nucleotides.rb +118 -46
  178. data/lib/bioroebe/toplevel_methods/open_in_browser.rb +2 -0
  179. data/lib/bioroebe/toplevel_methods/palindromes.rb +1 -2
  180. data/lib/bioroebe/toplevel_methods/taxonomy.rb +2 -2
  181. data/lib/bioroebe/toplevel_methods/to_camelcase.rb +5 -0
  182. data/lib/bioroebe/utility_scripts/align_open_reading_frames.rb +1 -9
  183. data/lib/bioroebe/utility_scripts/check_for_mismatches/check_for_mismatches.rb +1 -9
  184. data/lib/bioroebe/utility_scripts/compacter.rb +1 -9
  185. data/lib/bioroebe/utility_scripts/compseq/compseq.rb +1 -9
  186. data/lib/bioroebe/utility_scripts/consensus_sequence.rb +6 -6
  187. data/lib/bioroebe/utility_scripts/create_batch_entrez_file.rb +1 -9
  188. data/lib/bioroebe/utility_scripts/dot_alignment.rb +1 -9
  189. data/lib/bioroebe/utility_scripts/move_file_to_its_correct_location.rb +1 -4
  190. data/lib/bioroebe/utility_scripts/parse_taxonomy.rb +2 -2
  191. data/lib/bioroebe/utility_scripts/showorf/constants.rb +0 -5
  192. data/lib/bioroebe/utility_scripts/showorf/reset.rb +1 -4
  193. data/lib/bioroebe/version/version.rb +2 -2
  194. data/lib/bioroebe/www/embeddable_interface.rb +103 -54
  195. data/lib/bioroebe/www/sinatra/sinatra.rb +186 -70
  196. data/lib/bioroebe/yaml/aminoacids/amino_acids_long_name_to_one_letter.yml +2 -2
  197. data/lib/bioroebe/yaml/configuration/browser.yml +1 -1
  198. data/lib/bioroebe/yaml/configuration/temp_dir.yml +1 -1
  199. data/lib/bioroebe/yaml/genomes/README.md +3 -4
  200. data/lib/bioroebe/yaml/restriction_enzymes/restriction_enzymes.yml +27 -27
  201. metadata +81 -64
  202. data/doc/setup.rb +0 -1655
  203. data/lib/bioroebe/fasta_and_fastq/parse_fasta/constants.rb +0 -50
  204. data/lib/bioroebe/fasta_and_fastq/parse_fasta/initialize.rb +0 -86
  205. data/lib/bioroebe/fasta_and_fastq/parse_fasta/menu.rb +0 -117
  206. data/lib/bioroebe/fasta_and_fastq/parse_fasta/misc.rb +0 -981
  207. data/lib/bioroebe/fasta_and_fastq/parse_fasta/report.rb +0 -156
  208. data/lib/bioroebe/fasta_and_fastq/parse_fasta/reset.rb +0 -128
  209. data/lib/bioroebe/genbank/genbank_parser.rb +0 -291
  210. data/lib/bioroebe/java/bioroebe/Base.class +0 -0
  211. data/lib/bioroebe/java/bioroebe/Codons.java +0 -22
  212. data/lib/bioroebe/java/bioroebe/PartnerNucleotide.class +0 -0
  213. data/lib/bioroebe/java/bioroebe/PartnerNucleotide.java +0 -19
  214. data/lib/bioroebe/java/bioroebe.jar +0 -0
  215. data/lib/bioroebe/shell/add.rb +0 -108
  216. data/lib/bioroebe/shell/assign.rb +0 -360
  217. data/lib/bioroebe/shell/chop_and_cut.rb +0 -281
  218. data/lib/bioroebe/shell/constants.rb +0 -166
  219. data/lib/bioroebe/shell/download.rb +0 -335
  220. data/lib/bioroebe/shell/enable_and_disable.rb +0 -158
  221. data/lib/bioroebe/shell/enzymes.rb +0 -310
  222. data/lib/bioroebe/shell/fasta.rb +0 -345
  223. data/lib/bioroebe/shell/gtk.rb +0 -76
  224. data/lib/bioroebe/shell/history.rb +0 -132
  225. data/lib/bioroebe/shell/initialize.rb +0 -217
  226. data/lib/bioroebe/shell/loop.rb +0 -74
  227. data/lib/bioroebe/shell/prompt.rb +0 -107
  228. data/lib/bioroebe/shell/random.rb +0 -289
  229. data/lib/bioroebe/shell/reset.rb +0 -335
  230. data/lib/bioroebe/shell/scan_and_parse.rb +0 -135
  231. data/lib/bioroebe/shell/search.rb +0 -337
  232. data/lib/bioroebe/shell/sequences.rb +0 -200
  233. data/lib/bioroebe/shell/show_report_and_display.rb +0 -2901
  234. data/lib/bioroebe/shell/startup.rb +0 -127
  235. data/lib/bioroebe/shell/taxonomy.rb +0 -14
  236. data/lib/bioroebe/shell/tk.rb +0 -23
  237. data/lib/bioroebe/shell/user_input.rb +0 -88
  238. data/lib/bioroebe/shell/xorg.rb +0 -45
  239. /data/lib/bioroebe/java/bioroebe/{BisulfiteTreatment.java → src/main/java/bioroebe/BisulfiteTreatment.java} +0 -0
  240. /data/lib/bioroebe/java/bioroebe/{Esystem.class → src/main/java/bioroebe/Esystem.class} +0 -0
  241. /data/lib/bioroebe/java/bioroebe/{Esystem.java → src/main/java/bioroebe/Esystem.java} +0 -0
  242. /data/lib/bioroebe/java/bioroebe/{RemoveFile.class → src/main/java/bioroebe/RemoveFile.class} +0 -0
@@ -0,0 +1,34 @@
1
+ package bioroebe;
2
+
3
+ /*
4
+ * class Codons
5
+ *
6
+ * This class will include codon-related code.
7
+ *
8
+ * It is currently very unfinished, but should ideally
9
+ * be useable for some toplevel method calls such as:
10
+ *
11
+ * Codons.is_valid_start_codon("UUU") # => true or false
12
+ *
13
+ */
14
+ class Codons extends Base {
15
+
16
+ /* Designate the main start codon to use. */
17
+ public static String start_codon = "ATG";
18
+
19
+ /*
20
+ * Codons.display_start_codons()
21
+ *
22
+ * This shall simply display all valid start codons.
23
+ *
24
+ * We currently miss reporting GTG and another one;
25
+ * this has to be fixed eventually.
26
+ */
27
+ public static void display_start_codons() {
28
+ e(start_codon);
29
+ }
30
+ public static String return_start_codon() {
31
+ return start_codon;
32
+ }
33
+
34
+ }
@@ -0,0 +1,101 @@
1
+ /*
2
+ * This class will handle commandline-given input.
3
+ */
4
+ package bioroebe;
5
+
6
+ import bioroebe.*;
7
+
8
+ public class Commandline {
9
+
10
+ /*
11
+ * Main constructor (def initialize)
12
+ */
13
+ String[] commandline_arguments;
14
+ public Commandline(String[] args) {
15
+ commandline_arguments = args;
16
+ run();
17
+ }
18
+ /*
19
+ * show_help() (help tag)
20
+ *
21
+ * show help instructions for this class.
22
+ */
23
+ void show_help() {
24
+ en("The following commandline options are available:");
25
+ en("");
26
+ en(" --partner # complement via partner molecules");
27
+ en(" --random-dna-sequence # output a random DNA sequence");
28
+ en("");
29
+ }
30
+ /*
31
+ * run()
32
+ */
33
+ void run() {
34
+ if (commandline_arguments.length > 0) {
35
+ for (String entry : commandline_arguments) {
36
+ /* --help */
37
+ if (entry.matches("help|--help")) {
38
+ show_help();
39
+ }
40
+ /* java bioroebe/Commandline --is-palindrome */
41
+ else if (entry.matches("is[\s_-]*palindrome|--is_palindrome")) {
42
+ System.out.println(
43
+ IsPalindrome.isPalindrome("OTTO")
44
+ );
45
+ }
46
+ /* java bioroebe/Commandline --random-dna-sequence */
47
+ else if (entry.matches("random-dna-sequence|--random-dna-sequence")) {
48
+ new GenerateRandomDnaSequence(250);
49
+ }
50
+ /* java bioroebe/Commandline --base-composition */
51
+ else if (entry.matches("base-composition|--base-composition")) {
52
+ new toplevel_methods.BaseComposition(entry);
53
+ }
54
+ /* java bioroebe/Commandline --start-codons */
55
+ else if (entry.matches("start-codons|--start-codons")) {
56
+ Codons.display_start_codons();
57
+ }
58
+ /* java bioroebe/Commandline --esystem */
59
+ else if (entry.matches("esystem|--esystem")) {
60
+ Esystem.esystem("ls");
61
+ }
62
+ /* java bioroebe/Commandline --bisulfite */
63
+ else if (entry.matches("bisulfite|--bisulfite")) {
64
+ en(
65
+ BisulfiteTreatment.bisulfite_treatment("ATGCCCCCCCC")
66
+ );
67
+ }
68
+ /* java bioroebe/Commandline --remove-numbers */
69
+ else if (entry.matches("remove-numbers|--remove-numbers")) {
70
+ en(
71
+ RemoveNumbers.remove_numbers("123A")
72
+ );
73
+ }
74
+ else if (entry.matches("partner|--partner")) {
75
+ en(
76
+ PartnerNucleotide.return_partner_nucleotide("A")
77
+ );
78
+ }
79
+ else {
80
+ en("Unsure what to do with: "+entry);
81
+ }
82
+ }
83
+ }
84
+ else {
85
+ en("Please provide input to this class.");
86
+ }
87
+ }
88
+
89
+ public static void e(String i) {
90
+ System.out.print(i);
91
+ }
92
+
93
+ public static void en(String i) {
94
+ System.out.println(i);
95
+ }
96
+
97
+ public static void main(String[] args) {
98
+ Commandline x = new Commandline(args);
99
+ }
100
+
101
+ }
@@ -9,10 +9,16 @@ class GenerateRandomDnaSequence extends Base {
9
9
 
10
10
  private String dna_sequence = null;
11
11
 
12
- /* The constructer for GenerateRandomDnaSequence.
12
+ /*
13
+ * The constructor for GenerateRandomDnaSequence.
13
14
  *
14
15
  * You input a number, such as 20, and this class
15
16
  * will generate a DNA string of length 20.
17
+ *
18
+ * Usage example:
19
+ *
20
+ * new GenerateRandomDnaSequence(250);
21
+ *
16
22
  */
17
23
  public GenerateRandomDnaSequence(int n_characters) {
18
24
 
@@ -26,7 +32,7 @@ class GenerateRandomDnaSequence extends Base {
26
32
  dna_sequence += alphabet.charAt(r.nextInt(alphabet.length()));
27
33
  }
28
34
 
29
- e(dna_sequence);
35
+ e(dna_sequence); /* And output the DNA sequence here. */
30
36
  }
31
37
 
32
38
  }
@@ -1,10 +1,14 @@
1
1
  package bioroebe;
2
2
 
3
- public class IsPalindrome {
3
+ public class IsPalindrome extends Base {
4
4
 
5
5
  /*
6
6
  * IsPalindrome.isPalindrome()
7
7
  *
8
+ * Usage example:
9
+ *
10
+ * IsPalindrome.isPalindrome("OTTO")
11
+ *
8
12
  */
9
13
  public static boolean isPalindrome(String i) {
10
14
  String reversed = new StringBuffer(i).reverse().toString();
@@ -0,0 +1,56 @@
1
+ package bioroebe;
2
+
3
+ import bioroebe.*;
4
+
5
+ /*
6
+ * PartnerNucleotide.partner_nucleotide("A");
7
+ *
8
+ * This class will simply yield the corresponding nucleotide.
9
+ *
10
+ * Usage example:
11
+ *
12
+ * PartnerNucleotide.partner_nucleotide("A");
13
+ *
14
+ */
15
+ class PartnerNucleotide extends Base {
16
+
17
+ /*
18
+ * PartnerNucleotide.partner_nucleotide()
19
+ */
20
+ public static void partner_nucleotide(String i) {
21
+ switch(i) {
22
+ case "A": e("T"); break;
23
+ case "T": e("A"); break;
24
+ case "C": e("G"); break;
25
+ case "G": e("C"); break;
26
+ default: e("Unhandled input "+i); break;
27
+ }
28
+ }
29
+
30
+ /*
31
+ * PartnerNucleotide.return_partner_nucleotide()
32
+ */
33
+ public static String return_partner_nucleotide(String i) {
34
+ switch(i) {
35
+ case "A": return ("T");
36
+ case "T": return ("A");
37
+ case "C": return ("G");
38
+ case "G": return ("C");
39
+ default: return ("Unhandled input "+i);
40
+ }
41
+ }
42
+
43
+ public static void main(String[] args) {
44
+
45
+ if (args.length > 0) {
46
+ for (String string : args) {
47
+ PartnerNucleotide.partner_nucleotide(string);
48
+ }
49
+ }
50
+ else {
51
+ System.out.println("Please provide input to this class, a DNA sequence.");
52
+ }
53
+
54
+ }
55
+
56
+ }
@@ -1,6 +1,6 @@
1
1
  package bioroebe;
2
2
 
3
- import java.io.*;
3
+ import java.io.*;
4
4
 
5
5
  /*
6
6
  * RemoveFile.remove_file("A");
@@ -18,7 +18,13 @@ class RemoveFile extends Base {
18
18
  }
19
19
  else {
20
20
  e("The file at `"+this_file+"` could NOT be deleted");
21
- }
21
+ }
22
+
23
+ }
24
+ }
25
+
26
+ /*
22
27
 
23
- }
24
- }
28
+ RemoveFile.remove_file("/Depot/j/test.md");
29
+
30
+ */
@@ -1,4 +1,5 @@
1
1
  package bioroebe;
2
+
2
3
  import java.util.Scanner;
3
4
 
4
5
  /*
@@ -13,13 +13,13 @@ class ToCamelcase extends Base {
13
13
  *
14
14
  * Usage example:
15
15
  *
16
- * ToCamelcase.to_camelcase("foo_bar");
17
- *
16
+ * ToCamelcase.to_camelcase("foo_bar"); # => "FooBar"
17
+
18
18
  */
19
19
  public static String to_camelcase(String i) {
20
20
 
21
21
  StringBuilder sb = new StringBuilder();
22
-
22
+
23
23
  for( String entry : i.toLowerCase().split("_") )
24
24
  {
25
25
  sb.append( entry.substring(0,1).toUpperCase() );
@@ -0,0 +1,42 @@
1
+ /* package ToRNA; */
2
+
3
+ public class ToRNA {
4
+
5
+ static String[] commandline_arguments;
6
+
7
+ /*
8
+ * Main constructor (def initialize)
9
+ */
10
+ public ToRNA() {
11
+ run();
12
+ }
13
+ /*
14
+ * run()
15
+ */
16
+ void run() {
17
+
18
+ if (commandline_arguments.length > 0) {
19
+ for (String entry : commandline_arguments) {
20
+ en(entry);
21
+ }
22
+ }
23
+ else {
24
+ en("Please provide an input to this method, a DNA sequence.");
25
+ }
26
+
27
+ }
28
+
29
+ public static void e(String i) {
30
+ System.out.print(i);
31
+ }
32
+
33
+ public static void en(String i) {
34
+ System.out.println(i);
35
+ }
36
+
37
+ public static void main(String[] args) {
38
+ commandline_arguments = args;
39
+ ToRNA x = new ToRNA();
40
+ }
41
+
42
+ }
@@ -0,0 +1,75 @@
1
+ /* package BaseComposition; */
2
+ /*package bioroebe.toplevel_methods;*/
3
+
4
+ package bioroebe;
5
+
6
+ public class BaseComposition {
7
+
8
+ static String[] commandline_arguments;
9
+
10
+ /*
11
+ * Main constructor (def initialize)
12
+ */
13
+ public BaseComposition() {
14
+ run();
15
+ }
16
+ /*
17
+ * run()
18
+ */
19
+ void run() {
20
+ if (commandline_arguments.length == 0) {
21
+ en("Please provide an input argument.");
22
+ }
23
+ else {
24
+ String first_argument = commandline_arguments[0];
25
+ en(
26
+ "The base composition frequencies of this sequence "+
27
+ "(length: "+first_argument.length()+") is as follows:"
28
+ );
29
+ en("");
30
+ int total_length = first_argument.length();
31
+ int n_A = 0;
32
+ int n_T = 0;
33
+ int n_C = 0;
34
+ int n_G = 0;
35
+
36
+ for (int i = 0; i < total_length; i++) {
37
+ char this_char = first_argument.charAt(i);
38
+ if (this_char == 'A') {
39
+ n_A += 1;
40
+ }
41
+ else if (this_char == 'T') {
42
+ n_T += 1;
43
+ }
44
+ else if (this_char == 'C') {
45
+ n_C += 1;
46
+ }
47
+ else if (this_char == 'G') {
48
+ n_G += 1;
49
+ }
50
+ }
51
+ en(
52
+ " "+
53
+ "A: "+Math.round((n_A * 100.0 / total_length) * Math.pow(10, 2) ) / Math.pow(10, 2)+"% "+
54
+ "T: "+Math.round((n_T * 100.0 / total_length) * Math.pow(10, 2) ) / Math.pow(10, 2)+"% "+
55
+ "C: "+Math.round((n_C * 100.0 / total_length) * Math.pow(10, 2) ) / Math.pow(10, 2)+"% "+
56
+ "G: "+Math.round((n_G * 100.0 / total_length) * Math.pow(10, 2) ) / Math.pow(10, 2)+"% "
57
+ );
58
+ en("");
59
+ }
60
+ }
61
+
62
+ public static void e(String i) {
63
+ System.out.print(i);
64
+ }
65
+
66
+ public static void en(String i) {
67
+ System.out.println(i);
68
+ }
69
+
70
+ public static void main(String[] args) {
71
+ commandline_arguments = args;
72
+ BaseComposition x = new BaseComposition();
73
+ }
74
+
75
+ }
@@ -24,6 +24,8 @@
24
24
  # variant - that one should work fine.
25
25
  # =========================================================================== #
26
26
  # require 'bioroebe/misc/ruler.rb'
27
+ # puts Bioroebe.return_ruler('ATGCTGACAGGGGGGGEEEEEE')
28
+ # Bioroebe.ruler_return_as_string_without_colours 'ATGCTGACAGGGGGGGEEEEEE'
27
29
  # Bioroebe::Ruler.new(ARGV)
28
30
  # =========================================================================== #
29
31
  require 'bioroebe/base/commandline_application/commandline_application.rb'
@@ -54,8 +56,14 @@ class Ruler < ::Bioroebe::CommandlineApplication # === Bioroebe::Ruler
54
56
  set_group_together_n_nucleotides(
55
57
  group_together_n_nucleotides
56
58
  )
59
+ # ======================================================================= #
60
+ # === Handle blocks next
61
+ # ======================================================================= #
57
62
  if block_given?
58
63
  yielded = yield
64
+ # ===================================================================== #
65
+ # === Handle Hashes next
66
+ # ===================================================================== #
59
67
  if yielded.is_a? Hash
60
68
  # =================================================================== #
61
69
  # === :ruler
@@ -206,14 +214,15 @@ end
206
214
  # This will return the ruler as a String; it exists mostly for
207
215
  # convenience reasons.
208
216
  #
209
- # Invocation example:
217
+ # Invocation examples:
210
218
  #
211
219
  # puts Bioroebe.ruler_return_as_string 'ATGCTGACAGGGGGGGEEEEEE'
220
+ # puts Bioroebe.return_ruler('ATGCTGACAGGGGGGGEEEEEE')
212
221
  #
213
222
  # =========================================================================== #
214
223
  def self.ruler_return_as_string(i, group_together_n_nucleotides = 70)
215
224
  ::Bioroebe::Ruler.new(i, group_together_n_nucleotides).result_as_string
216
- end
225
+ end; self.instance_eval { alias return_ruler ruler_return_as_string } # === Bioroebe.return_ruler
217
226
 
218
227
  # =========================================================================== #
219
228
  # === Bioroebe.ruler_return_as_string_without_colours
@@ -27,11 +27,6 @@ class MostLikelyNucleotideSequenceForThisAminoacidSequence < ::Bioroebe::Command
27
27
  require 'bioroebe/aminoacids/codon_percentage.rb'
28
28
  require 'bioroebe/codons/possible_codons_for_this_aminoacid.rb'
29
29
 
30
- # ========================================================================= #
31
- # === NAMESPACE
32
- # ========================================================================= #
33
- NAMESPACE = inspect
34
-
35
30
  # ========================================================================= #
36
31
  # === initialize
37
32
  # ========================================================================= #
@@ -63,10 +58,7 @@ class MostLikelyNucleotideSequenceForThisAminoacidSequence < ::Bioroebe::Command
63
58
  # ========================================================================= #
64
59
  def reset
65
60
  super()
66
- # ======================================================================= #
67
- # === @namespace
68
- # ======================================================================= #
69
- @namespace = NAMESPACE
61
+ infer_the_namespace
70
62
  # ======================================================================= #
71
63
  # === @internal_hash
72
64
  # ======================================================================= #
@@ -475,13 +475,6 @@ class ShowNucleotideSequence < ::Bioroebe::Sequence # === Bioroebe::ShowNucleoti
475
475
  erev i
476
476
  end; alias display report # === display (display tag)
477
477
 
478
- # ========================================================================= #
479
- # === do_colourize_the_start_codon
480
- # ========================================================================= #
481
- def do_colourize_the_start_codon
482
- add_this_substring('ATG')
483
- end
484
-
485
478
  # ========================================================================= #
486
479
  # === colourize_dna_sequence
487
480
  # ========================================================================= #
@@ -529,6 +522,13 @@ class ShowNucleotideSequence < ::Bioroebe::Sequence # === Bioroebe::ShowNucleoti
529
522
  end; alias set_search_for search_for_this_substring # === set_search_for
530
523
  alias add_this_substring search_for_this_substring # === add_this_substring
531
524
 
525
+ # ========================================================================= #
526
+ # === do_colourize_the_start_codon
527
+ # ========================================================================= #
528
+ def do_colourize_the_start_codon
529
+ add_this_substring('ATG')
530
+ end
531
+
532
532
  # ========================================================================= #
533
533
  # === run
534
534
  # ========================================================================= #