biopipen 0.21.2__tar.gz → 0.22.1__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of biopipen might be problematic. Click here for more details.
- {biopipen-0.21.2 → biopipen-0.22.1}/PKG-INFO +1 -1
- biopipen-0.22.1/biopipen/__init__.py +1 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/core/filters.py +142 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/ns/scrna.py +19 -1
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/ns/tcr.py +30 -10
- biopipen-0.22.1/biopipen/reports/delim/SampleInfo.svelte +16 -0
- biopipen-0.22.1/biopipen/reports/scrna/CellsDistribution.svelte +15 -0
- biopipen-0.22.1/biopipen/reports/scrna/MarkersFinder.svelte +18 -0
- biopipen-0.22.1/biopipen/reports/scrna/MetaMarkers.svelte +18 -0
- biopipen-0.22.1/biopipen/reports/scrna/RadarPlots.svelte +15 -0
- biopipen-0.22.1/biopipen/reports/scrna/ScFGSEA.svelte +16 -0
- biopipen-0.22.1/biopipen/reports/scrna/SeuratClusterStats.svelte +16 -0
- biopipen-0.22.1/biopipen/reports/scrna/SeuratPreparing.svelte +15 -0
- biopipen-0.22.1/biopipen/reports/scrna/TopExpressingGenes.svelte +17 -0
- biopipen-0.22.1/biopipen/reports/scrna_metabolic_landscape/MetabolicFeatures.svelte +32 -0
- biopipen-0.22.1/biopipen/reports/scrna_metabolic_landscape/MetabolicFeaturesIntraSubset.svelte +28 -0
- biopipen-0.22.1/biopipen/reports/scrna_metabolic_landscape/MetabolicPathwayActivity.svelte +89 -0
- biopipen-0.22.1/biopipen/reports/scrna_metabolic_landscape/MetabolicPathwayHeterogeneity.svelte +15 -0
- biopipen-0.22.1/biopipen/reports/tcr/CDR3AAPhyschem.svelte +32 -0
- biopipen-0.22.1/biopipen/reports/tcr/CloneResidency.svelte +19 -0
- biopipen-0.22.1/biopipen/reports/tcr/Immunarch.svelte +16 -0
- biopipen-0.22.1/biopipen/reports/tcr/TCRClusterStats.svelte +15 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/reports/tcr/TESSA.svelte +11 -28
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/delim/SampleInfo.R +41 -7
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/scrna/CellsDistribution.R +127 -16
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/scrna/MarkersFinder.R +245 -100
- biopipen-0.22.1/biopipen/scripts/scrna/MetaMarkers.R +338 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/scrna/RadarPlots.R +163 -110
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/scrna/ScFGSEA.R +51 -11
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/scrna/SeuratClusterStats-dimplots.R +26 -13
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/scrna/SeuratClusterStats-features.R +58 -53
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/scrna/SeuratClusterStats-stats.R +39 -21
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/scrna/SeuratClusterStats.R +4 -2
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/scrna/SeuratClustering.R +73 -26
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/scrna/SeuratMetadataMutater.R +13 -1
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/scrna/SeuratPreparing.R +93 -19
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/scrna/TopExpressingGenes.R +100 -18
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/scrna_metabolic_landscape/MetabolicFeatures.R +21 -8
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/scrna_metabolic_landscape/MetabolicFeaturesIntraSubset.R +25 -3
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/scrna_metabolic_landscape/MetabolicPathwayActivity.R +1 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/scrna_metabolic_landscape/MetabolicPathwayHeterogeneity.R +14 -3
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/tcr/Attach2Seurat.R +2 -1
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/tcr/CDR3AAPhyschem.R +123 -10
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/tcr/CloneResidency.R +114 -34
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/tcr/Immunarch-basic.R +18 -4
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/tcr/Immunarch-clonality.R +14 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/tcr/Immunarch-diversity.R +123 -18
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/tcr/Immunarch-geneusage.R +23 -1
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/tcr/Immunarch-kmer.R +45 -3
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/tcr/Immunarch-overlap.R +62 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/tcr/Immunarch-spectratyping.R +18 -2
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/tcr/Immunarch-tracking.R +24 -1
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/tcr/Immunarch-vjjunc.R +17 -2
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/tcr/Immunarch.R +7 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/tcr/ImmunarchLoading.R +22 -23
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/tcr/TCRClusterStats.R +124 -11
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/tcr/TCRClustering.R +8 -9
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/tcr/TESSA.R +66 -41
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/utils/misc.R +96 -1
- {biopipen-0.21.2 → biopipen-0.22.1}/pyproject.toml +1 -1
- {biopipen-0.21.2 → biopipen-0.22.1}/setup.py +1 -1
- biopipen-0.21.2/biopipen/__init__.py +0 -1
- biopipen-0.21.2/biopipen/reports/delim/SampleInfo.svelte +0 -36
- biopipen-0.21.2/biopipen/reports/scrna/CellsDistribution.svelte +0 -50
- biopipen-0.21.2/biopipen/reports/scrna/MarkersFinder.svelte +0 -138
- biopipen-0.21.2/biopipen/reports/scrna/MetaMarkers.svelte +0 -90
- biopipen-0.21.2/biopipen/reports/scrna/RadarPlots.svelte +0 -31
- biopipen-0.21.2/biopipen/reports/scrna/ScFGSEA.svelte +0 -35
- biopipen-0.21.2/biopipen/reports/scrna/SeuratClusterStats.svelte +0 -82
- biopipen-0.21.2/biopipen/reports/scrna/SeuratPreparing.svelte +0 -38
- biopipen-0.21.2/biopipen/reports/scrna/TopExpressingGenes.svelte +0 -55
- biopipen-0.21.2/biopipen/reports/scrna_metabolic_landscape/MetabolicFeatures.svelte +0 -31
- biopipen-0.21.2/biopipen/reports/scrna_metabolic_landscape/MetabolicFeaturesIntraSubset.svelte +0 -31
- biopipen-0.21.2/biopipen/reports/scrna_metabolic_landscape/MetabolicPathwayActivity.svelte +0 -97
- biopipen-0.21.2/biopipen/reports/scrna_metabolic_landscape/MetabolicPathwayHeterogeneity.svelte +0 -21
- biopipen-0.21.2/biopipen/reports/tcr/CDR3AAPhyschem.svelte +0 -79
- biopipen-0.21.2/biopipen/reports/tcr/CloneResidency.svelte +0 -109
- biopipen-0.21.2/biopipen/reports/tcr/Immunarch.svelte +0 -180
- biopipen-0.21.2/biopipen/reports/tcr/TCRClusterStats.svelte +0 -57
- biopipen-0.21.2/biopipen/scripts/scrna/MetaMarkers.R +0 -257
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/core/__init__.py +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/core/config.py +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/core/config.toml +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/core/defaults.py +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/core/proc.py +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/core/testing.py +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/ns/__init__.py +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/ns/bam.py +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/ns/bcftools.py +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/ns/bed.py +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/ns/cnv.py +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/ns/cnvkit.py +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/ns/cnvkit_pipeline.py +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/ns/delim.py +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/ns/gene.py +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/ns/gsea.py +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/ns/misc.py +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/ns/plot.py +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/ns/rnaseq.py +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/ns/scrna_basic.py +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/ns/scrna_metabolic_landscape.py +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/ns/tcgamaf.py +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/ns/vcf.py +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/ns/web.py +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/reports/bam/CNAClinic.svelte +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/reports/bam/CNVpytor.svelte +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/reports/bam/ControlFREEC.svelte +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/reports/cnv/AneuploidyScore.svelte +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/reports/cnv/AneuploidyScoreSummary.svelte +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/reports/cnv/TMADScoreSummary.svelte +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/reports/cnvkit/CNVkitDiagram.svelte +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/reports/cnvkit/CNVkitHeatmap.svelte +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/reports/cnvkit/CNVkitScatter.svelte +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/reports/gsea/FGSEA.svelte +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/reports/gsea/GSEA.svelte +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/reports/scrna/DimPlots.svelte +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/reports/scrna/GeneExpressionInvistigation.svelte +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/reports/scrna/SeuratMap2Ref.svelte +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/reports/tcr/SampleDiversity.svelte +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/reports/tcr/VJUsage.svelte +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/reports/utils/gsea.liq +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/reports/utils/misc.liq +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/reports/vcf/TruvariBenchSummary.svelte +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/reports/vcf/TruvariConsistency.svelte +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/bam/BamMerge.py +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/bam/BamSplitChroms.py +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/bam/CNAClinic.R +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/bam/CNVpytor.py +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/bam/ControlFREEC.py +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/bcftools/BcftoolsAnnotate.py +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/bcftools/BcftoolsFilter.py +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/bcftools/BcftoolsSort.py +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/bed/Bed2Vcf.py +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/bed/BedConsensus.py +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/bed/BedLiftOver.sh +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/bed/BedtoolsMerge.py +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/cnv/AneuploidyScore.R +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/cnv/AneuploidyScoreSummary.R +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/cnv/TMADScore.R +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/cnv/TMADScoreSummary.R +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/cnvkit/CNVkitAccess.py +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/cnvkit/CNVkitAutobin.py +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/cnvkit/CNVkitBatch.py +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/cnvkit/CNVkitCall.py +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/cnvkit/CNVkitCoverage.py +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/cnvkit/CNVkitDiagram.py +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/cnvkit/CNVkitFix.py +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/cnvkit/CNVkitGuessBaits.py +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/cnvkit/CNVkitHeatmap.py +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/cnvkit/CNVkitReference.py +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/cnvkit/CNVkitScatter.py +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/cnvkit/CNVkitSegment.py +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/cnvkit/guess_baits.py +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/delim/RowsBinder.R +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/gene/GeneNameConversion.py +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/gsea/Enrichr.R +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/gsea/FGSEA.R +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/gsea/GSEA.R +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/gsea/PreRank.R +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/misc/Config2File.py +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/misc/Str2File.py +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/plot/Heatmap.R +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/plot/VennDiagram.R +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/rnaseq/UnitConversion.R +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/scrna/CellTypeAnnotation-direct.R +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/scrna/CellTypeAnnotation-hitype.R +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/scrna/CellTypeAnnotation-sccatch.R +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/scrna/CellTypeAnnotation-sctype.R +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/scrna/CellTypeAnnotation.R +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/scrna/DimPlots.R +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/scrna/ExprImpution-alra.R +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/scrna/ExprImpution-rmagic.R +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/scrna/ExprImpution-scimpute.R +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/scrna/ExprImpution.R +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/scrna/GeneExpressionInvistigation.R +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/scrna/ModuleScoreCalculator.R +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/scrna/SCImpute.R +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/scrna/SeuratFilter.R +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/scrna/SeuratLoading.R +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/scrna/SeuratMap2Ref.R +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/scrna/SeuratSplit.R +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/scrna/SeuratSubset.R +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/scrna/Subset10X.R +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/scrna/Write10X.R +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/scrna/sctype.R +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/tcgamaf/Maf2Vcf.py +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/tcgamaf/MafAddChr.py +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/tcgamaf/maf2vcf.pl +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/tcr/CloneSizeQQPlot.R +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/tcr/GIANA/GIANA.py +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/tcr/GIANA/GIANA4.py +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/tcr/GIANA/Imgt_Human_TRBV.fasta +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/tcr/GIANA/query.py +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/tcr/Immunarch2VDJtools.R +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/tcr/ImmunarchFilter.R +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/tcr/ImmunarchSplitIdents.R +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/tcr/SampleDiversity.R +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/tcr/TESSA_source/Atchley_factors.csv +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/tcr/TESSA_source/BriseisEncoder.py +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/tcr/TESSA_source/MCMC_control.R +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/tcr/TESSA_source/TrainedEncoder.h5 +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/tcr/TESSA_source/fixed_b.csv +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/tcr/TESSA_source/initialization.R +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/tcr/TESSA_source/post_analysis.R +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/tcr/TESSA_source/real_data.R +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/tcr/TESSA_source/update.R +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/tcr/TESSA_source/utility.R +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/tcr/VJUsage.R +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/tcr/vdjtools-patch.sh +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/vcf/TruvariBench.sh +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/vcf/TruvariBenchSummary.R +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/vcf/TruvariConsistency.R +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/vcf/Vcf2Bed.py +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/vcf/VcfAnno.py +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/vcf/VcfDownSample.sh +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/vcf/VcfFilter.py +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/vcf/VcfFix.py +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/vcf/VcfFix_utils.py +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/vcf/VcfIndex.py +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/vcf/VcfIntersect.py +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/vcf/VcfLiftOver.sh +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/vcf/VcfSplitSamples.py +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/web/Download.py +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/scripts/web/DownloadList.py +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/utils/__init__.py +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/utils/common_docstrs.py +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/utils/gene.R +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/utils/gene.py +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/utils/gsea.R +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/utils/io.R +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/utils/misc.py +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/utils/mutate_helpers.R +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/utils/plot.R +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/utils/reference.py +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/utils/rnaseq.R +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/utils/single_cell.R +0 -0
- {biopipen-0.21.2 → biopipen-0.22.1}/biopipen/utils/vcf.py +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
__version__ = "0.22.1"
|
|
@@ -7,6 +7,7 @@ from typing import Any, List, Mapping
|
|
|
7
7
|
|
|
8
8
|
from argx import Namespace
|
|
9
9
|
from liquid.filters.manager import FilterManager
|
|
10
|
+
from pipen_report.filters import register_component, render_ui, _tag
|
|
10
11
|
|
|
11
12
|
filtermanager = FilterManager()
|
|
12
13
|
|
|
@@ -206,3 +207,144 @@ def r(
|
|
|
206
207
|
return r(vars(obj), ignoreintkey, todot, sortkeys, skip, _i)
|
|
207
208
|
|
|
208
209
|
return repr(obj)
|
|
210
|
+
|
|
211
|
+
|
|
212
|
+
@register_component("fgsea")
|
|
213
|
+
def _render_fgsea(
|
|
214
|
+
cont: Mapping[str, Any],
|
|
215
|
+
job: Mapping[str, Any],
|
|
216
|
+
level: int,
|
|
217
|
+
na_arg: str = "10",
|
|
218
|
+
) -> str:
|
|
219
|
+
"""Render fgsea report"""
|
|
220
|
+
# cont["dir"] is required
|
|
221
|
+
n_pathways = int(na_arg)
|
|
222
|
+
pathways = []
|
|
223
|
+
with Path(cont["dir"]).joinpath("fgsea.txt").open() as f:
|
|
224
|
+
next(f) # skip header
|
|
225
|
+
for line in f:
|
|
226
|
+
pathway, _ = line.split("\t", 1)
|
|
227
|
+
pathways.append(pathway)
|
|
228
|
+
if len(pathways) >= n_pathways:
|
|
229
|
+
break
|
|
230
|
+
|
|
231
|
+
components = [
|
|
232
|
+
# Summary
|
|
233
|
+
{
|
|
234
|
+
"title": "Enrichment Analysis Summary",
|
|
235
|
+
"ui": "tabs",
|
|
236
|
+
"contents": [
|
|
237
|
+
{
|
|
238
|
+
"title": "Plot",
|
|
239
|
+
"ui": "flat",
|
|
240
|
+
"contents": [
|
|
241
|
+
{
|
|
242
|
+
"kind": "image",
|
|
243
|
+
"src": str(Path(cont["dir"]).joinpath("gsea_table.png")),
|
|
244
|
+
}
|
|
245
|
+
],
|
|
246
|
+
},
|
|
247
|
+
{
|
|
248
|
+
"title": "Table",
|
|
249
|
+
"ui": "flat",
|
|
250
|
+
"contents": [
|
|
251
|
+
{
|
|
252
|
+
"kind": "table",
|
|
253
|
+
"src": str(Path(cont["dir"]).joinpath("fgsea.txt")),
|
|
254
|
+
}
|
|
255
|
+
],
|
|
256
|
+
},
|
|
257
|
+
]
|
|
258
|
+
},
|
|
259
|
+
# Pathways
|
|
260
|
+
{
|
|
261
|
+
"title": f"Enriched Pathways (Top {n_pathways})",
|
|
262
|
+
"ui": "table_of_images",
|
|
263
|
+
"contents": [
|
|
264
|
+
{
|
|
265
|
+
"src": str(Path(cont["dir"]) / f"fgsea_{pw.replace('/', '-')}.png"),
|
|
266
|
+
"title": pw,
|
|
267
|
+
}
|
|
268
|
+
for pw in pathways
|
|
269
|
+
]
|
|
270
|
+
},
|
|
271
|
+
]
|
|
272
|
+
|
|
273
|
+
return render_ui(components, "accordion", job, level)
|
|
274
|
+
|
|
275
|
+
|
|
276
|
+
@register_component("pdf")
|
|
277
|
+
def _render_pdf(
|
|
278
|
+
cont: Mapping[str, Any],
|
|
279
|
+
job: Mapping[str, Any],
|
|
280
|
+
level: int,
|
|
281
|
+
) -> str:
|
|
282
|
+
"""Render pdf report"""
|
|
283
|
+
# cont["src"] is required
|
|
284
|
+
height = cont.get("height", "600")
|
|
285
|
+
return _tag(
|
|
286
|
+
"embed",
|
|
287
|
+
src=str(cont["src"]),
|
|
288
|
+
type="application/pdf",
|
|
289
|
+
width="100%",
|
|
290
|
+
height=height,
|
|
291
|
+
)
|
|
292
|
+
|
|
293
|
+
|
|
294
|
+
@register_component("gsea")
|
|
295
|
+
def _render_gsea(
|
|
296
|
+
cont: Mapping[str, Any],
|
|
297
|
+
job: Mapping[str, Any],
|
|
298
|
+
level: int,
|
|
299
|
+
) -> str:
|
|
300
|
+
"""Render gsea report"""
|
|
301
|
+
# cont["dir"] is required
|
|
302
|
+
raise NotImplementedError()
|
|
303
|
+
|
|
304
|
+
|
|
305
|
+
@register_component("enrichr")
|
|
306
|
+
def _render_enrichr(
|
|
307
|
+
cont: Mapping[str, Any],
|
|
308
|
+
job: Mapping[str, Any],
|
|
309
|
+
level: int,
|
|
310
|
+
) -> str:
|
|
311
|
+
"""Render enrichr report"""
|
|
312
|
+
# cont["dir"] is required
|
|
313
|
+
dbs = [sumfile.stem[8:] for sumfile in Path(cont["dir"]).glob("Enrichr-*.txt")]
|
|
314
|
+
components = []
|
|
315
|
+
|
|
316
|
+
for db in dbs:
|
|
317
|
+
components.append(
|
|
318
|
+
{
|
|
319
|
+
"title": db,
|
|
320
|
+
"ui": "tabs",
|
|
321
|
+
"contents": [
|
|
322
|
+
{
|
|
323
|
+
"title": "Plot",
|
|
324
|
+
"ui": "flat",
|
|
325
|
+
"contents": [
|
|
326
|
+
{
|
|
327
|
+
"kind": "image",
|
|
328
|
+
"src": str(
|
|
329
|
+
Path(cont["dir"]).joinpath(f"Enrichr-{db}.png")
|
|
330
|
+
),
|
|
331
|
+
}
|
|
332
|
+
],
|
|
333
|
+
},
|
|
334
|
+
{
|
|
335
|
+
"title": "Table",
|
|
336
|
+
"ui": "flat",
|
|
337
|
+
"contents": [
|
|
338
|
+
{
|
|
339
|
+
"kind": "table",
|
|
340
|
+
"src": str(
|
|
341
|
+
Path(cont["dir"]).joinpath(f"Enrichr-{db}.txt")
|
|
342
|
+
),
|
|
343
|
+
}
|
|
344
|
+
],
|
|
345
|
+
},
|
|
346
|
+
],
|
|
347
|
+
}
|
|
348
|
+
)
|
|
349
|
+
|
|
350
|
+
return render_ui(components, "accordion", job, level)
|
|
@@ -257,6 +257,16 @@ class SeuratClustering(Proc):
|
|
|
257
257
|
`object` is specified internally, and `-` in the key will be replaced with `.`.
|
|
258
258
|
- resolution (type=float): The resolution of the clustering
|
|
259
259
|
- <more>: See <https://satijalab.org/seurat/reference/findclusters>
|
|
260
|
+
cache (type=auto): Whether to cache the seurat object with cluster information.
|
|
261
|
+
If `True`, the seurat object will be cached in the job output directory, which will be not cleaned up when job is rerunning.
|
|
262
|
+
The cached seurat object will be saved as `<signature>.cached.RDS` file, where `<signature>` is the signature determined by
|
|
263
|
+
the input and envs of the process.
|
|
264
|
+
See <https://github.com/satijalab/seurat/issues/7849>, <https://github.com/satijalab/seurat/issues/5358> and
|
|
265
|
+
<https://github.com/satijalab/seurat/issues/6748> for more details.
|
|
266
|
+
To not use the cached seurat object, you can either set `cache` to `False` or delete the cached file at
|
|
267
|
+
`.pipen/<Pipeline>/SeuratClustering/0/output/<signature>.cached.RDS`.
|
|
268
|
+
You can also specify the directory to save the cached seurat object by setting `cache` to the directory path.
|
|
269
|
+
|
|
260
270
|
|
|
261
271
|
Requires:
|
|
262
272
|
r-seurat:
|
|
@@ -286,6 +296,7 @@ class SeuratClustering(Proc):
|
|
|
286
296
|
"RunUMAP": {"reduction": "pca", "dims": 30},
|
|
287
297
|
"FindNeighbors": {},
|
|
288
298
|
"FindClusters": {"resolution": 0.8},
|
|
299
|
+
"cache": True,
|
|
289
300
|
}
|
|
290
301
|
script = "file://../scripts/scrna/SeuratClustering.R"
|
|
291
302
|
|
|
@@ -418,6 +429,7 @@ class SeuratClusterStats(Proc):
|
|
|
418
429
|
- group-by: Same as `ident`. How the points are colored.
|
|
419
430
|
- split-by: The column name in metadata to split the cells into different plots.
|
|
420
431
|
- shape-by: The column name in metadata to use as the shape.
|
|
432
|
+
- subset: An expression to subset the cells, will be passed to `tidyrseurat::filter()`.
|
|
421
433
|
- devpars (ns): The device parameters for the plots.
|
|
422
434
|
- res (type=int): The resolution of the plots.
|
|
423
435
|
- height (type=int): The height of the plots.
|
|
@@ -482,6 +494,7 @@ class SeuratClusterStats(Proc):
|
|
|
482
494
|
"group-by": None,
|
|
483
495
|
"split-by": None,
|
|
484
496
|
"shape-by": None,
|
|
497
|
+
"subset": None,
|
|
485
498
|
"reduction": "dim",
|
|
486
499
|
"devpars": {"res": 100, "height": 800, "width": 1000},
|
|
487
500
|
},
|
|
@@ -642,6 +655,7 @@ class CellsDistribution(Proc):
|
|
|
642
655
|
Ignored if `cells_order` is specified.
|
|
643
656
|
subset: An expression to subset the cells, will be passed to `dplyr::filter()` on metadata.
|
|
644
657
|
This will be applied prior to `each`.
|
|
658
|
+
descr: The description of the case, will be shown in the report.
|
|
645
659
|
devpars (ns): The device parameters for the plots.
|
|
646
660
|
- res (type=int): The resolution of the plots
|
|
647
661
|
- height (type=int): The height of the plots
|
|
@@ -676,6 +690,7 @@ class CellsDistribution(Proc):
|
|
|
676
690
|
"cells_orderby": None,
|
|
677
691
|
"cells_n": 10,
|
|
678
692
|
"subset": None,
|
|
693
|
+
"descr": None,
|
|
679
694
|
"devpars": {},
|
|
680
695
|
"each": None,
|
|
681
696
|
"section": "DEFAULT",
|
|
@@ -1669,7 +1684,7 @@ class RadarPlots(Proc):
|
|
|
1669
1684
|
"cluster_order": [],
|
|
1670
1685
|
"breaks": [],
|
|
1671
1686
|
"direction": "intra-cluster",
|
|
1672
|
-
"section":
|
|
1687
|
+
"section": "DEFAULT",
|
|
1673
1688
|
"devpars": {
|
|
1674
1689
|
"res": 100,
|
|
1675
1690
|
"width": 1200,
|
|
@@ -1719,6 +1734,8 @@ class MetaMarkers(Proc):
|
|
|
1719
1734
|
dbs (list): The dbs to do enrichment analysis for significant
|
|
1720
1735
|
markers See below for all libraries.
|
|
1721
1736
|
<https://maayanlab.cloud/Enrichr/#libraries>
|
|
1737
|
+
subset: The subset of the cells to do the analysis.
|
|
1738
|
+
An expression passed to `dplyr::filter()`.
|
|
1722
1739
|
p_adjust (choice): The method to adjust the p values, which can be used to filter the significant markers.
|
|
1723
1740
|
See also <https://rdrr.io/r/stats/p.adjust.html>
|
|
1724
1741
|
- holm: Holm-Bonferroni method
|
|
@@ -1759,6 +1776,7 @@ class MetaMarkers(Proc):
|
|
|
1759
1776
|
"group-by": None,
|
|
1760
1777
|
"idents": None,
|
|
1761
1778
|
"each": None,
|
|
1779
|
+
"subset": None,
|
|
1762
1780
|
"prefix_each": True,
|
|
1763
1781
|
"p_adjust": "BH",
|
|
1764
1782
|
"dbs": [
|
|
@@ -40,11 +40,13 @@ class ImmunarchLoading(Proc):
|
|
|
40
40
|
|
|
41
41
|
Output:
|
|
42
42
|
rdsfile: The RDS file with the data and metadata
|
|
43
|
-
metatxt: The meta data
|
|
43
|
+
metatxt: The meta data at cell level, which can be used to attach to the Seurat object
|
|
44
44
|
|
|
45
45
|
Envs:
|
|
46
46
|
prefix: The prefix to the barcodes. You can use placeholder like `{Sample}_`
|
|
47
|
-
to use the meta data from the `immunarch` object.
|
|
47
|
+
to use the meta data from the `immunarch` object. The prefixed barcodes will
|
|
48
|
+
be saved in `out.metatxt`. The `immunarch` object keeps the original barcodes, but
|
|
49
|
+
the prefix is saved at `immdata$prefix`.
|
|
48
50
|
|
|
49
51
|
/// Note
|
|
50
52
|
This option is useful because the barcodes for the cells from scRNA-seq
|
|
@@ -65,10 +67,16 @@ class ImmunarchLoading(Proc):
|
|
|
65
67
|
paired chain data. For `single`, only TRB chain will be kept
|
|
66
68
|
at `immdata$data`, information for other chains will be
|
|
67
69
|
saved at `immdata$tra` and `immdata$multi`.
|
|
68
|
-
|
|
70
|
+
extracols (list): The extra columns to be exported to the text file.
|
|
69
71
|
You can refer to the
|
|
70
72
|
[immunarch documentation](https://immunarch.com/articles/v2_data.html#immunarch-data-format)
|
|
71
|
-
for the full list of the columns.
|
|
73
|
+
to get a sense for the full list of the columns.
|
|
74
|
+
The columns may vary depending on the data source.
|
|
75
|
+
The columns from `immdata$meta` and some core columns, including
|
|
76
|
+
`Barcode`, `CDR3.aa`, `Clones`, `Proportion`, `V.name`, `J.name`, and
|
|
77
|
+
`D.name` will be exported by default. You can use this option to
|
|
78
|
+
specify the extra columns to be exported.
|
|
79
|
+
|
|
72
80
|
""" # noqa: E501
|
|
73
81
|
input = "metafile:file"
|
|
74
82
|
output = [
|
|
@@ -80,7 +88,7 @@ class ImmunarchLoading(Proc):
|
|
|
80
88
|
"tmpdir": config.path.tmpdir,
|
|
81
89
|
"prefix": "{Sample}_",
|
|
82
90
|
"mode": "single",
|
|
83
|
-
"
|
|
91
|
+
"extracols": [],
|
|
84
92
|
}
|
|
85
93
|
script = "file://../scripts/tcr/ImmunarchLoading.R"
|
|
86
94
|
|
|
@@ -322,6 +330,7 @@ class Immunarch(Proc):
|
|
|
322
330
|
prefix: The prefix to the barcodes. You can use placeholder like `{Sample}_`
|
|
323
331
|
The prefixed barcodes will be used to match the barcodes in `in.metafile`.
|
|
324
332
|
Not used if `in.metafile` is not specified.
|
|
333
|
+
If `None` (default), `immdata$prefix` will be used.
|
|
325
334
|
volumes (ns): Explore clonotype volume (sizes).
|
|
326
335
|
- by: Groupings when visualize clonotype volumes, passed to the `.by` argument of `vis(imm_vol, .by = <values>)`.
|
|
327
336
|
Multiple columns should be separated by `,`.
|
|
@@ -682,7 +691,7 @@ class Immunarch(Proc):
|
|
|
682
691
|
lang = config.lang.rscript
|
|
683
692
|
envs = {
|
|
684
693
|
"mutaters": {},
|
|
685
|
-
"prefix":
|
|
694
|
+
"prefix": None,
|
|
686
695
|
# basic statistics
|
|
687
696
|
"volumes": {
|
|
688
697
|
"by": None,
|
|
@@ -1179,6 +1188,10 @@ class TCRClustering(Proc):
|
|
|
1179
1188
|
For GIANA, using TRBV mutations is not supported
|
|
1180
1189
|
- GIANA: by Li lab at UT Southwestern Medical Center
|
|
1181
1190
|
- ClusTCR: by Sebastiaan Valkiers, etc
|
|
1191
|
+
prefix: The prefix to the barcodes. You can use placeholder like `{Sample}_`
|
|
1192
|
+
The prefixed barcodes will be used to match the barcodes in `in.metafile`.
|
|
1193
|
+
Not used if `in.metafile` is not specified.
|
|
1194
|
+
If `None` (default), `immdata$prefix` will be used.
|
|
1182
1195
|
python: The path of python with `GIANA`'s dependencies installed
|
|
1183
1196
|
or with `clusTCR` installed. Depending on the `tool` you choose.
|
|
1184
1197
|
args (type=json): The arguments for the clustering tool
|
|
@@ -1202,6 +1215,7 @@ class TCRClustering(Proc):
|
|
|
1202
1215
|
lang = config.lang.rscript
|
|
1203
1216
|
envs = {
|
|
1204
1217
|
"tool": "GIANA", # or ClusTCR
|
|
1218
|
+
"prefix": None,
|
|
1205
1219
|
"on_multi": False,
|
|
1206
1220
|
"python": config.lang.python,
|
|
1207
1221
|
"args": {},
|
|
@@ -1507,7 +1521,8 @@ class TESSA(Proc):
|
|
|
1507
1521
|
[link](https://www.nature.com/articles/s42256-021-00383-2)
|
|
1508
1522
|
|
|
1509
1523
|
Input:
|
|
1510
|
-
immdata: The
|
|
1524
|
+
immdata: The immunarch object in RDS file or text file of TCR data loaded by
|
|
1525
|
+
[`ImmunarchLoading`](!!#biopipennstcrimmunarchloading)
|
|
1511
1526
|
srtobj: The `Seurat` object, saved in RDS format, with dimension
|
|
1512
1527
|
reduction performed if you want to use them to represent the
|
|
1513
1528
|
transcriptome of T cells.
|
|
@@ -1522,8 +1537,13 @@ class TESSA(Proc):
|
|
|
1522
1537
|
|
|
1523
1538
|
Envs:
|
|
1524
1539
|
python: The path of python with `TESSA`'s dependencies installed
|
|
1525
|
-
prefix: The prefix
|
|
1526
|
-
|
|
1540
|
+
prefix: The prefix of the cell barcodes in the `Seurat` object.
|
|
1541
|
+
Once could use a fixed prefix, or a placeholder with the column
|
|
1542
|
+
name in meta data. For example, `"{Sample}_"` will replace the
|
|
1543
|
+
placeholder with the value of the column `Sample` in meta data.
|
|
1544
|
+
If `in.immdata` is text file, the prefix will be ignored and the
|
|
1545
|
+
barcode should be already prefixed.
|
|
1546
|
+
If `None` and `in.immdata` is RDS file, `immdata$prefix` will be used.
|
|
1527
1547
|
within_sample (flag): Whether the TCR networks are constructed only
|
|
1528
1548
|
within TCRs from the same sample/patient (True) or with all the
|
|
1529
1549
|
TCRs in the meta data matrix (False).
|
|
@@ -1548,7 +1568,7 @@ class TESSA(Proc):
|
|
|
1548
1568
|
lang = config.lang.rscript
|
|
1549
1569
|
envs = {
|
|
1550
1570
|
"python": config.lang.python,
|
|
1551
|
-
"prefix":
|
|
1571
|
+
"prefix": None,
|
|
1552
1572
|
"assay": "RNA",
|
|
1553
1573
|
"within_sample": False,
|
|
1554
1574
|
"predefined_b": False,
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
{% from "utils/misc.liq" import report_jobs, table_of_images -%}
|
|
2
|
+
|
|
3
|
+
<script>
|
|
4
|
+
import { Image, DataTable, Descr } from "$libs";
|
|
5
|
+
</script>
|
|
6
|
+
|
|
7
|
+
{%- macro report_job(job, h=1) -%}
|
|
8
|
+
{{ job | render_job: h=h }}
|
|
9
|
+
{%- endmacro -%}
|
|
10
|
+
|
|
11
|
+
{%- macro head_job(job) -%}
|
|
12
|
+
<h1>{{job.in.infile | stem | escape }}</h1>
|
|
13
|
+
{%- endmacro -%}
|
|
14
|
+
|
|
15
|
+
{{ report_jobs(jobs, head_job, report_job) }}
|
|
16
|
+
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
{% from "utils/misc.liq" import report_jobs, table_of_images -%}
|
|
2
|
+
<script>
|
|
3
|
+
import { Image, DataTable, Descr } from "$libs";
|
|
4
|
+
import { Tabs, Tab, TabContent } from "$ccs";
|
|
5
|
+
</script>
|
|
6
|
+
|
|
7
|
+
{%- macro report_job(job, h=1) -%}
|
|
8
|
+
{{ job | render_job: h=h }}
|
|
9
|
+
{%- endmacro -%}
|
|
10
|
+
|
|
11
|
+
{%- macro head_job(job) -%}
|
|
12
|
+
<h1>{{job.in.srtobj | stem0 | escape}}</h1>
|
|
13
|
+
{%- endmacro -%}
|
|
14
|
+
|
|
15
|
+
{{ report_jobs(jobs, head_job, report_job) }}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
{% from "utils/misc.liq" import report_jobs -%}
|
|
2
|
+
|
|
3
|
+
<script>
|
|
4
|
+
import { Image, DataTable, Descr } from "$libs";
|
|
5
|
+
import { Tabs, Tab, TabContent, InlineNotification, Accordion, AccordionItem } from "$ccs";
|
|
6
|
+
</script>
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
{%- macro report_job(job, h=1) -%}
|
|
10
|
+
{{ job | render_job: h=h }}
|
|
11
|
+
{%- endmacro -%}
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
{%- macro head_job(job) -%}
|
|
15
|
+
<h1>{{job.in.srtobj | stem | escape}}</h1>
|
|
16
|
+
{%- endmacro -%}
|
|
17
|
+
|
|
18
|
+
{{ report_jobs(jobs, head_job, report_job) }}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
{% from "utils/misc.liq" import report_jobs, table_of_images -%}
|
|
2
|
+
{% from "utils/gsea.liq" import enrichr_report -%}
|
|
3
|
+
<script>
|
|
4
|
+
import { Image, DataTable, Descr } from "$libs";
|
|
5
|
+
import { Tabs, Tab, TabContent, InlineNotification, Accordion, AccordionItem } from "$ccs";
|
|
6
|
+
</script>
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
{%- macro report_job(job, h=1) -%}
|
|
10
|
+
{{ job | render_job: h=h }}
|
|
11
|
+
{%- endmacro -%}
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
{%- macro head_job(job) -%}
|
|
15
|
+
<h1>{{job.in.srtobj | stem | escape}}</h1>
|
|
16
|
+
{%- endmacro -%}
|
|
17
|
+
|
|
18
|
+
{{ report_jobs(jobs, head_job, report_job) }}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
{% from "utils/misc.liq" import report_jobs, table_of_images -%}
|
|
2
|
+
<script>
|
|
3
|
+
import { Image, DataTable } from "$libs";
|
|
4
|
+
import { Tabs, Tab, TabContent } from "$ccs";
|
|
5
|
+
</script>
|
|
6
|
+
|
|
7
|
+
{%- macro report_job(job, h=1) -%}
|
|
8
|
+
{{ job | render_job: h=h }}
|
|
9
|
+
{%- endmacro -%}
|
|
10
|
+
|
|
11
|
+
{%- macro head_job(job) -%}
|
|
12
|
+
<h1>{{job.in.srtobj | stem}}</h1>
|
|
13
|
+
{%- endmacro -%}
|
|
14
|
+
|
|
15
|
+
{{ report_jobs(jobs, head_job, report_job) }}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
{% from "utils/gsea.liq" import fgsea_report -%}
|
|
2
|
+
{% from "utils/misc.liq" import report_jobs -%}
|
|
3
|
+
<script>
|
|
4
|
+
import { Image, DataTable, Descr } from "$libs";
|
|
5
|
+
import { Accordion, AccordionItem, Tabs, Tab, TabContent } from "$ccs";
|
|
6
|
+
</script>
|
|
7
|
+
|
|
8
|
+
{%- macro report_job(job, h=1) -%}
|
|
9
|
+
{{ job | render_job: h=h }}
|
|
10
|
+
{%- endmacro -%}
|
|
11
|
+
|
|
12
|
+
{%- macro head_job(job) -%}
|
|
13
|
+
<h1>{{job.in.srtobj | stem0 | escape}}</h1>
|
|
14
|
+
{%- endmacro -%}
|
|
15
|
+
|
|
16
|
+
{{ report_jobs(jobs, head_job, report_job) }}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
{% from "utils/misc.liq" import report_jobs, table_of_images -%}
|
|
2
|
+
{% from_ os import path %}
|
|
3
|
+
<script>
|
|
4
|
+
import { DataTable, Image, Descr } from "$libs";
|
|
5
|
+
import { Tabs, Tab, TabContent } from "$ccs";
|
|
6
|
+
</script>
|
|
7
|
+
|
|
8
|
+
{%- macro report_job(job, h=1) -%}
|
|
9
|
+
{{ job | render_job: h=h }}
|
|
10
|
+
{%- endmacro -%}
|
|
11
|
+
|
|
12
|
+
{%- macro head_job(job) -%}
|
|
13
|
+
<h1>{{job.in.srtobj | stem}}</h1>
|
|
14
|
+
{%- endmacro -%}
|
|
15
|
+
|
|
16
|
+
{{ report_jobs(jobs, head_job, report_job) }}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
{% from "utils/misc.liq" import report_jobs -%}
|
|
2
|
+
{% from_ os import path %}
|
|
3
|
+
<script>
|
|
4
|
+
import { Image, DataTable, Descr } from "$libs";
|
|
5
|
+
</script>
|
|
6
|
+
|
|
7
|
+
{%- macro report_job(job, h=1) -%}
|
|
8
|
+
{{ job | render_job: h=h }}
|
|
9
|
+
{%- endmacro -%}
|
|
10
|
+
|
|
11
|
+
{%- macro head_job(job) -%}
|
|
12
|
+
<h1>{{job.in.metafile | stem}}</h1>
|
|
13
|
+
{%- endmacro -%}
|
|
14
|
+
|
|
15
|
+
{{ report_jobs(jobs, head_job, report_job) }}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
{% from "utils/misc.liq" import report_jobs -%}
|
|
2
|
+
{% from "utils/gsea.liq" import enrichr_report -%}
|
|
3
|
+
<script>
|
|
4
|
+
import { Image, DataTable, Descr } from "$libs";
|
|
5
|
+
import { Accordion, AccordionItem, Tabs, Tab, TabContent } from "$ccs";
|
|
6
|
+
</script>
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
{%- macro report_job(job, h=1) -%}
|
|
10
|
+
{{ job | render_job: h=h }}
|
|
11
|
+
{%- endmacro -%}
|
|
12
|
+
|
|
13
|
+
{%- macro head_job(job) -%}
|
|
14
|
+
<h1>{{job.in.srtobj | stem0 | escape}}</h1>
|
|
15
|
+
{%- endmacro -%}
|
|
16
|
+
|
|
17
|
+
{{ report_jobs(jobs, head_job, report_job) }}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
{% from "utils/misc.liq" import report_jobs, table_of_images -%}
|
|
2
|
+
{% from "utils/gsea.liq" import fgsea_report_script, fgsea_report, gsea_report -%}
|
|
3
|
+
|
|
4
|
+
<script>
|
|
5
|
+
import { Image, DataTable, Descr } from "$libs";
|
|
6
|
+
import { Tabs, Tab, TabContent, Accordion, AccordionItem } from "$ccs";
|
|
7
|
+
</script>
|
|
8
|
+
|
|
9
|
+
{%- macro report_job(job, h=2) -%}
|
|
10
|
+
{% if envs.fgsea %}
|
|
11
|
+
{{ job | render_job: h=h }}
|
|
12
|
+
{% else %}
|
|
13
|
+
{%- for ssdir in job.out.outdir | glob: "*" -%}
|
|
14
|
+
{%- if basename(ssdir) == "ALL" -%}
|
|
15
|
+
{%- set h = 1 -%}
|
|
16
|
+
{%- else -%}
|
|
17
|
+
<h{{h}}>{{ ssdir | stem }}</h{{h}}>
|
|
18
|
+
{%- endif -%}
|
|
19
|
+
|
|
20
|
+
{% for cldir in ssdir | glob: '*' %}
|
|
21
|
+
<h{{h+1}}>{{ cldir | basename }}</h{{h+1}}>
|
|
22
|
+
{{ gsea_report(cldir, h+2, envs, envs.top) }}
|
|
23
|
+
{% endfor %}
|
|
24
|
+
{%- endfor -%}
|
|
25
|
+
{% endif %}
|
|
26
|
+
{%- endmacro -%}
|
|
27
|
+
|
|
28
|
+
{%- macro head_job(job) -%}
|
|
29
|
+
<h1>{{job.in.sobjfile | stem | escape}}</h1>
|
|
30
|
+
{%- endmacro -%}
|
|
31
|
+
|
|
32
|
+
{{ report_jobs(jobs, head_job, report_job) }}
|
biopipen-0.22.1/biopipen/reports/scrna_metabolic_landscape/MetabolicFeaturesIntraSubset.svelte
ADDED
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
{% from "utils/misc.liq" import report_jobs, table_of_images -%}
|
|
2
|
+
{% from "utils/gsea.liq" import fgsea_report, gsea_report -%}
|
|
3
|
+
|
|
4
|
+
<script>
|
|
5
|
+
import { Image, DataTable, Descr } from "$libs";
|
|
6
|
+
import { Tabs, Tab, TabContent, Accordion, AccordionItem } from "$ccs";
|
|
7
|
+
</script>
|
|
8
|
+
|
|
9
|
+
{%- macro report_job(job, h=2) -%}
|
|
10
|
+
{% if envs.fgsea %}
|
|
11
|
+
{{ job | render_job: h=h }}
|
|
12
|
+
{% else %}
|
|
13
|
+
{% for groupdir in job.out.outdir | glob: "*" %}
|
|
14
|
+
<h{{h}}>{{groupdir | basename}}</h{{h}}>
|
|
15
|
+
{%- set dsdirs = groupdir | glob: "*" -%}
|
|
16
|
+
{% for dsdir in groupdir | glob: "*" %}
|
|
17
|
+
<h{{h+1}}>{{ dsdir | basename }}</h{{h+1}}>
|
|
18
|
+
{{ gsea_report(dsdir, h+2, envs, envs.top) }}
|
|
19
|
+
{% endfor %}
|
|
20
|
+
{% endfor %}
|
|
21
|
+
{% endif %}
|
|
22
|
+
{%- endmacro -%}
|
|
23
|
+
|
|
24
|
+
{%- macro head_job(job) -%}
|
|
25
|
+
<h1>{{job.in.sobjfile | stem | escape}}</h1>
|
|
26
|
+
{%- endmacro -%}
|
|
27
|
+
|
|
28
|
+
{{ report_jobs(jobs, head_job, report_job) }}
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
{% from "utils/misc.liq" import report_jobs -%}
|
|
2
|
+
|
|
3
|
+
<script>
|
|
4
|
+
import { Image, Descr } from "$libs";
|
|
5
|
+
import { ListItem, UnorderedList } from "$ccs";
|
|
6
|
+
</script>
|
|
7
|
+
|
|
8
|
+
<h1>Introduction</h1>
|
|
9
|
+
|
|
10
|
+
<Descr>
|
|
11
|
+
Metabolic landscape of single cells in the tumor microenvironment.
|
|
12
|
+
</Descr>
|
|
13
|
+
|
|
14
|
+
<h2>Workflow of the original analysis</h2>
|
|
15
|
+
<Image src="https://github.com/LocasaleLab/Single-Cell-Metabolic-Landscape/raw/master/pipeline.png" />
|
|
16
|
+
|
|
17
|
+
<h2>Reference</h2>
|
|
18
|
+
<UnorderedList>
|
|
19
|
+
<ListItem><a href="https://www.nature.com/articles/s41467-019-11738-0" target="_blank">
|
|
20
|
+
Zhengtao, Ziwei Dai, and Jason W. Locasale.
|
|
21
|
+
"Metabolic landscape of the tumor microenvironment at single cell resolution."
|
|
22
|
+
Nature communications 10.1 (2019): 1-12.
|
|
23
|
+
</a></ListItem>
|
|
24
|
+
<ListItem><a href="https://github.com/LocasaleLab/Single-Cell-Metabolic-Landscape" target="_blank">
|
|
25
|
+
Orginal pipeline
|
|
26
|
+
</a></ListItem>
|
|
27
|
+
</UnorderedList>
|
|
28
|
+
|
|
29
|
+
<h2>Analyses with this pipeline</h2>
|
|
30
|
+
|
|
31
|
+
<Descr>
|
|
32
|
+
The cells are grouped at 2 dimensions: `grouping`, usually the cell types, and `subsetting`, usually
|
|
33
|
+
the groups that bring biological meaning (i.e. different timepoints or sample types (tumor/normal)).
|
|
34
|
+
</Descr>
|
|
35
|
+
|
|
36
|
+
<UnorderedList>
|
|
37
|
+
<ListItem>
|
|
38
|
+
MetabolicPathwayActivity (this page)
|
|
39
|
+
<p>Investigating the metabolic pathways of the cells in different groups and subsets.</p>
|
|
40
|
+
<p>The cells are first grouped by subsets and then the metabolic activities are examined for each groups in different subsets.</p>
|
|
41
|
+
</ListItem>
|
|
42
|
+
<ListItem>
|
|
43
|
+
<a href="../MetabolicPathwayHeterogeneity/index.html">MetabolicPathwayHeterogeneity</a>
|
|
44
|
+
<p>Showing metabolic pathways enriched in genes with highest contribution to the metabolic heterogeneities</p>
|
|
45
|
+
</ListItem>
|
|
46
|
+
<ListItem>
|
|
47
|
+
<a href="../MetabolicFeatures/index.html">MetabolicFeatures</a>
|
|
48
|
+
<p>Gene set enrichment analysis against the metabolic pathways for groups in different subsets.</p>
|
|
49
|
+
</ListItem>
|
|
50
|
+
<ListItem>
|
|
51
|
+
<a href="../MetabolicFeaturesIntraSubsets/index.html">MetabolicFeaturesIntraSubsets</a>
|
|
52
|
+
<p>Gene set enrichment analysis against the metabolic pathways for subsets in different groups.</p>
|
|
53
|
+
</ListItem>
|
|
54
|
+
</UnorderedList>
|
|
55
|
+
|
|
56
|
+
|
|
57
|
+
{%- macro report_job(job, h=2) -%}
|
|
58
|
+
{%- for ssdir in job.out.outdir | glob: "*" -%}
|
|
59
|
+
{%- if not isdir(ssdir) -%}
|
|
60
|
+
{%- continue -%}
|
|
61
|
+
{%- endif -%}
|
|
62
|
+
<h{{h}}>{{ ssdir | stem }}</h{{h}}>
|
|
63
|
+
|
|
64
|
+
<h{{ h+1 }}>Metabolic pathway activities by <code>{{envs.grouping}}</code></h{{ h+1 }}>
|
|
65
|
+
<Image src="{{ssdir | joinpaths: 'KEGGpathway_activity_heatmap.png'}}" />
|
|
66
|
+
|
|
67
|
+
<h{{ h+1 }}>Distributions of pathway activities by <code>{{envs.grouping}}</code></h{{ h+1 }}>
|
|
68
|
+
<Image src="{{ssdir | joinpaths: 'pathway_activity_violinplot.png'}}" />
|
|
69
|
+
{%- endfor -%}
|
|
70
|
+
|
|
71
|
+
{% if job.out.outdir | glob: "*.group-*.png" -%}
|
|
72
|
+
<h{{h}}>Merged heatmaps</h{{h}}>
|
|
73
|
+
{% for group_hm in job.out.outdir | glob: "*.group-*.png" -%}
|
|
74
|
+
{%- if group_hm.endswith(".group-unclustered.png") -%}
|
|
75
|
+
<h{{h+1}}>{{group_hm | stem | replace: ".group-unclustered", " (Group Unclustered)"}}</h{{h+1}}>
|
|
76
|
+
<Image src="{{group_hm}}" />
|
|
77
|
+
{%- else -%}
|
|
78
|
+
<h{{h+1}}>{{group_hm | stem | replace: ".group-clustered", " (Group Clustered)"}}</h{{h+1}}>
|
|
79
|
+
<Image src="{{group_hm}}" />
|
|
80
|
+
{%- endif -%}
|
|
81
|
+
{%- endfor -%}
|
|
82
|
+
{%- endif -%}
|
|
83
|
+
{%- endmacro -%}
|
|
84
|
+
|
|
85
|
+
{%- macro head_job(job) -%}
|
|
86
|
+
<h1>{{job.in.sobjfile | stem | escape}}</h1>
|
|
87
|
+
{%- endmacro -%}
|
|
88
|
+
|
|
89
|
+
{{ report_jobs(jobs, head_job, report_job) }}
|