Лучший способ вручную вмешиваться в рабочий процесс «Snakemake» и автоматически резервное копирование исправленных файлоPython

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Лучший способ вручную вмешиваться в рабочий процесс «Snakemake» и автоматически резервное копирование исправленных файло

Сообщение Anonymous »

Иногда в длительном рабочем процессе требуется ручная интерференция в форме модификации промежуточного результата, так как автоматизация просто не идеальна. В моем случае я сегментирую необработанные входные изображения с глубоким обучением, а затем выполняю анализ этих сегментаций. Поскольку сегментация не всегда идеальна, иногда я вручную исправляю сегментацию. Поскольку ручная коррекция занимает некоторое время, я также хочу сделать резервную копию этих ручных исправлений в отдельное место, если что -то случится с моим локальным компьютером. Данные папки/резервное копирование -символическая ссылка на монтированный сетевой диск.

Код: Выделить всё

import os

rule segment:
input:
img="data/raw/{file}.tif",
output:
segmentation="data/segmentations/{file}.tif",
script: "src/segment.py"

rule backup:
input:
img="data/segmentations/{file}_manual.tif",
output:
img="data/backup/{file}_manual.tif",
shell: "cp {input.img} {output.img}"

def analyze_input_func(wildcards):
path = "data/segmentations"
auto_path = os.path.join(path, f"{wildcards.file}.tif")
manual_path = auto_path.replace(".tif", "_manual.tif")
if os.path.isfile(manual_path):
backup_path = f"data/backup/{wildcards.file}_manual.tif"
return {
"segmentation": manual_path,
"backup": backup_path,
}
else:
return {"segmentation": auto_path}

rule analyse:
input:
unpack(analyze_input_func),
output:
csv="data/properties/{file}.csv",
script: "src/analyse.py"
< /code>
У вас есть предложения о том, как улучшить этот рабочий процесс? Я чувствую, что этот рабочий процесс может быть написан более элегантно. Особенно, как путь к данным/сегментациям/{file} .tif 
должен быть определен независимо в двух местах: в правиле сегмента и в Analyze_input_func . Это требует большего обслуживания при изменении этого пути и подвержено ошибкам.>

Подробнее здесь: https://stackoverflow.com/questions/795 ... lly-backup
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Python»