bioroebe 0.10.80 → 0.12.24

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 (301) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +3946 -2817
  3. data/bin/bioroebe +13 -2
  4. data/bin/bioroebe_hash +7 -0
  5. data/bin/codon_to_aminoacid +6 -4
  6. data/bin/compacter +7 -0
  7. data/bin/plain_palindrome +7 -0
  8. data/bioroebe.gemspec +3 -3
  9. data/doc/README.gen +3918 -2793
  10. data/doc/quality_control/commandline_applications.md +3 -3
  11. data/doc/statistics/statistics.md +7 -7
  12. data/doc/todo/bioroebe_GUI_todo.md +19 -14
  13. data/doc/todo/bioroebe_java_todo.md +22 -0
  14. data/doc/todo/bioroebe_todo.md +2075 -2620
  15. data/lib/bioroebe/C++/DNA.cpp +69 -0
  16. data/lib/bioroebe/C++/RNA.cpp +58 -0
  17. data/lib/bioroebe/C++/sequence.cpp +35 -0
  18. data/lib/bioroebe/abstract/README.md +1 -0
  19. data/lib/bioroebe/abstract/features.rb +29 -0
  20. data/lib/bioroebe/aminoacids/aminoacid_substitution.rb +1 -9
  21. data/lib/bioroebe/aminoacids/codon_percentage.rb +1 -9
  22. data/lib/bioroebe/aminoacids/deduce_aminoacid_sequence.rb +1 -9
  23. data/lib/bioroebe/aminoacids/display_aminoacid_table.rb +1 -0
  24. data/lib/bioroebe/aminoacids/show_hydrophobicity.rb +1 -6
  25. data/lib/bioroebe/base/base_module/base_module.rb +36 -0
  26. data/lib/bioroebe/base/colours_for_base/colours_for_base.rb +18 -8
  27. data/lib/bioroebe/base/commandline_application/commandline_application.rb +13 -9
  28. data/lib/bioroebe/base/commandline_application/commandline_arguments.rb +24 -19
  29. data/lib/bioroebe/base/commandline_application/misc.rb +66 -49
  30. data/lib/bioroebe/base/commandline_application/opn.rb +8 -8
  31. data/lib/bioroebe/base/commandline_application/reset.rb +5 -3
  32. data/lib/bioroebe/base/internal_hash_module/internal_hash_module.rb +42 -0
  33. data/lib/bioroebe/base/misc.rb +35 -0
  34. data/lib/bioroebe/base/prototype/misc.rb +15 -9
  35. data/lib/bioroebe/base/prototype/reset.rb +10 -0
  36. data/lib/bioroebe/cleave_and_digest/digestion.rb +10 -2
  37. data/lib/bioroebe/cleave_and_digest/trypsin.rb +104 -50
  38. data/lib/bioroebe/codon_tables/frequencies/parse_frequency_table.rb +2 -10
  39. data/lib/bioroebe/codons/codons.rb +1 -1
  40. data/lib/bioroebe/codons/convert_this_codon_to_that_aminoacid.rb +208 -59
  41. data/lib/bioroebe/codons/possible_codons_for_this_aminoacid.rb +1 -9
  42. data/lib/bioroebe/codons/show_codon_tables.rb +8 -3
  43. data/lib/bioroebe/codons/show_codon_usage.rb +15 -4
  44. data/lib/bioroebe/colours/rev.rb +4 -1
  45. data/lib/bioroebe/constants/aminoacids_and_proteins.rb +1 -0
  46. data/lib/bioroebe/constants/database_constants.rb +1 -1
  47. data/lib/bioroebe/constants/files_and_directories.rb +31 -4
  48. data/lib/bioroebe/constants/misc.rb +20 -0
  49. data/lib/bioroebe/constants/nucleotides.rb +7 -0
  50. data/lib/bioroebe/conversions/dna_to_aminoacid_sequence.rb +109 -39
  51. data/lib/bioroebe/count/count_amount_of_aminoacids.rb +3 -2
  52. data/lib/bioroebe/count/count_amount_of_nucleotides.rb +3 -0
  53. data/lib/bioroebe/cpp +1 -0
  54. data/lib/bioroebe/crystal/README.md +2 -0
  55. data/lib/bioroebe/crystal/to_rna.cr +19 -0
  56. data/lib/bioroebe/data/README.md +11 -8
  57. data/lib/bioroebe/data/electron_microscopy/pos_example.pos +396 -0
  58. data/lib/bioroebe/data/electron_microscopy/test_particles.star +36 -0
  59. data/lib/bioroebe/data/fasta/human/Homo_sapiens_hemoglobin_subunit_alpha_HBB_mRNA.fasta +9 -0
  60. data/lib/bioroebe/data/fasta/human/Homo_sapiens_hemoglobin_subunit_beta_HBB_mRNA.fasta +8 -0
  61. data/lib/bioroebe/data/fasta/human/README.md +2 -0
  62. data/lib/bioroebe/dotplots/advanced_dotplot.rb +1 -1
  63. data/lib/bioroebe/electron_microscopy/coordinate_analyzer.rb +15 -18
  64. data/lib/bioroebe/{fasta_and_fastq/parse_fasta/run.rb → electron_microscopy/electron_microscopy_module.rb} +16 -8
  65. data/lib/bioroebe/electron_microscopy/fix_pos_file.rb +1 -9
  66. data/lib/bioroebe/electron_microscopy/flipy.rb +83 -0
  67. data/lib/bioroebe/electron_microscopy/parse_coordinates.rb +2 -10
  68. data/lib/bioroebe/electron_microscopy/read_file_xmd.rb +1 -9
  69. data/lib/bioroebe/electron_microscopy/simple_star_file_generator.rb +4 -9
  70. data/lib/bioroebe/enzymes/has_this_restriction_enzyme.rb +10 -3
  71. data/lib/bioroebe/enzymes/restriction_enzyme.rb +23 -1
  72. data/lib/bioroebe/enzymes/restriction_enzymes/statistics.rb +65 -0
  73. data/lib/bioroebe/fasta_and_fastq/autocorrect_the_name_of_this_fasta_file.rb +1 -9
  74. data/lib/bioroebe/fasta_and_fastq/compact_fasta_file/compact_fasta_file.rb +7 -9
  75. data/lib/bioroebe/fasta_and_fastq/fasta_defline/fasta_defline.rb +1 -5
  76. data/lib/bioroebe/fasta_and_fastq/fasta_to_yaml/fasta_to_yaml.rb +81 -0
  77. data/lib/bioroebe/fasta_and_fastq/parse_fasta/parse_fasta.rb +1518 -7
  78. data/lib/bioroebe/fasta_and_fastq/return_fasta_subsection_of_this_file.rb +11 -2
  79. data/lib/bioroebe/fasta_and_fastq/show_fasta_headers.rb +27 -12
  80. data/lib/bioroebe/fasta_and_fastq/simplify_fasta_header/simplify_fasta_header.rb +1 -5
  81. data/lib/bioroebe/fasta_and_fastq/split_this_fasta_file_into_chromosomes/constants.rb +0 -5
  82. data/lib/bioroebe/genome/README.md +4 -0
  83. data/lib/bioroebe/genome/genome.rb +130 -0
  84. data/lib/bioroebe/genomes/genome_pattern.rb +3 -9
  85. data/lib/bioroebe/gui/gtk +1 -0
  86. data/lib/bioroebe/gui/gtk3/alignment/alignment.rb +106 -137
  87. data/lib/bioroebe/gui/gtk3/aminoacid_composition/aminoacid_composition.rb +27 -61
  88. data/lib/bioroebe/gui/gtk3/aminoacid_composition/customized_dialog.rb +1 -1
  89. data/lib/bioroebe/gui/gtk3/blosum_matrix_viewer/blosum_matrix_viewer.rb +1 -2
  90. data/lib/bioroebe/gui/gtk3/calculate_cell_numbers_of_bacteria/calculate_cell_numbers_of_bacteria.rb +1 -2
  91. data/lib/bioroebe/gui/gtk3/controller/controller.rb +46 -29
  92. data/lib/bioroebe/gui/gtk3/dna_to_aminoacid_widget/dna_to_aminoacid_widget.rb +77 -52
  93. data/lib/bioroebe/gui/gtk3/dna_to_reverse_complement_widget/dna_to_reverse_complement_widget.rb +1 -2
  94. data/lib/bioroebe/gui/gtk3/fasta_table_widget/fasta_table_widget.rb +100 -23
  95. data/lib/bioroebe/gui/gtk3/format_converter/format_converter.rb +1 -2
  96. data/lib/bioroebe/gui/gtk3/gene/gene.rb +1 -2
  97. data/lib/bioroebe/gui/gtk3/hamming_distance/hamming_distance.rb +43 -30
  98. data/lib/bioroebe/gui/gtk3/levensthein_distance/levensthein_distance.rb +1 -2
  99. data/lib/bioroebe/gui/gtk3/nucleotide_analyser/nucleotide_analyser.rb +120 -73
  100. data/lib/bioroebe/gui/gtk3/primer_design_widget/primer_design_widget.rb +1 -2
  101. data/lib/bioroebe/gui/gtk3/protein_to_DNA/protein_to_DNA.rb +19 -20
  102. data/lib/bioroebe/gui/gtk3/random_sequence/random_sequence.rb +20 -13
  103. data/lib/bioroebe/gui/gtk3/restriction_enzymes/restriction_enzymes.rb +1 -2
  104. data/lib/bioroebe/gui/gtk3/show_codon_table/misc.rb +97 -22
  105. data/lib/bioroebe/gui/gtk3/show_codon_table/show_codon_table.rb +3 -73
  106. data/lib/bioroebe/gui/gtk3/show_codon_usage/show_codon_usage.rb +1 -2
  107. data/lib/bioroebe/gui/gtk3/sizeseq/sizeseq.rb +1 -2
  108. data/lib/bioroebe/gui/gtk3/three_to_one/three_to_one.rb +1 -2
  109. data/lib/bioroebe/gui/gtk3/www_finder/www_finder.rb +1 -2
  110. data/lib/bioroebe/gui/javafx/bioroebe/Bioroebe.class +0 -0
  111. data/lib/bioroebe/gui/javafx/bioroebe/Bioroebe.java +104 -0
  112. data/lib/bioroebe/gui/javafx/bioroebe.jar +0 -0
  113. data/lib/bioroebe/gui/javafx/bioroebe.mf +1 -0
  114. data/lib/bioroebe/gui/javafx/module-info.class +0 -0
  115. data/lib/bioroebe/gui/javafx/module-info.java +5 -0
  116. data/lib/bioroebe/gui/jruby/alignment/alignment.rb +165 -0
  117. data/lib/bioroebe/gui/jruby/aminoacid_composition/aminoacid_composition.rb +166 -0
  118. data/lib/bioroebe/gui/libui/alignment/alignment.rb +3 -1
  119. data/lib/bioroebe/gui/libui/controller/controller.rb +116 -0
  120. data/lib/bioroebe/gui/libui/random_sequence/random_sequence.rb +18 -2
  121. data/lib/bioroebe/gui/libui/show_codon_table/show_codon_table.rb +2 -0
  122. data/lib/bioroebe/gui/libui/three_to_one/three_to_one.rb +8 -6
  123. data/lib/bioroebe/gui/shared_code/alignment/alignment_module.rb +102 -0
  124. data/lib/bioroebe/gui/shared_code/aminoacid_composition/aminoacid_composition_module.rb +94 -0
  125. data/lib/bioroebe/gui/shared_code/levensthein_distance/levensthein_distance_module.rb +18 -16
  126. data/lib/bioroebe/gui/shared_code/protein_to_DNA/protein_to_DNA_module.rb +14 -14
  127. data/lib/bioroebe/gui/swing/three_to_one/ThreeToOne$1.class +0 -0
  128. data/lib/bioroebe/gui/swing/three_to_one/ThreeToOne$CloseListener.class +0 -0
  129. data/lib/bioroebe/gui/swing/three_to_one/ThreeToOne.class +0 -0
  130. data/lib/bioroebe/gui/swing/three_to_one/ThreeToOne.java +141 -0
  131. data/lib/bioroebe/images/FORWARD_PRIMER.png +0 -0
  132. data/lib/bioroebe/images/REVERSE_PRIMER.png +0 -0
  133. data/lib/bioroebe/images/images.html +29845 -0
  134. data/lib/bioroebe/java/README.md +5 -0
  135. data/lib/bioroebe/java/bioroebe/AllInOne.java +1 -0
  136. data/lib/bioroebe/java/bioroebe/Base.class +0 -0
  137. data/lib/bioroebe/java/bioroebe/Base.java +39 -5
  138. data/lib/bioroebe/java/bioroebe/IsPalindrome.java +23 -5
  139. data/lib/bioroebe/java/bioroebe/SanitizeNucleotideSequence.java +0 -0
  140. data/lib/bioroebe/java/bioroebe/Sequence.java +28 -3
  141. data/lib/bioroebe/java/bioroebe/ToCamelcase.class +0 -0
  142. data/lib/bioroebe/java/bioroebe/ToCamelcase.java +16 -4
  143. data/lib/bioroebe/java/bioroebe/ToRNA.java +43 -0
  144. data/lib/bioroebe/java/bioroebe/ToplevelMethods.java +6 -0
  145. data/lib/bioroebe/java/bioroebe/{BisulfiteTreatment.class → src/BisulfiteTreatment.class} +0 -0
  146. data/lib/bioroebe/java/bioroebe/{Codons.class → src/Codons.class} +0 -0
  147. data/lib/bioroebe/java/bioroebe/src/Codons.java +35 -0
  148. data/lib/bioroebe/java/bioroebe/src/Commandline.class +0 -0
  149. data/lib/bioroebe/java/bioroebe/src/Commandline.java +101 -0
  150. data/lib/bioroebe/java/bioroebe/{Esystem.class → src/Esystem.class} +0 -0
  151. data/lib/bioroebe/java/bioroebe/{Esystem.java → src/Esystem.java} +6 -1
  152. data/lib/bioroebe/java/bioroebe/{GenerateRandomDnaSequence.class → src/GenerateRandomDnaSequence.class} +0 -0
  153. data/lib/bioroebe/java/bioroebe/{GenerateRandomDnaSequence.java → src/GenerateRandomDnaSequence.java} +8 -2
  154. data/lib/bioroebe/java/bioroebe/src/PartnerNucleotide.class +0 -0
  155. data/lib/bioroebe/java/bioroebe/src/PartnerNucleotide.java +56 -0
  156. data/lib/bioroebe/java/bioroebe/{RemoveFile.java → src/RemoveFile.java} +10 -4
  157. data/lib/bioroebe/java/bioroebe/{RemoveNumbers.class → src/RemoveNumbers.class} +0 -0
  158. data/lib/bioroebe/java/bioroebe/{RemoveNumbers.java → src/RemoveNumbers.java} +1 -0
  159. data/lib/bioroebe/java/bioroebe/src/toplevel_methods/BaseComposition.class +0 -0
  160. data/lib/bioroebe/java/bioroebe/src/toplevel_methods/BaseComposition.java +75 -0
  161. data/lib/bioroebe/misc/ruler.rb +11 -2
  162. data/lib/bioroebe/nucleotides/most_likely_nucleotide_sequence_for_this_aminoacid_sequence.rb +1 -9
  163. data/lib/bioroebe/nucleotides/sanitize_nucleotide_sequence.rb +59 -18
  164. data/lib/bioroebe/nucleotides/show_nucleotide_sequence.rb +7 -7
  165. data/lib/bioroebe/parsers/genbank_parser.rb +347 -26
  166. data/lib/bioroebe/parsers/gff.rb +1 -9
  167. data/lib/bioroebe/patterns/scan_for_repeat.rb +1 -5
  168. data/lib/bioroebe/pdb/fetch_fasta_sequence_from_pdb.rb +1 -9
  169. data/lib/bioroebe/pdb/parse_mmCIF_file.rb +1 -9
  170. data/lib/bioroebe/pdb/parse_pdb_file.rb +4 -10
  171. data/lib/bioroebe/project/project.rb +1 -1
  172. data/lib/bioroebe/python/README.md +1 -0
  173. data/lib/bioroebe/python/__pycache__/mymodule.cpython-39.pyc +0 -0
  174. data/lib/bioroebe/python/gui/gtk3/all_in_one.css +4 -0
  175. data/lib/bioroebe/python/gui/gtk3/all_in_one.py +59 -0
  176. data/lib/bioroebe/python/gui/gtk3/widget1.py +20 -0
  177. data/lib/bioroebe/python/gui/tkinter/all_in_one.py +91 -0
  178. data/lib/bioroebe/python/mymodule.py +8 -0
  179. data/lib/bioroebe/python/protein_to_dna.py +33 -0
  180. data/lib/bioroebe/python/shell/shell.py +19 -0
  181. data/lib/bioroebe/python/to_rna.py +14 -0
  182. data/lib/bioroebe/python/toplevel_methods/convert_dna_to_aminoacid_sequence.py +137 -0
  183. data/lib/bioroebe/python/toplevel_methods/esystem.py +12 -0
  184. data/lib/bioroebe/python/toplevel_methods/open_in_browser.py +20 -0
  185. data/lib/bioroebe/python/toplevel_methods/palindromes.py +52 -0
  186. data/lib/bioroebe/python/toplevel_methods/rds.py +13 -0
  187. data/lib/bioroebe/python/toplevel_methods/shuffleseq.py +23 -0
  188. data/lib/bioroebe/python/toplevel_methods/three_delimiter.py +37 -0
  189. data/lib/bioroebe/python/toplevel_methods/time_and_date.py +43 -0
  190. data/lib/bioroebe/python/toplevel_methods/to_camelcase.py +21 -0
  191. data/lib/bioroebe/requires/require_cleave_and_digest.rb +3 -1
  192. data/lib/bioroebe/requires/require_the_bioroebe_project.rb +3 -1
  193. data/lib/bioroebe/sequence/alignment.rb +14 -4
  194. data/lib/bioroebe/sequence/dna.rb +1 -0
  195. data/lib/bioroebe/sequence/nucleotide_module/nucleotide_module.rb +28 -25
  196. data/lib/bioroebe/sequence/protein.rb +105 -3
  197. data/lib/bioroebe/sequence/rna.rb +220 -0
  198. data/lib/bioroebe/sequence/sequence.rb +128 -40
  199. data/lib/bioroebe/shell/menu.rb +3815 -3696
  200. data/lib/bioroebe/shell/misc.rb +9019 -3133
  201. data/lib/bioroebe/shell/readline/readline.rb +1 -1
  202. data/lib/bioroebe/shell/shell.rb +1137 -28
  203. data/lib/bioroebe/siRNA/siRNA.rb +81 -1
  204. data/lib/bioroebe/string_matching/find_longest_substring.rb +3 -2
  205. data/lib/bioroebe/string_matching/hamming_distance.rb +1 -9
  206. data/lib/bioroebe/taxonomy/class_methods.rb +3 -8
  207. data/lib/bioroebe/taxonomy/constants.rb +4 -3
  208. data/lib/bioroebe/taxonomy/edit.rb +2 -1
  209. data/lib/bioroebe/taxonomy/help/help.rb +10 -10
  210. data/lib/bioroebe/taxonomy/help/helpline.rb +2 -2
  211. data/lib/bioroebe/taxonomy/info/check_available.rb +15 -9
  212. data/lib/bioroebe/taxonomy/info/info.rb +18 -11
  213. data/lib/bioroebe/taxonomy/info/is_dna.rb +46 -36
  214. data/lib/bioroebe/taxonomy/interactive.rb +140 -104
  215. data/lib/bioroebe/taxonomy/menu.rb +27 -18
  216. data/lib/bioroebe/taxonomy/parse_fasta.rb +3 -1
  217. data/lib/bioroebe/taxonomy/shared.rb +1 -0
  218. data/lib/bioroebe/taxonomy/taxonomy.rb +1 -0
  219. data/lib/bioroebe/toplevel_methods/aminoacids_and_proteins.rb +31 -24
  220. data/lib/bioroebe/toplevel_methods/colourize_related_methods.rb +164 -0
  221. data/lib/bioroebe/toplevel_methods/databases.rb +1 -1
  222. data/lib/bioroebe/toplevel_methods/digest.rb +18 -8
  223. data/lib/bioroebe/toplevel_methods/fasta_and_fastq.rb +107 -63
  224. data/lib/bioroebe/toplevel_methods/file_and_directory_related_actions.rb +14 -2
  225. data/lib/bioroebe/toplevel_methods/frequencies.rb +8 -1
  226. data/lib/bioroebe/toplevel_methods/misc.rb +175 -11
  227. data/lib/bioroebe/toplevel_methods/nucleotides.rb +118 -46
  228. data/lib/bioroebe/toplevel_methods/open_in_browser.rb +2 -0
  229. data/lib/bioroebe/toplevel_methods/palindromes.rb +75 -47
  230. data/lib/bioroebe/toplevel_methods/taxonomy.rb +3 -3
  231. data/lib/bioroebe/toplevel_methods/to_camelcase.rb +5 -0
  232. data/lib/bioroebe/utility_scripts/align_open_reading_frames.rb +1 -9
  233. data/lib/bioroebe/utility_scripts/check_for_mismatches/check_for_mismatches.rb +1 -9
  234. data/lib/bioroebe/utility_scripts/compacter/compacter.rb +251 -0
  235. data/lib/bioroebe/utility_scripts/compseq/compseq.rb +1 -9
  236. data/lib/bioroebe/utility_scripts/consensus_sequence.rb +6 -6
  237. data/lib/bioroebe/utility_scripts/create_batch_entrez_file.rb +1 -9
  238. data/lib/bioroebe/utility_scripts/dot_alignment.rb +1 -9
  239. data/lib/bioroebe/utility_scripts/move_file_to_its_correct_location.rb +1 -4
  240. data/lib/bioroebe/utility_scripts/parse_taxonomy.rb +2 -2
  241. data/lib/bioroebe/utility_scripts/permutations.rb +36 -9
  242. data/lib/bioroebe/utility_scripts/showorf/constants.rb +0 -5
  243. data/lib/bioroebe/utility_scripts/showorf/reset.rb +1 -4
  244. data/lib/bioroebe/version/version.rb +2 -2
  245. data/lib/bioroebe/www/embeddable_interface.rb +121 -58
  246. data/lib/bioroebe/www/sinatra/sinatra.rb +186 -71
  247. data/lib/bioroebe/yaml/aminoacids/amino_acids_long_name_to_one_letter.yml +2 -2
  248. data/lib/bioroebe/yaml/aminoacids/weight_of_common_proteins.yml +17 -17
  249. data/lib/bioroebe/yaml/configuration/browser.yml +1 -1
  250. data/lib/bioroebe/yaml/configuration/temp_dir.yml +1 -1
  251. data/lib/bioroebe/yaml/consensus_sequences/consensus_sequences.yml +1 -0
  252. data/lib/bioroebe/yaml/genomes/README.md +3 -4
  253. data/lib/bioroebe/yaml/nucleotides/nucleotides.yml +5 -0
  254. data/lib/bioroebe/yaml/restriction_enzymes/restriction_enzymes.yml +57 -57
  255. data/spec/README.md +6 -0
  256. data/spec/project_wide_specification/classes.md +5 -0
  257. metadata +107 -70
  258. data/doc/setup.rb +0 -1655
  259. data/lib/bioroebe/fasta_and_fastq/parse_fasta/constants.rb +0 -50
  260. data/lib/bioroebe/fasta_and_fastq/parse_fasta/initialize.rb +0 -86
  261. data/lib/bioroebe/fasta_and_fastq/parse_fasta/menu.rb +0 -117
  262. data/lib/bioroebe/fasta_and_fastq/parse_fasta/misc.rb +0 -981
  263. data/lib/bioroebe/fasta_and_fastq/parse_fasta/report.rb +0 -156
  264. data/lib/bioroebe/fasta_and_fastq/parse_fasta/reset.rb +0 -128
  265. data/lib/bioroebe/genbank/genbank_parser.rb +0 -291
  266. data/lib/bioroebe/java/bioroebe/AllInOne.class +0 -0
  267. data/lib/bioroebe/java/bioroebe/Cat.class +0 -0
  268. data/lib/bioroebe/java/bioroebe/Codons.java +0 -22
  269. data/lib/bioroebe/java/bioroebe/IsPalindrome.class +0 -0
  270. data/lib/bioroebe/java/bioroebe/PartnerNucleotide.class +0 -0
  271. data/lib/bioroebe/java/bioroebe/PartnerNucleotide.java +0 -19
  272. data/lib/bioroebe/java/bioroebe/SanitizeNucleotideSequence.class +0 -0
  273. data/lib/bioroebe/java/bioroebe/ToplevelMethods.class +0 -0
  274. data/lib/bioroebe/java/bioroebe.jar +0 -0
  275. data/lib/bioroebe/shell/add.rb +0 -108
  276. data/lib/bioroebe/shell/assign.rb +0 -360
  277. data/lib/bioroebe/shell/chop_and_cut.rb +0 -281
  278. data/lib/bioroebe/shell/constants.rb +0 -166
  279. data/lib/bioroebe/shell/download.rb +0 -335
  280. data/lib/bioroebe/shell/enable_and_disable.rb +0 -158
  281. data/lib/bioroebe/shell/enzymes.rb +0 -310
  282. data/lib/bioroebe/shell/fasta.rb +0 -345
  283. data/lib/bioroebe/shell/gtk.rb +0 -76
  284. data/lib/bioroebe/shell/history.rb +0 -132
  285. data/lib/bioroebe/shell/initialize.rb +0 -217
  286. data/lib/bioroebe/shell/loop.rb +0 -74
  287. data/lib/bioroebe/shell/prompt.rb +0 -107
  288. data/lib/bioroebe/shell/random.rb +0 -289
  289. data/lib/bioroebe/shell/reset.rb +0 -335
  290. data/lib/bioroebe/shell/scan_and_parse.rb +0 -135
  291. data/lib/bioroebe/shell/search.rb +0 -337
  292. data/lib/bioroebe/shell/sequences.rb +0 -200
  293. data/lib/bioroebe/shell/show_report_and_display.rb +0 -2901
  294. data/lib/bioroebe/shell/startup.rb +0 -127
  295. data/lib/bioroebe/shell/taxonomy.rb +0 -14
  296. data/lib/bioroebe/shell/tk.rb +0 -23
  297. data/lib/bioroebe/shell/user_input.rb +0 -88
  298. data/lib/bioroebe/shell/xorg.rb +0 -45
  299. data/lib/bioroebe/utility_scripts/compacter.rb +0 -131
  300. /data/lib/bioroebe/java/bioroebe/{BisulfiteTreatment.java → src/BisulfiteTreatment.java} +0 -0
  301. /data/lib/bioroebe/java/bioroebe/{RemoveFile.class → src/RemoveFile.class} +0 -0
