2

我想在蛇形工作流程中包含使用multiQCRSeQC结果。我有一个问题,即其中一个RSeQC工具仅报告 .r 和 .pdf,而multiQC似乎需要 .txt 输入来创建绘图。

有没有人为snakemake工作的代码将RSeQC中的信息恢复到multiQC规则中。

由于这是三个工具的组合,因此很难获得支持。


我的代码在这里只使用了geneBodyCoverage.txt RSeQC 输出(不是两个.r 输出,尤其是junctionSaturation_plot.r,其中除了.r 和png 图片什么都没有)

rule multiqc_global:
"""
Aggregate all MultiQC reports
"""
  input:
    expand("intermediate/{smp}_fastqc.zip", smp=SAMPLES),
    expand("intermediate/merged_{smp}_fastqc.zip", smp=SAMPLES),
    expand("logs/star/{smp}_Log.final.out", smp=SAMPLES),
    expand("intermediate/{smp}.geneBodyCoverage.txt", smp=SAMPLES),
    expand("intermediate/{smp}.geneBodyCoverage.r", smp=SAMPLES),
    expand("intermediate/{smp}.junctionSaturation_plot.r", smp=SAMPLES),
  output:
    html = "results/global_multiqc.html",
    stats = "intermediate/global_multiqc_general_stats.txt"
  log:
    "logs/multiqc/global_multiqc.log"
  version: "1.0"
  shadow: "minimal"
  shell: 
    """
    # Run multiQC and keep the html report
    multiqc -n multiqc.html {input} 2> {log}
    mv multiqc.html {output.html}
    mv multiqc_data/multiqc_general_stats.txt {output.stats}
    """
4

1 回答 1

1

这是一种轶事,因为正如@JeeYem 在评论中指出的那样,它可能取决于您使用 RSeQC 运行的分析。下面是我read_distribution.py在snakemake 中使用分析的方法,它会生成MultiQC 识别的兼容文件。

rule read_distribution:
    input:
        bam = "data/bam/{srr}.bam",
        bed = config["gencodeBED"]
    output:
        "qc/aligned/{srr}.read_distribution.txt"
    shell:
        """
        read_distribution.py -i {input.bam} -r {input.bed} &> {output}
        """

基本上,只需将 stdout 和 err 流重定向到一个文件。希望其他 RSeQC 脚本也是如此。

于 2018-11-01T19:31:59.857 回答