У меня есть входной файл следующим образом
SampleName Run Read1 Read2
A run1 test/true_data/4k_R1.fq test/true_data/4k_R2.fq
A run2 test/samples/A.fastq test/samples/A2.fastq
B run1 test/samples/B.fastq test/samples/B2.fastq
C run1 test/samples/C.fastq test/samples/C5.fastq
D
Итак, я получаю все индексы в массиве:
sample_table = pd.read_table('samples.tsv', sep=' ', lineterminator='\n')
sample_table = sample_table.drop_duplicates(subset='SampleName', keep='first', inplace=False)
sample_table = sample_table.dropna()
sample_table.set_index('SampleName',inplace=True)
sample_ID=sample_table.index.values
На данный момент sample_ID=['A' 'B' 'C']
, что я и хочу.Затем я хочу установить переменную r1, которая будет соответствовать Read1 и r2 для Read2 каждого образца.
rule all:
input:
expand("test/fltr/{ID_sample}.fq", ID_sample=sample_ID)
rule send_reads:
input:
#Tried both way but it does not work
r1=sample_table.loc["{ID_sample}",'Read1']
r2=sample_table.Read2["{ID_sample}"]
output:
"test/fltr/{ID_sample}{input.r1}.fq"
shell:
"touch {output}"
Я получаю ошибку
метка [{ID_sample}] отсутствует в [index]
Это синтаксическая ошибка или большая ошибка?
Я только начинаю использовать Snakemake, мне показалось, что я понял это после урока, но, очевидно, нет.
Большое спасибо, Cheers