@@ -19,11 +19,6 @@ module Bioroebe
19
19
 
20
20
  class ScanForRepeat < ::Bioroebe::CommandlineApplication # === Bioroebe::ScanForRepeat
21
21
 
22
- # ========================================================================= #
23
- # === NAMESPACE
24
- # ========================================================================= #
25
- NAMESPACE = inspect
26
-
27
22
  # ========================================================================= #
28
23
  # === initialize
29
24
  # ========================================================================= #
@@ -63,6 +58,7 @@ class ScanForRepeat < ::Bioroebe::CommandlineApplication # === Bioroebe::ScanFor
63
58
  # ========================================================================= #
64
59
  def reset
65
60
  super()
61
+ infer_the_namespace
66
62
  # ======================================================================= #
67
63
  # === @n_repeats
68
64
  # ======================================================================= #
@@ -21,11 +21,6 @@ class FetchFastaSequenceFromPdb < ::Bioroebe::CommandlineApplication # === Bioro
21
21
 
22
22
  require 'open-uri'
23
23
 
24
- # ========================================================================= #
25
- # === NAMESPACE
26
- # ========================================================================= #
27
- NAMESPACE = inspect
28
-
29
24
  # ========================================================================= #
30
25
  # === URL_FOR_FASTA_ENTRIES_AT_THE_PDB
