【发布时间】:2021-11-02 10:09:09
【问题描述】:
我有一个包含不同列的tsv 文件。我感兴趣的专栏之一是run_accession 专栏。它包含各种基因组数据样本的登录 ID。我想在Nextflow 中编写一个管道,它使用以下命令从该文件中读取加入 ID:
cut -f4 datalist.tsv | sed -n 2,11p
输出:
ERR2512385
ERR2512386
ERR2512387
ERR2512388
ERR2512389
ERR2512390
ERR2512391
ERR2512392
ERR2512393
ERR2512394
并将这个 ID 列表输入Channel.fromSRA 方法。到目前为止,我已经尝试过:
#!/home/someuser/bin nextflow
nextflow.enable.dsl=2
params.datalist = "$baseDir/datalist.tsv"
process fetchRunAccession {
input:
path dlist
output:
file accessions
"""
cut -f4 $dlist | sed -n 2,11p
"""
}
process displayResult {
input:
file accessions
output:
stdout
"""
echo "$accessions"
"""
}
workflow {
accessions_p = fetchRunAccession(params.datalist)
result = displayResult(accessions_p)
result.view { it }
}
我得到这个错误:
Error executing process > 'fetchRunAccession'
Caused by:
Missing output file(s) `accessions` expected by process `fetchRunAccession
如果我只运行第一个进程,它运行良好并按预期打印 10 行。第二个进程只是实际fromSRA 实现的占位符,但我无法将第一个进程的输出用作第二个进程的输入。我对 Nextflow 很陌生,我的代码可能有一些愚蠢的错误。在这件事上我将不胜感激。
【问题讨论】: