Snakemake workflow metadata: RAjHDlPDghZzc9ZvQ3uJQNJ9Jd_KAYzZt7dk5PXKgjRyE
has assertion: assertion
has provenance: provenance
has publication info: pubinfo
type: Nanopublication
created: 2026-05-05T17:32:28.425134+00:00
creator: https://orcid.org/0000-0003-2408-7588
has nanopub type: Dataset
signed by: https://orcid.org/0000-0003-2408-7588
generated at time: 2026-05-05T19:32:29.762109+02:00
was attributed to: https://orcid.org/0000-0003-2408-7588

config-1
text: samples: samples.csv ref: species: "Drosophila melanogaster" genome: "" annotation: "" accession: "GCF_000001215.4" ensembl_species: "" # e.g., "homo_sapiens" build: "" # e.g., "GRCh38" release: "" # e.g., "105" read_filter: min_length: 200 minimap2: index_opts: "" opts: "" maximum_secondary: 100 secondary_score_ratio: 1.0 samtools: samtobam_opts: "-b" bamsort_opts: "" bamindex_opts: "" bamstats_opts: "" quant: salmon_libtype: "U" deseq2: fit_type: "" design_factors: - "condition" lfc_null: 1.0 alt_hypothesis: "greaterAbs" point_width: 20 mincount: 10 alpha: 0.05 threshold_plot: 10 colormap: "Blues" figtype: "png" batch_effect: - "" isoform_analysis: FLAIR: true qscore: 1 exp_thresh: 10 col_opts: "--annotation_reliant generate --generate_map --stringent" protein_annotation: lambda: false uniref: "https://ftp.imp.fu-berlin.de/pub/lambda/index/lambda3/gen_0/uniref50_20230713.lba.gz" num_matches: 3