31
26
  # ========================================================================= #
@@ -59,10 +54,7 @@ class FetchFastaSequenceFromPdb < ::Bioroebe::CommandlineApplication # === Bioro
59
54
  # ========================================================================= #
60
55
  def reset
61
56
  super()
62
- # ======================================================================= #
63
- # === @namespace
64
- # ======================================================================= #
65
- @namespace = NAMESPACE
57
+ infer_the_namespace
66
58
  # ======================================================================= #
67
59
  # === @result
68
60
  # ======================================================================= #
@@ -13,11 +13,6 @@ module Bioroebe
13
13
 
14
14
  class ParsemmCIFFile < ::Bioroebe::CommandlineApplication # === Bioroebe::ParsemmCIFFile
15
15
 
16
- # ========================================================================= #
17
- # === NAMESPACE
18
- # ========================================================================= #
19
- NAMESPACE = inspect
20
-
21
16
  # ========================================================================= #
22
17
  # === initialize
23
18
  # ========================================================================= #
@@ -44,10 +39,7 @@ class ParsemmCIFFile < ::Bioroebe::CommandlineApplication # === Bioroebe::Parsem
44
39
  # ========================================================================= #
45
40
  def reset
46
41
  super()
47
- # ======================================================================= #
48
- # === @namespace
49
- # ======================================================================= #
50
- @namespace = NAMESPACE
42
+ infer_the_namespace
51
43
  end
