美文网首页
snakemake学习(二)

snakemake学习(二)

作者: 花生学生信 | 来源:发表于2023-08-05 10:52 被阅读0次
import os
import pandas as pd

# load configfile


# global vals
metadata = pd.read_csv("id", sep="\t").set_index("SampleID", drop=False)

te = pd.read_csv("id.txt", sep="\t").set_index("Te", drop=False)

samples = metadata["SampleID"]
samples_num = len(samples)
te=te["Te"]


    
# includes
def get_fastq(wildcards):
    return metadata.loc[wildcards.samples, ["fq1"]].dropna()

# map trimmed fastq to genome

for i in samples:{
print(i)
}
for id in te:{
print(id)
}
rule all:
    input:
        expand( "fa/{te}/{samples}-{te}.fa",te=te,samples=samples),
#       expand( "out/{te}/{samples}-{te}.bam",te=te,samples=samples),
#        expand( "fa/{te}/{samples}-{te}.fa",te=te,samples=samples),


rule minimap2:
    input:
        fastq=("raw_data/{samples}.fq.gz"),
    
    output:
#        bam = ("out/{te}/{samples}-{te}.bam"),
        fa = ("fa/{te}/{samples}-{te}.fa"),

#       fa = ("fa/{te}/{samples}-{te}.fa"),

    shell:
        """minimap2 -ax map-pb  mini/{wildcards.te}.fa {input} |awk -F "\\t" '{{if ( ($1!~/^@/) && (($2==16) ) ) {{print ">"$1"\\n"$10}}}}' > {output.fa} """

##注意shell脚本
#        """minimap2 -ax map-pb  mini/{wildcards.te}.fa {input} | samtools view -bS -@ 22 - > {output.bam} && samtools view {output.bam} | awk -F "\t" '{if ( ($1!~/^@/) && (($2==16) ) ) {print ">"$1"\n"$10}}' > {output.fa} """


#rule bam2fq:
#    input:
#        bam = ("out/{wildcards.te}/{wildcards.samples}-{wildcards.te}.bam"),
#    output:
#        fa = ("fa/{wildcards.te}/{wildcards.samples}-{wildcards.te}.fa"),
#    shell:
#        """samtools view {input} | awk -F "\t" '{if ( ($1!~/^@/) && (($2==16) ) ) {print ">"$1"\n"$10}}' > {output}"""




相关文章

  • snakemake学习

    DAG(directed acyclic graph):有向无环图 条件:1. 每个顶点出现且只出现一次。2. 若...

  • snakemake -- 学习

    snakemake document[https://snakemake.readthedocs.io/en/st...

  • snakemake 学习(1)

    1、安装 Snakemake可以在PyPi以及Bioconda上获得,也可以从源代码获得。您可以使用以下方法之一安...

  • snakemake 学习(0)

    1. snkemake介绍 Snakemake工作流管理系统是一种创建可重复和可扩展的数据分析的工具。工作流程通过...

  • snakemake 学习(2)

    举一个小例子: 通过在Snakefile中指定规则来定义Snakemake工作流。 规则通过指定如何从输入文件集创...

  • 流程管理工具snakemake学习笔记杂记02

    snakemake学习笔记007~slurm的cluster提交任务 主要参考 https://eriqande....

  • Snakemake - 任务投递参数

    SnakeMake - 使用 snakemake主体是通过一个*.smk完成 相关命令: --dag --forc...

  • Shell 使用多线程提交任务-FIFO

    参考: 学习snakemake,三步轻松搭建生信流程![https://zhuanlan.zhihu.com/p/...

  • snakemake 学习笔记1

    1, snakemake介绍 Snakemake是用Python3写的一个流程化工具, 非常方便. 官网上的例子有...

  • snakemake 学习笔记3

    目标 这次, 我要实现这个路程图. 目标介绍 第一: 生成1.txt , 2.txt, 3.txt 第二: 向每个...

网友评论

      本文标题:snakemake学习(二)

      本文链接:https://www.haomeiwen.com/subject/mobbpdtx.html