snakemake

Скріншот програми:
snakemake
Дані програми:
Версія: 2.5
Дата завантаження: 20 Feb 15
Розробник: Johannes Koster
Ліцензія: Безкоштовно
Популярність: 10

Rating: 4.0/5 (Total Votes: 1)

системи, як макіяж Побудувати часто використовується для створення складних робочих процесів, наприклад, в області біоінформатики і NBSP ;. snakemake прагне зменшити складність створення робочих процесів, забезпечуючи чистий і сучасний домену конкретної мови специфікації (DSL) В Python стилі, разом з швидким і комфортного середовища виконання.
Установка
- В Ubuntu 12.04, ви можете встановити пакет Debian python3-snakemake наявних в нашому сховищі запуску.
- В інших системах, необхідно робочу установку Python> = 3,2. Залежно від вашої системи, ви можете встановити snakemake шляхом видачі або easy_install snakemake або easy_install3 snakemake в командному рядку. Якщо у вас немає привілеї адміністратора, подивіться на аргумент --user з easy_install.
- І, нарешті, snakemake може бути встановлений вручну, завантаживши архів з вихідним кодом від PyPI.
Використання
Snakemake пропонує простий DSL для опису робочих процесів, які створюють файли в декількох подальших кроків:
Зразки = ["01", "02"]
# Можна визначити каталог, в якому робота повинна бути зроблена.
WorkDir: "шлях / до / WorkDir"
# Схожі, щоб зробити, визначити фіктивні правила, які діють як будівельних цілей.
управляти всім:
І NBSP; вхід: "diffexpr.tsv", ...
правити підсумок:
І NBSP; вхід: "{зразка} .mapped.bam" .format (зразок = S) для S в зразках
І NBSP; вихід: "diffexpr.tsv"
І NBSP; запустіть:
І NBSP; # ... забезпечити деякий код пітона випускати продукцію з вхідних файлів
І NBSP; # e.g. Вхідні Доступ до файлів за індексом
І NBSP; вхід [1]
і NBSP; # підстановки доступ значення
І NBSP; wildcards.sample
І NBSP; # легко виконувати команди оболонки автоматично за допомогою налаштування оболонки за замовчуванням, маючи прямий доступ
І NBSP; # для всіх локальних і глобальних змінних через формат minilanguage
І NBSP; теми = 6
І NBSP; Shell ("somecommand --threads {теми} {вхід [0]} {вихід [0]}")
правити map_reads:
І NBSP; # присвоїти імена вхідних і вихідних файлів
І NBSP; вхід: читає = "{приклад} .fastq", hg19 = "hg19.fasta"
І NBSP; # вихідні Позначте файли захищені від запису після створення
І NBSP; вихід: відображається = захищений ("{зразка} .mapped.sai")
І NBSP; # можна визначити повідомлення, які відображаються замість загального опису правил по виконанню правила:
І NBSP; повідомлення: "Mapping читає {input.hg19}"
і NBSP; теми: 8
І NBSP; оболонка:
І NBSP; # безпосередньо забезпечують команди оболонки (в декількох або одним рядком лінії), якщо синтаксис Python не потрібен.
І NBSP; # знову, глобальні та локальні змінні можуть бути доступні через формат minilanguage.
І NBSP; # Крім того, число потоків, використовуваних правило може бути вказаний. Snakemake планувальник гарантує, що правило виконується з вказаного числа потоків, якщо достатньо ядра доступні через опцію -j в командному рядку.
І NBSP; "" "
І NBSP; BWA AlN -t {теми} {input.hg19} {input.reads}> {output.mapped}
І NBSP; деякі --Другіе --command
І NBSP; "" "
Враховуючи "Snakefile" з таким синтаксисом, робочий процес може бути виконаний (наприклад, з використанням до 6 паралельних процесів) по складанням:
І NBSP; snakemake -j6 -s Snakefile
Для отримання більш детальної інформації див Підручник

Особливості :.

  • Define робочі процеси в текстовому чином, написавши правила, як створити вихід файли з вхідних файлів в синтаксисі просто Python основі. На відміну від GNU Make (який є, насамперед, система збірки), snakemake дозволяє правило, щоб створити кілька вихідних файлів.
  • Snakemake автоматично обчислює, які потрібні правила повинні бути виконані, щоб створити бажаний результат.

  • Правила
  • І оболонку на базі, а також повний синтаксис Python всередині правило підтримується. Команди оболонки мають прямий доступ до всіх локальних і глобальних змінних Python.
  • Як GNU Make, snakemake можете запланувати паралельних страти правил, де це можливо. Крім того, в правила розпаралелювання можуть бути об'єднані з интра правило паралелізації (наприклад, потоки) і snakemake гарантує, що кількість використовуваних ядер не перевищує задане значення.
  • Файли можуть бути помічені як тимчасовий (тобто вони можуть бути видалені відразу більше не потрібний) або захищені (тобто вони будуть захищені від запису після створення).
  • Вхідні і вихідні файли можуть містити декілька іменованих шаблони.
  • Вхідні і вихідні файли можуть бути названі так, що рішення їх у правила стає зручно.
  • Map-Reduce як функціональність досягається за рахунок використання легко читати пітона синтаксис вираження списків.
  • В якості експериментального функції, snakemake може працювати в кластері, вказавши команду уявити (наприклад, qsub для Sun Grid Engine).

Вимоги

  • Python

Схожі програми

Інші програми розробника Johannes Koster

TRMiner
TRMiner

14 Apr 15

snakemake

Коментар не знайдено
додати коментар
Включіть картинки!
Пошук за категоріями