52
44
 
53
45
  # ========================================================================= #
@@ -114,11 +114,6 @@ module Bioroebe
114
114
 
115
115
  class ParsePdbFile < ::Bioroebe::CommandlineApplication # === Bioroebe::ParsePdbFile
116
116
 
117
- # ========================================================================= #
118
- # === NAMESPACE
119
- # ========================================================================= #
120
- NAMESPACE = inspect
121
-
122
117
  # ========================================================================= #
123
118
  # === DEFAULT_PDB_FILE
124
119
  # ========================================================================= #
@@ -171,10 +166,7 @@ class ParsePdbFile < ::Bioroebe::CommandlineApplication # === Bioroebe::ParsePdb
171
166
  # ========================================================================= #
172
167
  def reset
173
168
  super()
174
- # ======================================================================= #
175
- # === @namespace
176
- # ======================================================================= #
177
- @namespace = NAMESPACE
169
+ infer_the_namespace
178
170
  # ======================================================================= #
179
171
  # === @do_create_a_fasta_file
180
172
  #
@@ -994,7 +986,9 @@ class ParsePdbFile < ::Bioroebe::CommandlineApplication # === Bioroebe::ParsePdb
994
986
  lightgreen(::Bioroebe.one_to_three(aminoacid_one_letter).upcase)+
