WikiDer > BioRuby - Википедия
Эта статья написано как руководство или путеводитель. (Июнь 2018 г.) (Узнайте, как и когда удалить этот шаблон сообщения) |
Оболочка BioRuby на Rails | |
Стабильный выпуск | 1.5.2 / 19 ноября 2018 |
---|---|
Репозиторий | |
Написано в | Рубин |
Тип | Биоинформатика |
Лицензия | GPL |
Интернет сайт | биорубы |
BioRuby это собрание Открытый исходный код Рубин код, содержащий классы для вычислительных молекулярная биология и биоинформатика. Он содержит классы для ДНК и белка анализ последовательности, выравнивание последовательностей, анализ биологических баз данных, структурная биология и другие задачи биоинформатики.[1]
BioRuby выпускается под GNU GPL версия 2 или Рубиновая лицензия[2] и является одним из ряда проектов Bio *, направленных на уменьшение дублирования кода.[3]
В 2011 году в рамках проекта BioRuby была представлена система плагинов для программного обеспечения Biogem.[4] и перечислены на biogems.info, с добавлением двух или трех новых плагинов каждый месяц.
BioRuby управляется через bioruby.org веб-сайт и Репозиторий BioRuby на GitHub.
История
BioRuby
Проект BioRuby был впервые запущен в 2000 году Тошиаки Катаямой как реализация на Ruby подобных пакетов биоинформатики, таких как BioPerl и Биопайтон. Первоначальный выпуск версии 0.1 часто обновлялся участниками как неофициально, так и на организованных «хакатонах», последний выпуск версии 1.4.3.0001 состоялся в мае 2013 года.[5]
В июне 2005 года BioRuby был профинансирован IPA как исследовательский программный проект.[6] кульминацией которой стал выпуск версии 1.0.0 в феврале 2006 года.[7]
BioRuby был в центре внимания ряда Google Summer of Code проекты, в том числе;
- 2009: Реализация поддержки phyloXML в BioRuby
- 2010: Ruby 1.9.2 поддержка BioRuby
- 2010: Реализация алгоритма определения дупликаций генов в BioRuby
- 2011: Представляйте биообъекты и связанную с ними информацию изображениями
- 2012: Расширьте плагин био-выравнивания с помощью анализатора Multiple Alignment Format -MAF-
История версий[8]
- 0.7.0 18 декабря 2005 г. (438 КБ)
- 1.0.0 26 февраля 2006 г. (528 КБ)
- 1.4.3.0001 24 мая 2013 г. (1.42 МБ)
Приведенный выше список релизов сокращен; полный список можно найти Вот.
Установка
BioRuby можно установить на любой экземпляр Ruby; поскольку Ruby - это язык с высокой степенью кроссплатформенности, BioRuby доступен в большинстве современных операционных систем.[9]
Перед установкой BioRuby необходимо установить Ruby.
Установка BioRuby
macOS / Unix / Linux
macOS имеет Ruby и RubyGems установлен по умолчанию, а для Unix / Linux рекомендуется установка RubyGems.
Если установлены Ruby и RubyGems, BioRuby можно установить с помощью этой команды через терминал;
% sudo gem установить био
Если вам нужно установить из дистрибутива исходного кода, получите последний пакет из архив и в исходном каталоге bioruby выполните следующие команды;
% вс # рубин setup.rb
Windows
Настоятельно рекомендуется установка через RubyGems; для этого необходимо установить Ruby и RubyGems, а затем выполнить следующую команду в командной строке;
> драгоценный камень установить био
использование
Доступ к BioRuby можно получить через терминал, Ruby IDE или через реализацию BioRubyOnRails. Инструкции по установке и использованию BioRubyOnRails можно найти на сайте bioruby.open-bio.org/wiki/BioRubyOnRails.
Базовый синтаксис[10]
Ниже приведены примеры манипуляций с основными последовательностями с помощью BioRuby. Вы можете найти больше примеров синтаксиса на bioruby.open-bio.org/wiki/SampleCodes#.
Базовое управление последовательностью
Строка в объект Bio :: Sequence
Разбор строки в объект Bio :: Sequence.
#! / usr / bin / env rubyтребовать "био"# создать объект последовательности ДНК из строкиДНК = Био::Последовательность::NA.новый("atcggtcggctta")# создать объект последовательности РНК из Stringrna = Био::Последовательность::NA.новый("auugccuacauaggc")# создать последовательность белка из строкиаа = Био::Последовательность::AA.новый(«АГФАВЕНДСА») # вы можете проверить, содержит ли последовательность недопустимые символы# это недопустимый символ IUB для этого символа# (также следует подготовить метод Bio :: Sequence :: AA # незаконные_символы)ставит ДНК.незаконные_базы# переводить и объединять последовательность ДНК в последовательность белкаnewseq = аа + ДНК.переведитеставит newseq # => "AGFAVENDSAIGRL"
Объект Bio :: Sequence в String
Это пример, демонстрирующий простоту BioRuby. Для преобразования объекта последовательности в строку не требуется вызова какого-либо метода.
Разбор объекта последовательности в строку.
#! / usr / bin / env ruby # вы можете использовать объект Bio :: Sequence как объект String для печати без проблемДНК = Био::Последовательность::NA.новый("atgc")ставит ДНК # => "atgc"ул. = ДНК.to_sставит ул. # => "atgc"
Перевод
Перевод последовательности ДНК или РНК или списка символов в оротеин
Нет необходимости преобразовывать последовательность ДНК в последовательность РНК или наоборот перед ее трансляцией в BioRuby. Вы можете просто вызвать метод translate для объекта Bio :: Sequence :: NA.
#! / usr / bin / env rubyтребовать "био"# создать последовательность ДНКseq = Био::Последовательность::NA.новый("atggccattgaatga") # перевести на белокзащита = seq.переведите # докажите, что это сработалоставит seq # => "atggccattgaatga"ставит защита # => "MAIE *"
Перевод одного кодона в отдельную аминокислоту
Общий пример перевода показывает, как использовать метод translate объекта Bio :: Sequence :: NA, но большая часть происходящего скрыта за вспомогательным методом. Если вы хотите преобразовать только один кодон в одну аминокислоту, вы получите немного больше кровавых деталей, но также получите возможность узнать больше о том, что происходит под капотом.
#! / usr / bin / env ruby требовать "био" # сделать 'кодон'кодон = Био::Последовательность::NA.новый("ууг") # кодон можно перевести, как описано в предыдущем разделе.ставит кодон.переведите # => "L"
Другой способ сделать это:
#! / usr / bin / env ruby требовать "био" # сделать 'кодон'кодон = Био::Последовательность::NA.новый("ууг") # выбираем стандартную таблицу кодоновcodon_table = Био::CodonTable[1] # Вам необходимо преобразовать кодон РНК в алфавиты ДНК, потому что# CodonTable в BioRuby реализован как статический хеш с ключами# выражается в алфавитах ДНК (не алфавитах РНК).codon2 = кодон.ДНК # получить представление этого кодона и преобразовать его в аминокислоту.аминокислота = codon_table[codon2]ставит аминокислота # => "L"
Последовательный ввод / вывод
Запись последовательностей в формате Fasta
Чтобы распечатать любой объект Bio :: Sequence в формате FASTA, все, что вам нужно, это вызвать команду "put objectName.is_fasta ()"
#! / usr / bin / env ruby требовать "био" # Создает образец последовательности 100bp.seq1 = Био::Последовательность::NA.новый("aatgacccgt" * 10) # Назовите эту последовательность "testseq" и распечатайте в формате FASTA# (по 60 символов в строке).ставит seq1.to_fasta("testseq", 60)
Чтение в файле Fasta
Эта программа открывает файл формата FASTA для чтения и выполняет итерацию по каждой последовательности в файле.
#! / usr / bin / env ruby требовать "био" файл = Био::FastaFormat.открыто(ARGV.сдвиг)файл.каждый делать |Вход|# делаем что-нибудь с каждой записью последовательности fastaконец
Эта программа автоматически обнаруживает и считывает файлы формата FASTA, указанные в качестве аргументов.
#! / usr / bin / env ruby требовать "био" Био::FlatFile.авто(ARGF) делать |ff|ff.каждый делать |Вход| # делаем что-нибудь с каждой записью последовательности fastaконецконец
Аналогично, но явно укажите формат FASTA.
#! / usr / bin / env ruby требовать "био" Био::FlatFile.открыто(Био::FastaFormat, ARGV[0]) делать |ff| ff.каждый делать |Вход| # делаем что-нибудь с каждой записью последовательности fasta конецконец
Смотрите больше примеров синтаксиса на SampleCodes
Классы и модули
Основные классы
Приведенные ниже классы были определены группой основных участников кода как основные классы.[11]
Базовая структура данных
Эти классы позволяют эффективно хранить сложную структуру биологических данных.[11]
Имена классов | Описание |
---|---|
Bio :: Sequence :: NA, Био :: Последовательность :: AA | Нуклеиновые и аминокислотные последовательности |
Био :: Местоположение, Био :: Особенности | Места / аннотации |
Био :: Справка, Био :: PubMed | Литература |
Био :: Путь, Bio :: Relation | Графики |
Bio :: Alignment | Выравнивания |
Базы данных и форматы файлов последовательностей
Доступ к биологическим базам данных в Интернете и чтение из распространенных файловых форматов.
Имена классов | Описание |
---|---|
Био :: GenBank, Био :: EMBL | GenBank / EMBL |
Био :: СПТР, Био :: НБРФ, Био :: PDB | SwissProt и TrEMBL / PIR / PDB |
Био :: ФАНТОМ | FANTOM DB (Функциональная аннотация мыши) |
Био :: KEGG | Парсеры базы данных KEGG |
Био :: GO, Био :: GFF | Bio :: PROSITE FASTA формат / PROSITE мотивы |
Био :: FastaFormat, Bio :: PROSITE | Формат FASTA / PROSITE мотивы |
Обертка и парсеры для инструмента биоинформатики
Эти классы обеспечивают легкий доступ к часто используемым инструментам биоинформатики.
Имена классов | Описание |
---|---|
Bio :: Blast, Био :: Fasta, Био :: HMMER | Сходство последовательностей (BLAST / FASTA / HMMER) |
Био :: ClustalW, Био :: MAFFT | Множественное выравнивание последовательностей (ClustalW / MAFFT) |
Био :: ПСОРТ[постоянная мертвая ссылка], Био :: TargetP | Субклеточная локализация белка (PSORT / TargetP) |
Био :: SOSUI, Био :: ТМХММ | Прогнозирование трансмембранной спирали (SOSUI / TMHMM) |
Био :: GenScan | Поиск генов (GenScan) |
Файловый, сетевой и ввод-вывод базы данных
Имена классов | Описание |
---|---|
Bio :: Registry | Служба регистрации OBDA |
Био :: SQL | Схема OBDA BioSQL RDB |
Bio :: Fetch | OBDA BioFetch через HTTP |
Био :: FlatFileIndex | Система индексации плоских файлов OBDA |
Система индексации плоских файлов OBDA | Читатель плоских файлов с автоматическим определением формата данных |
Био :: DAS | Распределенная система аннотаций (DAS) |
Био :: KEGG :: API | Интерфейс SOAP / WSDL для KEGG |
Полный список классов и модулей можно найти на bioruby.org/rdoc/.
Биогем
Biogem предоставляет набор инструментов для биоинформатиков, которые хотят кодировать приложение или библиотеку, которые используют или расширяют базовую библиотеку BioRuby, а также делятся кодом как жемчужиной на rubygems.org. Любой драгоценный камень, опубликованный через платформу Biogem, также указан в biogems.info.
Цель Biogem - продвигать модульный подход к пакету BioRuby и упростить создание модулей за счет автоматизации процесса настройки структуры каталогов / файлов, репозитория git и выпуска баз данных пакетов онлайн.[12]
Biogem использует github.com и rubygems.org и требует создания уникальных учетных записей на этих сайтах.
Популярные биогемы
# | Биогем | Описание | Версия |
---|---|---|---|
1 | биография | Библиотека биоинформатики | 1.4.3.0001 |
2 | биоразнообразие | Парсер научных названий | 3.1.5 |
3 | Простой экстрактор электронных таблиц | Базовое извлечение содержимого электронной таблицы с использованием Apache poi | 0.13.3 |
4 | Био драгоценный камень | Генератор программного обеспечения для Ruby | 1.36 |
5 | Bio samtools | Биндер samtools для Ruby | 2.1.0 |
6 | t2 сервер | Поддержка взаимодействия с сервером taverna 2 | 1.1.0 |
7 | био ucsc api | API Ruby ucsc | 0.6.2 |
8 | Entrez | http-запрос в entrez e-utilities | 0.5.8.1 |
9 | био гаджет | Гаджет для биоинформатики | 0.4.8 |
10 | сервер последовательности | Быстрый поиск стал проще! | 0.8.7 |
Плагины
В версии 1.5 BioRuby будет иметь завершенную систему плагинов.[13]
Смотрите также[14]
BioRuby
Ссылки на Ruby / биоинформатика
Сестринские проекты
Блоги
- Саайен Тист - http://saaientist.blogspot.com.au/
- "aac" .translate # => "N" - http://bioruby.g.hatena.ne.jp/nakao_mitsuteru/
- BioRelated - http://biorelated.wordpress.com/category/bioruby/
Рекомендации
- ^ Гото Н., Принс П., Накао М., Боннал Р., Аэртс Дж., Катаяма Т. (октябрь 2010 г.). «BioRuby: программа биоинформатики для языка программирования Ruby». Биоинформатика. 26 (20): 2617–9. Дои:10.1093 / биоинформатика / btq475. ЧВК 2951089. PMID 20739307.
- ^ "биорубы / README.rdoc у мастера · биорубы / биорубы". 2014-05-08. Получено 2014-11-09.
- ^ Мангалам Х (2002). «Наборы инструментов Bio * - краткий обзор». Краткий биоинформ. 3 (3): 296–302. Дои:10.1093 / bib / 3.3.296. PMID 12230038.
- ^ Боннал Р., Аэртс Дж., Гитинджи Дж., Гото Н., Маклин Д., Миллер С., Мишима Х, Пагани М., Рамирес-Гонсалес Р., Смант Дж., Строцци Ф., Сайм Р., Вос Р., Веннблом Т., Вудкрофт Б., Катаяма Т., Принс П. (апрель 2012 г.). «Биогема: эффективный инструментальный подход для расширения разработки программного обеспечения с открытым исходным кодом в биоинформатике». Биоинформатика. 28 (7): 1035–7. Дои:10.1093 / биоинформатика / bts080. ЧВК 3315718. PMID 22332238.
- ^ «История - БиоРубы». 2014-05-30. Получено 2014-09-10.
- ^ «Агентство по продвижению информационных технологий IPA, Япония: IPA: проект исследования человеческих ресурсов в области ИТ (Программа MITOH)».
- ^ "[BioRuby] Выпущен BioRuby 1.0.0". 2006-02-27. Получено 2014-09-10.
- ^ «История - БиоРубы». 2014-05-30. Получено 2014-09-11.
- ^ Ruby (язык программирования) # Поддержка платформ
- ^ «SampleCodes - BioRuby». Архивировано из оригинал на 2014-09-11.
- ^ а б "BioRuby: Библиотека биоинформатики с открытым исходным кодом" (PDF). Цитировать журнал требует
| журнал =
(помощь) - ^ «Плагины - BioRuby».
- ^ «BioRuby - плагины». 2012-03-20. Архивировано из оригинал на 2011-10-07. Получено 2014-11-09.
- ^ «Ссылки - BioRuby». 2012-12-28. Архивировано из оригинал на 2014-10-09. Получено 2014-10-09.