dataset
type: Dataset
description: This workflow performs differential expression analysis of RNA-seq data obtained from Oxford Nanopore long-read sequencing technology. First a transcriptome FASTA is constructed using gffread [https://github.com/gpertea/gffread]. Reads are then mapped to the transcriptome with the long-read optimized alignment tool minimap2 [https://github.com/lh3/minimap2]. Next quantification is performed using salmon [https://github.com/COMBINE-lab/salmon] before normalization and differential expression analysis are conducted by PyDESeq2 [https://github.com/owkin/PyDESeq2]. The workflow can optionally analyze splice-isoforms through integrating the FLAIR [https://github.com/BrooksLabUCSC/flair] workflow. Additionaly, NanoPlot [https://github.com/wdecoster/NanoPlot] is employed to analyze initial sequencing data and QualiMap [https://github.com/EagleGenomics-cookbooks/QualiMap] is used to evaluate mapping results.
generated at: 2026-05-05T17:32:28.425134+00:00
has configuration section: from workflow configuration
has rule section: workflow rules

rule-alignment qa
has input: sorted_alignments/{sample}_sorted.bam
has output: QC/qualimap/{sample}
has software package: v4.4.0

rule-alignment qa report
has input: QC/qualimap/{sample}
has output: qualimap/{sample}/qualimapReport.html
has software package: python>=3.12.4

rule-bam index
has input: sorted_alignments/{sample}_sorted.bam
has output: sorted_alignments/{sample}_sorted.bam.bai
has software package: v7.6.0

rule-bam sort
has input: alignments/{sample}.bam
has output: sorted_alignments/{sample}_sorted.bam
has software package: v7.6.0

rule-bam stats
has input: alignments/{sample}.bam
has output: QC/bamstats/{sample}.txt
has software package: v3.13.4

rule-bam to bed
has input: sorted_alignments/{sample}_sorted.bam
has input: sorted_alignments/{sample}_sorted.bam.bai
has output: iso_analysis/beds/{sample}.bed
has software package: flair=2.0.0

rule-build flair genome index
has input: references/genomic.fa
has output: index/flair_genome_index.mmi
has software package: v7.6.0

rule-build minimap index
has input: transcriptome/corrected_transcriptome.fa
has output: index/transcriptome_index.mmi
has software package: v7.6.0

rule-concatenate beds
has input: iso_analysis/beds/barcode10.bed
has input: iso_analysis/beds/barcode11.bed
has input: iso_analysis/beds/barcode12.bed
has input: iso_analysis/beds/barcode13.bed
has input: iso_analysis/beds/barcode15.bed
has input: iso_analysis/beds/barcode16.bed
has output: iso_analysis/beds/all_samples.bed
has software package: python>=3.12.4

rule-correct transcriptome
has input: transcriptome/transcriptome.fa
has output: transcriptome/corrected_transcriptome.fa
has software package: gffread>=0.12.7

rule-count reads
has input: alignments/{sample}.bam
has input: transcriptome/corrected_transcriptome.fa
has output: counts/{sample}_salmon/quant.sf
has software package: salmon>=1.10.3

rule-deseq2
has input: de_analysis/all.rds
has output: de_analysis/{factor}_{prop_a}_vs_{prop_b}_MA_plot.svg
has output: de_analysis/{factor}_{prop_a}_vs_{prop_b}_count_heatmap.svg
has output: de_analysis/{factor}_{prop_a}_vs_{prop_b}_dispersion_plot.svg
has output: de_analysis/{factor}_{prop_a}_vs_{prop_b}_l2fc.tsv
has output: de_analysis/{factor}_{prop_a}_vs_{prop_b}_sample_heatmap.svg
has output: de_analysis/{factor}_{prop_a}_vs_{prop_b}_top_count_heatmap.svg
has software package: bioconductor-deseq2 =1.46.0
has software package: r-ashr =2.2_63
has software package: r-pheatmap
has software package: r-rcolorbrewer
has software package: r-stringr =1.5.1

rule-deseq2 init
has input: /fshpc/meesters/projects/snakemake-workflows/rna-longseq-de-isoform/config/demo/samples.csv
has input: merged/all_counts_gene.tsv
has output: de_analysis/all.rds
has output: de_analysis/normcounts.tsv
has software package: bioconductor-deseq2 =1.46.0
has software package: r-ashr =2.2_63
has software package: r-pheatmap
has software package: r-rcolorbrewer
has software package: r-stringr =1.5.1

rule-download ensembl annotation
has output: references/ensembl_annotation.gff3
has software package: v7.5.0

rule-download ensembl genome
has output: references/ensembl_genome.fa
has software package: v7.5.0

rule-download ncbi annotation
has output: references/ncbi_dataset_annotation.zip
has software package: ncbi-datasets-cli>=18.14.0
has software package: unzip>=6.0.0

rule-download ncbi genome
has output: references/ncbi_dataset_genome.zip
has software package: ncbi-datasets-cli>=18.14.0
has software package: unzip>=6.0.0

rule-filter reads
has output: filter/{sample}_filtered.fq
has software package: biopython >=1.84
has software package: pandas>=2.2.2
has software package: python>=3.12.4

rule-flair align
has input: filter/barcode10_filtered.fq
has input: filter/barcode11_filtered.fq
has input: filter/barcode12_filtered.fq
has input: filter/barcode13_filtered.fq
has input: filter/barcode15_filtered.fq
has input: filter/barcode16_filtered.fq
has input: index/flair_genome_index.mmi
has input: references/genomic.fa
has output: iso_analysis/align/flair.bam
has output: iso_analysis/align/flair.bam.bai
has output: iso_analysis/align/flair.bed
has software package: flair=2.0.0

rule-flair collapse
has input: filter/barcode10_filtered.fq
has input: filter/barcode11_filtered.fq
has input: filter/barcode12_filtered.fq
has input: filter/barcode13_filtered.fq
has input: filter/barcode15_filtered.fq
has input: filter/barcode16_filtered.fq
has input: iso_analysis/align/flair_all_corrected.bed
has input: references/genomic.fa
has input: references/standardized_genomic.gtf
has output: iso_analysis/collapse/flair.isoforms.bed
has output: iso_analysis/collapse/flair.isoforms.fa
has software package: flair=2.0.0

rule-flair correct
has input: iso_analysis/align/flair.bed
has input: references/genomic.fa
has input: references/standardized_genomic.gtf
has output: iso_analysis/align/flair_all_corrected.bed
has software package: flair=2.0.0

rule-flair diffexp
has input: iso_analysis/quantify/flair.counts.tsv
has output: iso_analysis/diffexp/genes_deseq2_QCplots_{condition_value1}_v_{condition_value2}.pdf
has output: iso_analysis/diffexp/genes_deseq2_{condition_value1}_v_{condition_value2}.tsv
has output: iso_analysis/diffexp/isoforms_deseq2_QCplots_{condition_value1}_v_{condition_value2}.pdf
has output: iso_analysis/diffexp/isoforms_deseq2_{condition_value1}_v_{condition_value2}.tsv
has output: iso_analysis/diffexp/isoforms_drimseq_{condition_value1}_v_{condition_value2}.tsv
has software package: flair=2.0.0

rule-flair plot isoforms
has input: iso_analysis/collapse/flair.isoforms.bed
has input: iso_analysis/quantify/flair.counts.tsv
has output: iso_analysis/plots
has software package: flair=2.0.0

rule-flair quantify
has input: iso_analysis/collapse/flair.isoforms.bed
has input: iso_analysis/collapse/flair.isoforms.fa
has input: iso_analysis/reads_manifest.tsv
has output: iso_analysis/quantify/flair.counts.tsv
has software package: flair=2.0.0

rule-generate gene query
has input: de_analysis/{factor}_{prop_a}_vs_{prop_b}_l2fc.tsv
has input: transcriptome/corrected_transcriptome.fa
has output: protein_annotation/{factor}_{prop_a}_vs_{prop_b}_de_genes.fa
has software package: biopython >=1.84
has software package: pandas>=2.2.2
has software package: python>=3.12.4

rule-genome to transcriptome
has input: references/genomic.fa
has input: references/standardized_genomic.gff
has output: references/genomic.fa.fai
has output: transcriptome/transcriptome.fa
has software package: gffread>=0.12.7

rule-get annotation
has output: references/genomic.gff
has software package: ncbi-datasets-cli>=18.14.0
has software package: unzip>=6.0.0

rule-get genome
has output: references/genomic.fa
has software package: ncbi-datasets-cli>=18.14.0
has software package: unzip>=6.0.0

rule-get indexed protein db
has output: protein_annotation/index/UniRef.lba.gz
has software package: wget>=1.21.4

rule-get protein names
has input: protein_annotation/blast_results_{factor}_{prop_a}_vs_{prop_b}.m8
has output: protein_annotation/proteins_{factor}_{prop_a}_vs_{prop_b}.csv
has software package: biopython >=1.84
has software package: pandas>=2.2.2
has software package: python>=3.12.4

rule-gff to gtf
has input: references/standardized_genomic.gff
has output: references/standardized_genomic.gtf
has software package: gffread>=0.12.7

rule-iso analysis report
has input: iso_analysis/plots
has output: iso_analysis/report/isoforms
has output: iso_analysis/report/usage
has software package: python>=3.12.4

rule-lambda gene annotation
has input: protein_annotation/index/UniRef.lba.gz
has input: protein_annotation/{factor}_{prop_a}_vs_{prop_b}_de_genes.fa
has output: protein_annotation/blast_results_{factor}_{prop_a}_vs_{prop_b}.m8
has software package: lambda>=3.1.0

rule-map reads
has input: filter/{sample}_filtered.fq
has input: index/transcriptome_index.mmi
has output: alignments/{sample}.sam
has software package: v7.6.0

rule-merge read counts
has input: counts/barcode10_salmon/quant.sf
has input: counts/barcode11_salmon/quant.sf
has input: counts/barcode12_salmon/quant.sf
has input: counts/barcode13_salmon/quant.sf
has input: counts/barcode15_salmon/quant.sf
has input: counts/barcode16_salmon/quant.sf
has output: merged/all_counts.tsv
has software package: pandas>=2.2.2
has software package: python>=3.12.4

rule-pca
has input: de_analysis/all.rds
has output: de_analysis/pca_{variable}.svg
has software package: bioconductor-deseq2 =1.46.0
has software package: r-ashr =2.2_63
has software package: r-pheatmap
has software package: r-rcolorbrewer
has software package: r-stringr =1.5.1

rule-reads manifest
has output: iso_analysis/reads_manifest.tsv
has software package: pandas>=2.2.2
has software package: python>=3.12.4

rule-sam to bam
has input: alignments/{sample}.sam
has output: alignments/{sample}.bam
has software package: v7.6.0

rule-sample qa plot
has output: NanoPlot/{sample}/NanoPlot-report.html
has software package: nanoplot

rule-standardize gff
has input: references/genomic.gff
has output: references/standardized_genomic.gff
has software package: agat>=1.4.0

rule-total sample qa plot
has input: /lustre/project/nhr-zdvhpc/dtest/raw/barcode10.fastq.gz
has input: /lustre/project/nhr-zdvhpc/dtest/raw/barcode11.fastq.gz
has input: /lustre/project/nhr-zdvhpc/dtest/raw/barcode12.fastq.gz
has input: /lustre/project/nhr-zdvhpc/dtest/raw/barcode13.fastq.gz
has input: /lustre/project/nhr-zdvhpc/dtest/raw/barcode15.fastq.gz
has input: /lustre/project/nhr-zdvhpc/dtest/raw/barcode16.fastq.gz
has output: NanoPlot/NanoPlot-report.html
has software package: nanoplot

rule-transcriptid to gene
has input: merged/all_counts.tsv
has input: references/standardized_genomic.gff
has output: merged/all_counts_gene.tsv
has output: merged/transcriptid_to_gene_plot.svg
has software package: anndata=0.10.8
has software package: bioinfokit
has software package: pydeseq2=0.4.10
has software package: seaborn>=0.13.2

from workflow configuration
has configuration file: config-1

workflow rules
has workflow rule: rule-alignment qa
has workflow rule: rule-alignment qa report
has workflow rule: rule-bam index
has workflow rule: rule-bam sort
has workflow rule: rule-bam stats
has workflow rule: rule-bam to bed
has workflow rule: rule-build flair genome index
has workflow rule: rule-build minimap index
has workflow rule: rule-concatenate beds
has workflow rule: rule-correct transcriptome
has workflow rule: rule-count reads
has workflow rule: rule-deseq2
has workflow rule: rule-deseq2 init
has workflow rule: rule-download ensembl annotation
has workflow rule: rule-download ensembl genome
has workflow rule: rule-download ncbi annotation
has workflow rule: rule-download ncbi genome
has workflow rule: rule-filter reads
has workflow rule: rule-flair align
has workflow rule: rule-flair collapse
has workflow rule: rule-flair correct
has workflow rule: rule-flair diffexp
has workflow rule: rule-flair plot isoforms
has workflow rule: rule-flair quantify
has workflow rule: rule-generate gene query
has workflow rule: rule-genome to transcriptome
has workflow rule: rule-get annotation
has workflow rule: rule-get genome
has workflow rule: rule-get indexed protein db
has workflow rule: rule-get protein names
has workflow rule: rule-gff to gtf
has workflow rule: rule-iso analysis report
has workflow rule: rule-lambda gene annotation
has workflow rule: rule-map reads
has workflow rule: rule-merge read counts
has workflow rule: rule-pca
has workflow rule: rule-reads manifest
has workflow rule: rule-sam to bam
has workflow rule: rule-sample qa plot
has workflow rule: rule-standardize gff
has workflow rule: rule-total sample qa plot
has workflow rule: rule-transcriptid to gene

assertion
generated at time: 2026-05-05T19:32:29.762109+02:00
was attributed to: https://orcid.org/0000-0003-2408-7588

sig
has algorithm: RSA
signed by: https://orcid.org/0000-0003-2408-7588