995
987
  rev+
996
988
  ' - '+
997
- steelblue(n_occurrences.to_s)
989
+ steelblue(
990
+ n_occurrences.to_s.rjust(2,' ')
991
+ )
998
992
  }
999
993
  end
1000
994
  end
@@ -248,7 +248,7 @@ module Taxonomy
248
248
  # ========================================================================= #
249
249
  def self.project_base_dir?
250
250
  "#{::Bioroebe.project_base_directory?}taxonomy/"
251
- end
251
+ end; self.instance_eval { alias base_dir? project_base_dir? } # === Bioroebe::Taxonomy.base_dir?
252
252
 
253
253
  # ========================================================================= #
254
254
  # === Bioroebe::Taxonomy.project_yaml_dir?
@@ -0,0 +1 @@
1
+ This directory will contain some python-specific code.
@@ -0,0 +1,4 @@
1
+ window {
2
+ font-size: 28px;
3
+ border: 2px solid black;
4
+ }
@@ -0,0 +1,59 @@
1
+ import gi
2
+ #import cairo
3
+ #from gi.repository import PangoCairo
4
+
5
+ gi.require_version("Gtk", "3.0")
6
+ from gi.repository import Gtk, Gdk, GLib
7
+
8
+ gi.require_version('Pango', '1.0')
9
+ from gi.repository import Pango
10
+
11
+ class MyWindow(Gtk.Window):
12
+
13
+ def __init__(self):
14
+ super().__init__(title="Hello World")
15
+
16
+ self.set_title("Bioroebe - all in one")
17
+ self.set_default_size(1400, 800)
18
+
19
+ #self.override_font(Pango.FontDescription("Times New Roman Italic 20"))
20
+ # ^^^ this is deprecated
21
+ outer_vbox = Gtk.Box.new(Gtk.Orientation.VERTICAL, spacing = 5)
22
+
23
+ top_hbox = Gtk.Box.new(Gtk.Orientation.HORIZONTAL, spacing = 5)
24
+
25
+ label = Gtk.Label(label="Time: ")
26
+ label.set_halign(Gtk.Align.END) # Right-align.
27
+ top_hbox.add(label)
28
+ outer_vbox.add(top_hbox)
29
+
30
+ self.button = Gtk.Button(label="Click Here")
31
+ self.button.connect("clicked", self.on_button_clicked)
32
+ outer_vbox.add(self.button)
33
+ # Bioroebe.return_current_day_month_year()
34
+
35
+ self.add(outer_vbox)
36
+ self.apply_css()
37
+
38
+ def apply_css(self):
39
+ screen = Gdk.Screen.get_default()
40
+ css_provider = Gtk.CssProvider()
41
+ try:
42
+ css_provider.load_from_path('all_in_one.css')
43
+ context = Gtk.StyleContext()
44
+ context.add_provider_for_screen(screen, css_provider,
45
+ Gtk.STYLE_PROVIDER_PRIORITY_USER)
46
+ except GLib.Error as e:
47
+ print(f"Error in theme: {e} ")
48
+
49
+ def en(self, i = ""):
50
+ print(i)
51
+
52
+ def on_button_clicked(self, widget):
53
+ self.en("Hello there.")
54
+
55
+ win = MyWindow()
56
+ win.move(0, 0)
57
+ win.connect("destroy", Gtk.main_quit)
58
+ win.show_all()
59
+ Gtk.main()
@@ -0,0 +1,20 @@
1
+ import gi
2
+
3
+ gi.require_version("Gtk", "3.0")
4
+ from gi.repository import Gtk
5
+
6
+ class MyWindow(Gtk.Window):
7
+ def __init__(self):
8
+ super().__init__(title="Hello World")
9
+
10
+ self.button = Gtk.Button(label="Click Here")
11
+ self.button.connect("clicked", self.on_button_clicked)
12
+ self.add(self.button)
13
+
14
+ def on_button_clicked(self, widget):
15
+ print("Hello World")
16
+
17
+ win = MyWindow()
18
+ win.connect("destroy", Gtk.main_quit)
19
+ win.show_all()
20
+ Gtk.main()
@@ -0,0 +1,91 @@
1
+ import sys
2
+ import os
3
+ import importlib
4
+
5
+ from tkinter import *
6
+ from tkinter import ttk
7
+ from tkinter.ttk import Label
8
+ from tkinter import messagebox
9
+
10
+ sys.path.append(".")
11
+
12
+ # sys.path.append("../../") # Adds higher directory to python modules path.
13
+
14
+ # from ../.. import protein_to_dna
15
+ # module_name = "../../protein_to_dna"
16
+ # importlib.import_module(module_name, package='Bioroebe')
17
+
18
+ # sys.path.append(os.path.abspath("/home/x/programming/ruby/src/bioroebe/lib/bioroebe/python/"))
19
+ # from protein_to_dny import *
20
+
21
+ class App:
22
+
23
+ # ========================================================================= #
24
+ # === TITLE
25
+ # ========================================================================= #
26
+ TITLE = "Bioroebe: all in one"
27
+
28
+ # ========================================================================= #
29
+ # === FONT_TO_USE
30
+ # ========================================================================= #
31
+ FONT_TO_USE = 'Hack' # 'Arial'
32
+
33
+ # ========================================================================= #
34
+ # === FONT_SIZE_TO_USE
35
+ # ========================================================================= #
36
+ FONT_SIZE_TO_USE = 28
37
+
38
+ # ========================================================================= #
39
+ # === SMALLER_FONT_SIZE_TO_USE
40
+ # ========================================================================= #
41
+ SMALLER_FONT_SIZE_TO_USE = 22
42
+
43
+ # ========================================================================= #
44
+ # === __init__
45
+ # ========================================================================= #
46
+ def __init__(self, master):
47
+ # Instantiating master i.e toplevel Widget
48
+ self.master = master
49
+ self.create_and_add_header()
50
+ self.create_and_add_the_button_for_the_protein_to_DNA_conversion()
51
+
52
+ # ========================================================================= #
53
+ # === do_the_conversion_from_protein_to_DNA
54
+ # ========================================================================= #
55
+ def do_the_conversion_from_protein_to_DNA(self):
56
+ messagebox.showinfo("Message","Hey There! I hope you are doing well.")
57
+
58
+ # ========================================================================= #
59
+ # === create_and_add_the_button_for_the_protein_to_DNA_conversion()
60
+ # ========================================================================= #
61
+ def create_and_add_the_button_for_the_protein_to_DNA_conversion(self):
62
+ Button(self.master,
63
+ text="Convert from protein sequence to DNA sequence",
64
+ font = (App.FONT_TO_USE, App.SMALLER_FONT_SIZE_TO_USE),
65
+ command = lambda: self.do_the_conversion_from_protein_to_DNA()
66
+ ).pack(pady = 5)
67
+
68
+ # ========================================================================= #
69
+ # === create_and_add_header
70
+ # ========================================================================= #
71
+ def create_and_add_header(self):
72
+ # Creating second label
73
+ # This label has a font-family of Arial
74
+ # and font-size of 25
75
+ Label(self.master,
76
+ text = "Protein to DNA conversion:",
77
+ font = (App.FONT_TO_USE, App.FONT_SIZE_TO_USE) # Changing font-size here
78
+ ).pack(padx = 12, pady = 12, anchor = "w") # Align to the left side.
79
+
80
+ if __name__ == "__main__":
81
+ root = Tk()
82
+ root.title(App.TITLE) # Setting the title of the window
83
+ root.geometry("1400x800") # Set width and height - aka the geometry/dimensions.
84
+ app = App(root) # Calling our App
85
+ root.mainloop() # Mainloop which will cause this toplevel to run infinitely
86
+
87
+ # frm = ttk.Frame(root, padding = 12)
88
+ # frm.grid()
89
+ # ttk.Label(frm, text="Hello World!").grid(column=0, row=0)
90
+ # ttk.Button(frm, text="Quit", command=root.destroy).grid(column=1, row=0)
91
+ # root.mainloop()
@@ -0,0 +1,8 @@
1
+ def greeting(name):
2
+ print("Hello, " + name)
3
+
4
+ person1 = {
5
+ "name": "John",
6
+ "age": 36,
7
+ "country": "Norway"
8
+ }
@@ -0,0 +1,33 @@
1
+ import sys
2
+ import yaml
3
+
4
+ USE_THIS_CODON_TABLE = \
5
+ '/home/x/programming/ruby/src/bioroebe/lib/bioroebe/yaml/codon_tables/1.yml'
6
+
7
+ # =========================================================================== #
8
+ # === protein_to_dna
9
+ # =========================================================================== #
10
+ def protein_to_dna(i):
11
+ output_string = ''
12
+ yaml_dataset = None
13
+ aminoacid_sequence = list(i)
14
+
15
+ with open(USE_THIS_CODON_TABLE) as file:
16
+ # The FullLoader parameter handles the conversion from YAML
17
+ # scalar values to Python the dictionary format
18
+ yaml_dataset = yaml.load(file, Loader=yaml.FullLoader)
19
+ yaml_dataset = { value: key for key, value in yaml_dataset.items() }
20
+
21
+ for this_aminoacid in aminoacid_sequence:
22
+ # Now we must obtain the DNA sequence.
23
+ # print(yaml_dataset[this_aminoacid])
24
+ output_string += yaml_dataset[this_aminoacid]
25
+ output_string += '-'
26
+
27
+ # print(yaml_dataset)
28
+ print(output_string[0: -1]) # Remove the last character.
29
+
30
+ if __name__ == '__main__':
31
+ i = sys.argv[1]
32
+ protein_to_dna(i)
33
+ # py protein_to_dna.py KKKLLL
@@ -0,0 +1,19 @@
1
+ #!/usr/bin/python
2
+ import sys
3
+
4
+ # =========================================================================== #
5
+ # === obtain_user_input
6
+ # =========================================================================== #
7
+ def obtain_user_input():
8
+ user_input = input("> ")
9
+ return user_input
10
+
11
+ shall_we_continue = True
12
+
13
+ while (shall_we_continue):
14
+ result = obtain_user_input
15
+ if result == "q":
16
+ shall_we_continue = False
17
+ # exit
18
+ else:
19
+ print(result)
@@ -0,0 +1,14 @@
1
+ import sys
2
+
3
+ # =========================================================================== #
4
+ # === to_rna
5
+ #
6
+ # This method will simply convert the given input, such as a
7
+ # nucleotide sequence, to RNA.
8
+ # =========================================================================== #
9
+ def to_rna(i):
10
+ converted = i.replace('T','U')
11
+ print(converted)
12
+
13
+ to_rna(sys.argv[1])
14
+ # py to_rna.py ATG
@@ -0,0 +1,137 @@
1
+ # =========================================================================== #
2
+ # Filename: convert_dna_to_aminoacid_sequence.py
3
+ # =========================================================================== #
4
+ import pprint
5
+ import sys
6
+ import re
7
+
8
+ # =========================================================================== #
9
+ # pp for simpler debugging.
10
+ # =========================================================================== #
11
+ pp = pprint.PrettyPrinter(indent = 4)
12
+
13
+ # =========================================================================== #
14
+ # === ConvertDNAtoAminoacidSequence
15
+ #
16
+ # This class does not do much other than map from CODON to Aminoacid
17
+ # sequence really.
18
+ # =========================================================================== #
19
+ class ConvertDNAtoAminoacidSequence:
20
+
21
+ # ========================================================================= #
22
+ # === HASH_CODON_TO_AMINOACID
23
+ #
24
+ # This will map from eukaryotes (aka humans).
25
+ # ========================================================================= #
26
+ HASH_CODON_TO_AMINOACID = {
27
+ 'TAA': '*', # Stop Codon.
28
+ 'TGA': '*', # Stop Codon.
29
+ 'TAG': '*', # Stop Codon.
30
+ 'START': 'ATG', # This is the main one in Eukaryotes.
31
+ 'TTT': 'F', # Phenylalanine.
32
+ 'TCT': 'S', # Serine.
33
+ 'TAT': 'Y', # Tyrosine.
34
+ 'TGT': 'C', # Cysteine.
35
+ 'TTC': 'F', # Phenylalanine.
36
+ 'TCC': 'S', # Serine.
37
+ 'TAC': 'Y', # Tyrosine.
38
+ 'TGC': 'C', # Cysteine.
39
+ 'TTA': 'L', # Leucine.
40
+ 'TCA': 'S', # Serine.
41
+ 'TTG': 'L', # Leucine.
42
+ 'TCG': 'S', # Serine.
43
+ 'TGG': 'W',# Tryptophane.
44
+ 'CTT': 'L', # Leucine.
45
+ 'CCT': 'P', # Proline.
46
+ 'CAT': 'H', # Histidine.
47
+ 'CGT': 'R', # Arginine.
48
+ 'CTC': 'L', # Leucine.
49
+ 'CCC': 'P', # Proline.
50
+ 'CAC': 'H', # Histidine.
51
+ 'CGC': 'R', # Arginine.
52
+ 'CTA': 'L', # Leucine.
53
+ 'CCA': 'P', # Proline.
54
+ 'CAA': 'Q', # Glutamine.
55
+ 'CGA': 'R', # Arginine.
56
+ 'CTG': 'L', # Leucine.
57
+ 'CCG': 'P', # Proline.
58
+ 'CAG': 'Q', # Glutamine.
59
+ 'CGG': 'R', # Arginine.
60
+ 'AAG': 'K', # Lysine.
61
+ 'AAA': 'K', # Lysine.
62
+ 'ATT': 'I', # Isoleucin.
63
+ 'ACT': 'T', # Threonine.
64
+ 'AAT': 'N', # Asparagin.
65
+ 'AGT': 'S', # Serine.
66
+ 'ATC': 'I', # Isoleucin.
67
+ 'ACC': 'T', # Threonine.
68
+ 'AAC': 'N', # Asparagin.
69
+ 'AGC': 'S', # Serine.
70
+ 'ATA': 'I', # Isoleucin.
71
+ 'ACA': 'T', # Threonine.
72
+ 'AGA': 'R', # Arginine.
73
+ 'ATG': 'M', # Methionin. This is also the start-codon.
74
+ 'ACG': 'T', # Threonine.
75
+ 'AGG': 'R', # Arginine.
76
+ 'GTT': 'V', # Valine.
77
+ 'GCT': 'A', # Alanine.
78
+ 'GAT': 'D', # Aspartic Acid.
79
+ 'GGT': 'G', # Glycine.
80
+ 'GTC': 'V', # Valine.
81
+ 'GCC': 'A', # Alanine.
82
+ 'GAC': 'D', # Aspartic Acid.
83
+ 'GGC': 'G', # Glycine.
84
+ 'GTA': 'V', # Valine.
85
+ 'GCA': 'A', # Alanine.
86
+ 'GAA': 'E', # Glutamic Acid.
87
+ 'GGA': 'G', # Glycine.
88
+ 'GTG': 'V', # Valine.
89
+ 'GCG': 'A', # Alanine.
90
+ 'GAG': 'E', # Glutamic Acid.
91
+ 'GGG': 'G' # Glycine.
92
+ }
93
+
94
+ # ========================================================================= #
95
+ # === __init__
96
+ #
97
+ # Our constructor. We will store the sequence onto the string
98
+ # called string_fasta_sequence.
99
+ # ========================================================================= #
100
+ def __init__(self, this_sequence = 'ATGCATCGCATCATGCATCA'):
101
+ if type(this_sequence) == list:
102
+ this_sequence = ''.join(this_sequence)
103
+ self.sequence = this_sequence
104
+ self.scan_for_codons()
105
+
106
+ # ========================================================================= #
107
+ # === scan_for_codons()
108
+ # ========================================================================= #
109
+ def scan_for_codons(self):
110
+ codons = re.findall('...', self.sequence)
111
+ for codon in codons:
112
+ # ===================================================================== #
113
+ # Check whether the given input is included in the main hash.
114
+ # ===================================================================== #
115
+ if codon in self.HASH_CODON_TO_AMINOACID:
116
+ match = self.HASH_CODON_TO_AMINOACID[codon]
117
+ print(match, end='')
118
+ print()
119
+
120
+ # =========================================================================== #
121
+ # py convert_dna*py ATGCAC
122
+ # =========================================================================== #
123
+ if __name__ == '__main__':
124
+
125
+ if len(sys.argv) > 1:
126
+ i = sys.argv[1:]
127
+ ConvertDNAtoAminoacidSequence(i)
128
+ else:
129
+ # ======================================================================= #
130
+ # Next testing 6 sequences:
131
+ # ======================================================================= #
132
+ ConvertDNAtoAminoacidSequence('ATGGGCCCGTGCGCGGGGAGCGCGCGATCGCGCGCGGGCGCGAGGGCGACGACGACGCGGTGGAGGTCTTGTCGCGACGGGCGTTGGCGGGGAAGGCGGTGACGCTCGCGGCGGCGCTCGCGGCGTGGCCGGCGGATAAGCGGGCGCTGGCGGAGGGATCGATCGAGAGCGAGTACTGGGAGCGCGTGGAGCTGCCGCTCGAACCTGGGGTCATTCTTCTGGATATCGCGTTCGTGAACGAACAGCGTGGATTTTTGCTCGGGACGAGGCAGACGATCTTGGAGACGACGAACGGTGGGAAGACGTGGGACGCGCGGGATCTGACGGGTTTGTTGGACGACGACGTGAATTATCGGTTCAACAGCGTGTCGTTCGCCGGCGAAGAGGGCTGGATCATCGGTAAACCGGCGGTGCTGTTGCACACTGTGGACGGCGGTAAGAACTGGGAACGCGTTGGTTTGAGTCCGAGACTTCCGGGCGCCCCGTTGTTGGTCACGGCGGTGAAGGACAACGGCACGGCGGAGATGGTCACCGACGAGGGCGCCATTTACTTCACCAAGGACGCCGCGCGCAACTGGAAGGCTGCCGTCGAAGAGACCGTCTCCGCGACGCTCAACCGAACGGTAAGCTCCGGTATCACCGGTGCCTCGTACTACACGGGCACCTTCTCCACCGTCTCGCGCAACGACAAGGGCGAATACCTCGGCCTGAGCTCTCGCGGTAACTTCTACATGACCTGGGCCCCGGGTCAGGCTTACTGGCAACCGCACAACAGAACTTCGGCCAGACGCGTGCAAAGCATGGGCTGGCGCAAAGATGGCGGGGTCTGGGAACTCACTCGCGGCGGTGGCGTCTTCCAGTCTCAAGACATCGGTCTTCCGGAGGAAGATTCGGAGTTCGTCGAGGCAAAAATCGGCTCGCGCGGTTTCGGCCTCCTTGATCTCGGAAGCGATCCAAAGGGTAACACGTACTGGGCCGTCGGAGGTTCGGGCAGCGTCTTCTACTCCACGGATGGCGGCAAAAGCTGGAAGCGCGACCGCGGCACCGATAACGTCGCGGCCAACCTCTACAACGTCAAGTTCCAATCTGAGACGCAAGGTTTCATCCTCGGTAACGACGGTGTTTTGTTGCGCTACATCGGTCGCAGCCCGAAGTGA')
133
+ ConvertDNAtoAminoacidSequence('ATGGTCACCGACGAGGGCGCCATTTACTTCACCAAGGACGCCGCGCGCAACTGGAAGGCTGCCGTCGAAGAGACCGTCTCCGCGACGCTCAACCGAACGGTAAGCTCCGGTATCACCGGTGCCTCGTACTACACGGGCACCTTCTCCACCGTCTCGCGCAACGACAAGGGCGAATACCTCGGCCTGAGCTCTCGCGGTAACTTCTACATGACCTGGGCCCCGGGTCAGGCTTACTGGCAACCGCACAACAGAACTTCGGCCAGACGCGTGCAAAGCATGGGCTGGCGCAAAGATGGCGGGGTCTGGGAACTCACTCGCGGCGGTGGCGTCTTCCAGTCTCAAGACATCGGTCTTCCGGAGGAAGATTCGGAGTTCGTCGAGGCAAAAATCGGCTCGCGCGGTTTCGGCCTCCTTGATCTCGGAAGCGATCCAAAGGGTAACACGTACTGGGCCGTCGGAGGTTCGGGCAGCGTCTTCTACTCCACGGATGGCGGCAAAAGCTGGAAGCGCGACCGCGGCACCGATAACGTCGCGGCCAACCTCTACAACGTCAAGTTCCAATCTGAGACGCAAGGTTTCATCCTCGGTAACGACGGTGTTTTGTTGCGCTACATCGGTCGCAGCCCGAAGTGA')
134
+ ConvertDNAtoAminoacidSequence('ATGACCTGGGCCCCGGGTCAGGCTTACTGGCAACCGCACAACAGAACTTCGGCCAGACGCGTGCAAAGCATGGGCTGGCGCAAAGATGGCGGGGTCTGGGAACTCACTCGCGGCGGTGGCGTCTTCCAGTCTCAAGACATCGGTCTTCCGGAGGAAGATTCGGAGTTCGTCGAGGCAAAAATCGGCTCGCGCGGTTTCGGCCTCCTTGATCTCGGAAGCGATCCAAAGGGTAACACGTACTGGGCCGTCGGAGGTTCGGGCAGCGTCTTCTACTCCACGGATGGCGGCAAAAGCTGGAAGCGCGACCGCGGCACCGATAACGTCGCGGCCAACCTCTACAACGTCAAGTTCCAATCTGAGACGCAAGGTTTCATCCTCGGTAACGACGGTGTTTTGTTGCGCTACATCGGTCGCAGCCCGAAGTGA')
135
+ ConvertDNAtoAminoacidSequence('ATGGGCTGGCGCAAAGATGGCGGGGTCTGGGAACTCACTCGCGGCGGTGGCGTCTTCCAGTCTCAAGACATCGGTCTTCCGGAGGAAGATTCGGAGTTCGTCGAGGCAAAAATCGGCTCGCGCGGTTTCGGCCTCCTTGATCTCGGAAGCGATCCAAAGGGTAACACGTACTGGGCCGTCGGAGGTTCGGGCAGCGTCTTCTACTCCACGGATGGCGGCAAAAGCTGGAAGCGCGACCGCGGCACCGATAACGTCGCGGCCAACCTCTACAACGTCAAGTTCCAATCTGAGACGCAAGGTTTCATCCTCGGTAACGACGGTGTTTTGTTGCGCTACATCGGTCGCAGCCCGAAGTGA')
136
+ ConvertDNAtoAminoacidSequence('ATGGCGGGGTCTGGGAACTCACTCGCGGCGGTGGCGTCTTCCAGTCTCAAGACATCGGTCTTCCGGAGGAAGATTCGGAGTTCGTCGAGGCAAAAATCGGCTCGCGCGGTTTCGGCCTCCTTGATCTCGGAAGCGATCCAAAGGGTAACACGTACTGGGCCGTCGGAGGTTCGGGCAGCGTCTTCTACTCCACGGATGGCGGCAAAAGCTGGAAGCGCGACCGCGGCACCGATAACGTCGCGGCCAACCTCTACAACGTCAAGTTCCAATCTGAGACGCAAGGTTTCATCCTCGGTAACGACGGTGTTTTGTTGCGCTACATCGGTCGCAGCCCGAAGTGA')
137
+ ConvertDNAtoAminoacidSequence('ATGGCGGCAAAAGCTGGAAGCGCGACCGCGGCACCGATAACGTCGCGGCCAACCTCTACAACGTCAAGTTCCAATCTGAGACGCAAGGTTTCATCCTCGGTAACGACGGTGTTTTGTTGCGCTACATCGGTCGCAGCCCGAAGTGA')
@@ -0,0 +1,12 @@
1
+ import subprocess
2
+
3
+ # =========================================================================== #
4
+ # === esystem
5
+ # =========================================================================== #
6
+ def esystem(i):
7
+ print(i)
8
+ process = subprocess.run(i)
9
+
10
+ # This is our shell command, executed in subprocess.
11
+
12
+ esystem("ls")
@@ -0,0 +1,20 @@
1
+ #!/usr/bin/python3
2
+ import sys
3
+ import os
4
+
5
+ class Bioroebe(object):
6
+
7
+ # =========================================================================== #
8
+ # === open_in_browser
9
+ # =========================================================================== #
10
+ def open_in_browser(
11
+ this_url,
12
+ use_this_browser = 'firefox'
13
+ ):
14
+ cmd = use_this_browser+" -new-tab "+this_url
15
+ print(cmd)
16
+ os.system(cmd)
17
+
18
+ if __name__ == '__main__':
19
+ i = sys.argv[1]
20
+ Bioroebe.open_in_browser(i) # py open_in_browser.py "derstandard.at"
@@ -0,0 +1,52 @@
1
+ #!/usr/bin/python3
2
+ import sys
3
+
4
+ class Bioroebe(object):
5
+
6
+ # =========================================================================== #
7
+ # === is_palindrome
8
+ # =========================================================================== #
9
+ def is_palindrome(i):
10
+ """
11
+ This method takes a sequence and converts it to all lowercase letters
12
+ while ignoring punctuation marks and whitespaces. If it matches the
13
+ reverse spelling then it is a palindrome. Returns true if matched,
14
+ false otherwise.
15
+ """
16
+ if type(i) == list:
17
+ i = ''.join(i)
18
+
19
+ result = False # Our result-value.
20
+ reverse_string = i[::-1].lower()
21
+
22
+ # hash = {
23
+ # "A": "T",
24
+ # "T": "A",
25
+ # "G": "C",
26
+ # "C": "G"
27
+ # }
28
+ phrase_letters = [c for c in i.lower() if c.isalpha()]
29
+ phrase_letters = ''.join(phrase_letters)
30
+ # print(phrase_letters) # Debug.
31
+ # print(reverse_string)
32
+ return (phrase_letters == reverse_string)
33
+
34
+ if __name__ == '__main__':
35
+
36
+ if len(sys.argv) > 1:
37
+ i = sys.argv[1:]
38
+ else:
39
+ i = "malayalam"
40
+
41
+ if type(i) == list:
42
+ i = ''.join(i)
43
+
44
+ ans = Bioroebe.is_palindrome(i)
45
+
46
+ if ans:
47
+ print(f"Yes, {i} is a palindrome.")
48
+ else:
49
+ print(f"No, {i} is NOT a palindrome.")
50
+
51
+ # py palindromes.py "OTTO"
52
+ # py palindromes.py "GAATTC"
@@ -0,0 +1,13 @@
1
+ #!/usr/bin/python3
2
+ import re
3
+ import sys
4
+
5
+ # =========================================================================== #
6
+ # === rds
7
+ # =========================================================================== #
8
+ def rds(i):
9
+ return re.sub('//', '/', i)
10
+
11
+ if __name__ == '__main__':
12
+ i = sys.argv[1]
13
+ print(rds(i)) # py rds.py "foobar//barfoo"
@@ -0,0 +1,23 @@
1
+ #!/usr/bin/python3
2
+ # =========================================================================== #
3
+ import sys
4
+ import random
5
+
6
+ # =========================================================================== #
7
+ # === shuffleseq
8
+ #
9
+ # This method will take the input string and simply re-arrange it as-is.
10
+ # =========================================================================== #
11
+ def shuffleseq(i):
12
+ l = list(i)
13
+ random.shuffle(l)
14
+ result = ''.join(l)
15
+ return result
16
+
17
+ if __name__ == '__main__':
18
+ if len(sys.argv) > 1:
19
+ i = sys.argv[1]
20
+ print(shuffleseq(i))
21
+ else:
22
+ print("Please provide an argument to this method.")
23
+ # py shuffleseq.py ATTTTTTTT