Есть ли способ использовать Snakemake для создания файлов на основе последовательности в списке?Python

Программы на Python
Anonymous
Есть ли способ использовать Snakemake для создания файлов на основе последовательности в списке?

Сообщение Anonymous »

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

#Make 1 library.csv for a pair of ATAC and RNA seq accession numbers
def read_rna_accession():
with open('rna_accessions.txt') as f:
samples = [sample for sample in f.read().split('\n') if len(sample) > 0]  # Remove empty lines
return samples

def read_atac_accession():
with open('atac_accessions.txt') as f:
samples = [sample for sample in f.read().split('\n') if len(sample) > 0]  # Remove empty lines
return samples

# Read ATAC and RNA accession IDs
atac_SRRs = read_atac_accession()
rna_SRRs = read_rna_accession()

# Define all rule for generating libraries.csv
rule all:
input:
expand("{atac_srr}_{rna_srr}_libraries.csv", atac_srr=atac_SRRs, rna_srr=rna_SRRs)

# Rule to create libraries.csv
rule create_libraries_csv:
output:
"{atac_srr}_{rna_srr}_libraries.csv"
run:
atac_srr = wildcards.atac_srr
rna_srr = wildcards.rna_srr
with open(output[0], "w") as f:
f.write("fastqs,sample,library_type\n")
f.write(f"atac_seq/{atac_srr},{atac_srr},Chromatin Accessibility\n")
f.write(f"rna_seq/{rna_srr},{rna_srr},Gene Expression\n")

Здравствуйте, я пытаюсь создать файл Library.csv для пары номеров доступа atac_seq и rna_seq {SRRXXXXXX}. На данный момент у меня есть 2 SRR для atac_seq и 2 SRR для rna_seq; Я хочу создать файлLibraries.csv для каждой пары, поэтому в итоге у меня должно получиться 2 файла {atac_srr}_{rna_srr}libraries.csv.
С имеющимся у меня кодом он генерирует его для всех возможных комбинаций номеров доступа atac_seq и rna_seq; Я хотел бы сгенерировать его последовательно, то есть первый SRR в списке номеров доступа atac соответствует первому элементу в SRR в списке номеров доступа rna; есть ли способ сделать это?

Подробнее здесь: https://stackoverflow.com/questions/786 ... -in-a-list

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