biopipen 0.21.0__py3-none-any.whl → 0.34.26__py3-none-any.whl

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.
Files changed (290) hide show
  1. biopipen/__init__.py +1 -1
  2. biopipen/core/config.toml +28 -0
  3. biopipen/core/filters.py +79 -4
  4. biopipen/core/proc.py +12 -3
  5. biopipen/core/testing.py +75 -3
  6. biopipen/ns/bam.py +148 -6
  7. biopipen/ns/bed.py +75 -0
  8. biopipen/ns/cellranger.py +186 -0
  9. biopipen/ns/cellranger_pipeline.py +126 -0
  10. biopipen/ns/cnv.py +19 -3
  11. biopipen/ns/cnvkit.py +1 -1
  12. biopipen/ns/cnvkit_pipeline.py +20 -12
  13. biopipen/ns/delim.py +34 -35
  14. biopipen/ns/gene.py +68 -23
  15. biopipen/ns/gsea.py +63 -37
  16. biopipen/ns/misc.py +39 -14
  17. biopipen/ns/plot.py +304 -1
  18. biopipen/ns/protein.py +183 -0
  19. biopipen/ns/regulatory.py +290 -0
  20. biopipen/ns/rnaseq.py +142 -5
  21. biopipen/ns/scrna.py +2053 -473
  22. biopipen/ns/scrna_metabolic_landscape.py +228 -382
  23. biopipen/ns/snp.py +659 -0
  24. biopipen/ns/stats.py +484 -0
  25. biopipen/ns/tcr.py +683 -98
  26. biopipen/ns/vcf.py +236 -2
  27. biopipen/ns/web.py +97 -6
  28. biopipen/reports/bam/CNVpytor.svelte +4 -9
  29. biopipen/reports/cellranger/CellRangerCount.svelte +18 -0
  30. biopipen/reports/cellranger/CellRangerSummary.svelte +16 -0
  31. biopipen/reports/cellranger/CellRangerVdj.svelte +18 -0
  32. biopipen/reports/cnvkit/CNVkitDiagram.svelte +1 -1
  33. biopipen/reports/cnvkit/CNVkitHeatmap.svelte +1 -1
  34. biopipen/reports/cnvkit/CNVkitScatter.svelte +1 -1
  35. biopipen/reports/common.svelte +15 -0
  36. biopipen/reports/protein/ProdigySummary.svelte +16 -0
  37. biopipen/reports/scrna/CellsDistribution.svelte +4 -39
  38. biopipen/reports/scrna/DimPlots.svelte +1 -1
  39. biopipen/reports/scrna/MarkersFinder.svelte +6 -126
  40. biopipen/reports/scrna/MetaMarkers.svelte +3 -75
  41. biopipen/reports/scrna/RadarPlots.svelte +4 -20
  42. biopipen/reports/scrna_metabolic_landscape/MetabolicFeatures.svelte +61 -22
  43. biopipen/reports/scrna_metabolic_landscape/MetabolicPathwayActivity.svelte +88 -82
  44. biopipen/reports/scrna_metabolic_landscape/MetabolicPathwayHeterogeneity.svelte +70 -10
  45. biopipen/reports/snp/PlinkCallRate.svelte +24 -0
  46. biopipen/reports/snp/PlinkFreq.svelte +18 -0
  47. biopipen/reports/snp/PlinkHWE.svelte +18 -0
  48. biopipen/reports/snp/PlinkHet.svelte +18 -0
  49. biopipen/reports/snp/PlinkIBD.svelte +18 -0
  50. biopipen/reports/tcr/CDR3AAPhyschem.svelte +19 -66
  51. biopipen/reports/tcr/ClonalStats.svelte +16 -0
  52. biopipen/reports/tcr/CloneResidency.svelte +3 -93
  53. biopipen/reports/tcr/Immunarch.svelte +4 -155
  54. biopipen/reports/tcr/TCRClusterStats.svelte +3 -45
  55. biopipen/reports/tcr/TESSA.svelte +11 -28
  56. biopipen/reports/utils/misc.liq +22 -7
  57. biopipen/scripts/bam/BamMerge.py +11 -15
  58. biopipen/scripts/bam/BamSampling.py +90 -0
  59. biopipen/scripts/bam/BamSort.py +141 -0
  60. biopipen/scripts/bam/BamSplitChroms.py +10 -10
  61. biopipen/scripts/bam/BamSubsetByBed.py +38 -0
  62. biopipen/scripts/bam/CNAClinic.R +41 -5
  63. biopipen/scripts/bam/CNVpytor.py +153 -54
  64. biopipen/scripts/bam/ControlFREEC.py +13 -14
  65. biopipen/scripts/bam/SamtoolsView.py +33 -0
  66. biopipen/scripts/bed/Bed2Vcf.py +5 -5
  67. biopipen/scripts/bed/BedConsensus.py +5 -5
  68. biopipen/scripts/bed/BedLiftOver.sh +6 -4
  69. biopipen/scripts/bed/BedtoolsIntersect.py +54 -0
  70. biopipen/scripts/bed/BedtoolsMakeWindows.py +47 -0
  71. biopipen/scripts/bed/BedtoolsMerge.py +4 -4
  72. biopipen/scripts/cellranger/CellRangerCount.py +138 -0
  73. biopipen/scripts/cellranger/CellRangerSummary.R +181 -0
  74. biopipen/scripts/cellranger/CellRangerVdj.py +112 -0
  75. biopipen/scripts/cnv/AneuploidyScore.R +55 -20
  76. biopipen/scripts/cnv/AneuploidyScoreSummary.R +221 -163
  77. biopipen/scripts/cnv/TMADScore.R +25 -9
  78. biopipen/scripts/cnv/TMADScoreSummary.R +57 -86
  79. biopipen/scripts/cnvkit/CNVkitAccess.py +7 -6
  80. biopipen/scripts/cnvkit/CNVkitAutobin.py +26 -18
  81. biopipen/scripts/cnvkit/CNVkitBatch.py +6 -6
  82. biopipen/scripts/cnvkit/CNVkitCall.py +3 -3
  83. biopipen/scripts/cnvkit/CNVkitCoverage.py +4 -3
  84. biopipen/scripts/cnvkit/CNVkitDiagram.py +5 -5
  85. biopipen/scripts/cnvkit/CNVkitFix.py +3 -3
  86. biopipen/scripts/cnvkit/CNVkitGuessBaits.py +12 -8
  87. biopipen/scripts/cnvkit/CNVkitHeatmap.py +5 -5
  88. biopipen/scripts/cnvkit/CNVkitReference.py +6 -5
  89. biopipen/scripts/cnvkit/CNVkitScatter.py +5 -5
  90. biopipen/scripts/cnvkit/CNVkitSegment.py +5 -5
  91. biopipen/scripts/cnvkit/guess_baits.py +166 -93
  92. biopipen/scripts/delim/RowsBinder.R +1 -1
  93. biopipen/scripts/delim/SampleInfo.R +116 -118
  94. biopipen/scripts/gene/GeneNameConversion.R +67 -0
  95. biopipen/scripts/gene/GenePromoters.R +61 -0
  96. biopipen/scripts/gsea/Enrichr.R +5 -5
  97. biopipen/scripts/gsea/FGSEA.R +184 -50
  98. biopipen/scripts/gsea/GSEA.R +2 -2
  99. biopipen/scripts/gsea/PreRank.R +5 -5
  100. biopipen/scripts/misc/Config2File.py +2 -2
  101. biopipen/scripts/misc/Plot.R +80 -0
  102. biopipen/scripts/misc/Shell.sh +15 -0
  103. biopipen/scripts/misc/Str2File.py +2 -2
  104. biopipen/scripts/plot/Heatmap.R +3 -3
  105. biopipen/scripts/plot/Manhattan.R +147 -0
  106. biopipen/scripts/plot/QQPlot.R +146 -0
  107. biopipen/scripts/plot/ROC.R +88 -0
  108. biopipen/scripts/plot/Scatter.R +112 -0
  109. biopipen/scripts/plot/VennDiagram.R +5 -9
  110. biopipen/scripts/protein/MMCIF2PDB.py +33 -0
  111. biopipen/scripts/protein/PDB2Fasta.py +60 -0
  112. biopipen/scripts/protein/Prodigy.py +119 -0
  113. biopipen/scripts/protein/ProdigySummary.R +140 -0
  114. biopipen/scripts/protein/RMSD.py +178 -0
  115. biopipen/scripts/regulatory/MotifAffinityTest.R +102 -0
  116. biopipen/scripts/regulatory/MotifAffinityTest_AtSNP.R +127 -0
  117. biopipen/scripts/regulatory/MotifAffinityTest_MotifBreakR.R +104 -0
  118. biopipen/scripts/regulatory/MotifScan.py +159 -0
  119. biopipen/scripts/regulatory/VariantMotifPlot.R +78 -0
  120. biopipen/scripts/regulatory/motifs-common.R +324 -0
  121. biopipen/scripts/rnaseq/Simulation-ESCO.R +180 -0
  122. biopipen/scripts/rnaseq/Simulation-RUVcorr.R +45 -0
  123. biopipen/scripts/rnaseq/Simulation.R +21 -0
  124. biopipen/scripts/rnaseq/UnitConversion.R +325 -54
  125. biopipen/scripts/scrna/AnnData2Seurat.R +40 -0
  126. biopipen/scripts/scrna/CCPlotR-patch.R +161 -0
  127. biopipen/scripts/scrna/CellCellCommunication.py +150 -0
  128. biopipen/scripts/scrna/CellCellCommunicationPlots.R +93 -0
  129. biopipen/scripts/scrna/CellSNPLite.py +30 -0
  130. biopipen/scripts/scrna/CellTypeAnnotation-celltypist.R +185 -0
  131. biopipen/scripts/scrna/CellTypeAnnotation-direct.R +68 -31
  132. biopipen/scripts/scrna/CellTypeAnnotation-hitype.R +27 -22
  133. biopipen/scripts/scrna/CellTypeAnnotation-sccatch.R +28 -20
  134. biopipen/scripts/scrna/CellTypeAnnotation-sctype.R +48 -25
  135. biopipen/scripts/scrna/CellTypeAnnotation.R +37 -1
  136. biopipen/scripts/scrna/CellsDistribution.R +456 -167
  137. biopipen/scripts/scrna/DimPlots.R +1 -1
  138. biopipen/scripts/scrna/ExprImputation-alra.R +109 -0
  139. biopipen/scripts/scrna/ExprImputation-rmagic.R +256 -0
  140. biopipen/scripts/scrna/{ExprImpution-scimpute.R → ExprImputation-scimpute.R} +8 -5
  141. biopipen/scripts/scrna/ExprImputation.R +7 -0
  142. biopipen/scripts/scrna/LoomTo10X.R +51 -0
  143. biopipen/scripts/scrna/MQuad.py +25 -0
  144. biopipen/scripts/scrna/MarkersFinder.R +679 -400
  145. biopipen/scripts/scrna/MetaMarkers.R +265 -161
  146. biopipen/scripts/scrna/ModuleScoreCalculator.R +66 -11
  147. biopipen/scripts/scrna/PseudoBulkDEG.R +678 -0
  148. biopipen/scripts/scrna/RadarPlots.R +355 -134
  149. biopipen/scripts/scrna/ScFGSEA.R +298 -100
  150. biopipen/scripts/scrna/ScSimulation.R +65 -0
  151. biopipen/scripts/scrna/ScVelo.py +617 -0
  152. biopipen/scripts/scrna/Seurat2AnnData.R +7 -0
  153. biopipen/scripts/scrna/SeuratClusterStats-clustree.R +87 -0
  154. biopipen/scripts/scrna/SeuratClusterStats-dimplots.R +36 -30
  155. biopipen/scripts/scrna/SeuratClusterStats-features.R +138 -187
  156. biopipen/scripts/scrna/SeuratClusterStats-ngenes.R +81 -0
  157. biopipen/scripts/scrna/SeuratClusterStats-stats.R +78 -89
  158. biopipen/scripts/scrna/SeuratClusterStats.R +47 -10
  159. biopipen/scripts/scrna/SeuratClustering.R +36 -233
  160. biopipen/scripts/scrna/SeuratLoading.R +2 -2
  161. biopipen/scripts/scrna/SeuratMap2Ref.R +84 -113
  162. biopipen/scripts/scrna/SeuratMetadataMutater.R +16 -6
  163. biopipen/scripts/scrna/SeuratPreparing.R +223 -173
  164. biopipen/scripts/scrna/SeuratSubClustering.R +64 -0
  165. biopipen/scripts/scrna/SeuratTo10X.R +27 -0
  166. biopipen/scripts/scrna/Slingshot.R +65 -0
  167. biopipen/scripts/scrna/Subset10X.R +2 -2
  168. biopipen/scripts/scrna/TopExpressingGenes.R +169 -135
  169. biopipen/scripts/scrna/celltypist-wrapper.py +195 -0
  170. biopipen/scripts/scrna/scvelo_paga.py +313 -0
  171. biopipen/scripts/scrna/seurat_anndata_conversion.py +98 -0
  172. biopipen/scripts/scrna_metabolic_landscape/MetabolicFeatures.R +447 -82
  173. biopipen/scripts/scrna_metabolic_landscape/MetabolicPathwayActivity.R +348 -241
  174. biopipen/scripts/scrna_metabolic_landscape/MetabolicPathwayHeterogeneity.R +188 -166
  175. biopipen/scripts/snp/MatrixEQTL.R +217 -0
  176. biopipen/scripts/snp/Plink2GTMat.py +148 -0
  177. biopipen/scripts/snp/PlinkCallRate.R +199 -0
  178. biopipen/scripts/snp/PlinkFilter.py +100 -0
  179. biopipen/scripts/snp/PlinkFreq.R +291 -0
  180. biopipen/scripts/snp/PlinkFromVcf.py +81 -0
  181. biopipen/scripts/snp/PlinkHWE.R +85 -0
  182. biopipen/scripts/snp/PlinkHet.R +96 -0
  183. biopipen/scripts/snp/PlinkIBD.R +196 -0
  184. biopipen/scripts/snp/PlinkSimulation.py +124 -0
  185. biopipen/scripts/snp/PlinkUpdateName.py +124 -0
  186. biopipen/scripts/stats/ChowTest.R +146 -0
  187. biopipen/scripts/stats/DiffCoexpr.R +152 -0
  188. biopipen/scripts/stats/LiquidAssoc.R +135 -0
  189. biopipen/scripts/stats/Mediation.R +108 -0
  190. biopipen/scripts/stats/MetaPvalue.R +130 -0
  191. biopipen/scripts/stats/MetaPvalue1.R +74 -0
  192. biopipen/scripts/tcgamaf/Maf2Vcf.py +2 -2
  193. biopipen/scripts/tcgamaf/MafAddChr.py +2 -2
  194. biopipen/scripts/tcr/Attach2Seurat.R +3 -2
  195. biopipen/scripts/tcr/CDR3AAPhyschem.R +211 -143
  196. biopipen/scripts/tcr/CDR3Clustering.R +343 -0
  197. biopipen/scripts/tcr/ClonalStats.R +526 -0
  198. biopipen/scripts/tcr/CloneResidency.R +255 -131
  199. biopipen/scripts/tcr/CloneSizeQQPlot.R +4 -4
  200. biopipen/scripts/tcr/GIANA/GIANA.py +1356 -797
  201. biopipen/scripts/tcr/GIANA/GIANA4.py +1362 -789
  202. biopipen/scripts/tcr/GIANA/query.py +164 -162
  203. biopipen/scripts/tcr/Immunarch-basic.R +31 -9
  204. biopipen/scripts/tcr/Immunarch-clonality.R +25 -5
  205. biopipen/scripts/tcr/Immunarch-diversity.R +352 -134
  206. biopipen/scripts/tcr/Immunarch-geneusage.R +45 -5
  207. biopipen/scripts/tcr/Immunarch-kmer.R +68 -8
  208. biopipen/scripts/tcr/Immunarch-overlap.R +84 -4
  209. biopipen/scripts/tcr/Immunarch-spectratyping.R +35 -6
  210. biopipen/scripts/tcr/Immunarch-tracking.R +38 -6
  211. biopipen/scripts/tcr/Immunarch-vjjunc.R +165 -0
  212. biopipen/scripts/tcr/Immunarch.R +63 -11
  213. biopipen/scripts/tcr/Immunarch2VDJtools.R +2 -2
  214. biopipen/scripts/tcr/ImmunarchFilter.R +4 -4
  215. biopipen/scripts/tcr/ImmunarchLoading.R +38 -29
  216. biopipen/scripts/tcr/SampleDiversity.R +1 -1
  217. biopipen/scripts/tcr/ScRepCombiningExpression.R +40 -0
  218. biopipen/scripts/tcr/ScRepLoading.R +166 -0
  219. biopipen/scripts/tcr/TCRClusterStats.R +176 -22
  220. biopipen/scripts/tcr/TCRDock.py +110 -0
  221. biopipen/scripts/tcr/TESSA.R +102 -118
  222. biopipen/scripts/tcr/VJUsage.R +5 -5
  223. biopipen/scripts/tcr/immunarch-patched.R +142 -0
  224. biopipen/scripts/tcr/vdjtools-patch.sh +1 -1
  225. biopipen/scripts/vcf/BcftoolsAnnotate.py +91 -0
  226. biopipen/scripts/vcf/BcftoolsFilter.py +90 -0
  227. biopipen/scripts/vcf/BcftoolsMerge.py +31 -0
  228. biopipen/scripts/vcf/BcftoolsSort.py +113 -0
  229. biopipen/scripts/vcf/BcftoolsView.py +73 -0
  230. biopipen/scripts/vcf/TruvariBench.sh +14 -7
  231. biopipen/scripts/vcf/TruvariBenchSummary.R +16 -13
  232. biopipen/scripts/vcf/TruvariConsistency.R +1 -1
  233. biopipen/scripts/vcf/Vcf2Bed.py +2 -2
  234. biopipen/scripts/vcf/VcfAnno.py +11 -11
  235. biopipen/scripts/vcf/VcfDownSample.sh +22 -10
  236. biopipen/scripts/vcf/VcfFilter.py +5 -5
  237. biopipen/scripts/vcf/VcfFix.py +7 -7
  238. biopipen/scripts/vcf/VcfFix_utils.py +13 -4
  239. biopipen/scripts/vcf/VcfIndex.py +3 -3
  240. biopipen/scripts/vcf/VcfIntersect.py +3 -3
  241. biopipen/scripts/vcf/VcfLiftOver.sh +5 -0
  242. biopipen/scripts/vcf/VcfSplitSamples.py +4 -4
  243. biopipen/scripts/vcf/bcftools_utils.py +52 -0
  244. biopipen/scripts/web/Download.py +8 -4
  245. biopipen/scripts/web/DownloadList.py +5 -5
  246. biopipen/scripts/web/GCloudStorageDownloadBucket.py +82 -0
  247. biopipen/scripts/web/GCloudStorageDownloadFile.py +23 -0
  248. biopipen/scripts/web/gcloud_common.py +49 -0
  249. biopipen/utils/gene.py +108 -60
  250. biopipen/utils/misc.py +146 -20
  251. biopipen/utils/reference.py +64 -20
  252. biopipen/utils/reporter.py +177 -0
  253. biopipen/utils/vcf.py +1 -1
  254. biopipen-0.34.26.dist-info/METADATA +27 -0
  255. biopipen-0.34.26.dist-info/RECORD +292 -0
  256. {biopipen-0.21.0.dist-info → biopipen-0.34.26.dist-info}/WHEEL +1 -1
  257. {biopipen-0.21.0.dist-info → biopipen-0.34.26.dist-info}/entry_points.txt +6 -2
  258. biopipen/ns/bcftools.py +0 -111
  259. biopipen/ns/scrna_basic.py +0 -255
  260. biopipen/reports/delim/SampleInfo.svelte +0 -36
  261. biopipen/reports/scrna/GeneExpressionInvistigation.svelte +0 -32
  262. biopipen/reports/scrna/ScFGSEA.svelte +0 -35
  263. biopipen/reports/scrna/SeuratClusterStats.svelte +0 -82
  264. biopipen/reports/scrna/SeuratMap2Ref.svelte +0 -20
  265. biopipen/reports/scrna/SeuratPreparing.svelte +0 -38
  266. biopipen/reports/scrna/TopExpressingGenes.svelte +0 -55
  267. biopipen/reports/scrna_metabolic_landscape/MetabolicFeaturesIntraSubset.svelte +0 -31
  268. biopipen/reports/utils/gsea.liq +0 -110
  269. biopipen/scripts/bcftools/BcftoolsAnnotate.py +0 -42
  270. biopipen/scripts/bcftools/BcftoolsFilter.py +0 -79
  271. biopipen/scripts/bcftools/BcftoolsSort.py +0 -19
  272. biopipen/scripts/gene/GeneNameConversion.py +0 -66
  273. biopipen/scripts/scrna/ExprImpution-alra.R +0 -32
  274. biopipen/scripts/scrna/ExprImpution-rmagic.R +0 -29
  275. biopipen/scripts/scrna/ExprImpution.R +0 -7
  276. biopipen/scripts/scrna/GeneExpressionInvistigation.R +0 -132
  277. biopipen/scripts/scrna/Write10X.R +0 -11
  278. biopipen/scripts/scrna_metabolic_landscape/MetabolicFeaturesIntraSubset.R +0 -150
  279. biopipen/scripts/tcr/TCRClustering.R +0 -280
  280. biopipen/utils/common_docstrs.py +0 -61
  281. biopipen/utils/gene.R +0 -49
  282. biopipen/utils/gsea.R +0 -193
  283. biopipen/utils/io.R +0 -20
  284. biopipen/utils/misc.R +0 -114
  285. biopipen/utils/mutate_helpers.R +0 -433
  286. biopipen/utils/plot.R +0 -173
  287. biopipen/utils/rnaseq.R +0 -48
  288. biopipen/utils/single_cell.R +0 -115
  289. biopipen-0.21.0.dist-info/METADATA +0 -22
  290. biopipen-0.21.0.dist-info/RECORD +0 -218
@@ -1,5 +1,10 @@
1
+ """Utilities for indexing reference files"""
2
+ from __future__ import annotations
3
+
1
4
  import tempfile
5
+ from os import PathLike
2
6
  from pathlib import Path
7
+ from typing import Literal
3
8
 
4
9
  from ..core.config import config
5
10
  from biopipen.utils.misc import run_command
@@ -18,7 +23,12 @@ def gztype(gzfile):
18
23
  return "flat"
19
24
 
20
25
 
21
- def tabix_index(infile, preset, tmpdir=None, tabix=config.exe.tabix):
26
+ def tabix_index(
27
+ infile: str | PathLike,
28
+ preset: Literal["gff", "bed", "sam", "vcf", "gaf"],
29
+ tmpdir: Literal[False] | str | PathLike | None = None,
30
+ tabix: str = config.exe.tabix,
31
+ ) -> str | PathLike:
22
32
  """Index input file using tabix
23
33
 
24
34
  1. Try to check if there is an index file in the same directory where infile
@@ -28,22 +38,47 @@ def tabix_index(infile, preset, tmpdir=None, tabix=config.exe.tabix):
28
38
  it in tmpdir
29
39
  4. Index the bgzipped file and return the bgzipped file
30
40
 
41
+ Args:
42
+ infile: The input file to be indexed
43
+ preset: The preset used to index the file
44
+ tmpdir: The directory to link the infile there and index it
45
+ If False, try to index the infile directly. The directory where
46
+ the infile is should be writable.
47
+ tabix: The path to tabix
48
+
31
49
  Returns:
32
50
  The infile itself or re-bgzipped infile. This file comes with the
33
51
  index file in the same directory
34
52
  """
35
- if tmpdir is None:
36
- tmpdir = Path(tempfile.mkdtemp(prefix="biopipen_tabix_index_"))
37
- else:
38
- tmpdir = Path(tmpdir)
39
53
 
40
54
  infile = Path(infile)
41
55
  gt = gztype(infile)
42
-
43
- if gt == "bgzip" and infile.with_suffix(infile.suffix + ".tbi").is_file():
56
+ index_file = infile.with_suffix(infile.suffix + ".tbi")
57
+ # if index file exists, and it's newer than the infile, return infile
58
+ if (
59
+ gt == "bgzip"
60
+ and index_file.is_file()
61
+ and index_file.stat().st_mtime > infile.resolve().stat().st_mtime
62
+ ):
44
63
  # only bgzipped file is possible to have index file
45
64
  return infile
46
65
 
66
+ if tmpdir is False:
67
+ # index the infile directly
68
+ run_command([tabix, "-p", preset, infile], fg=True)
69
+ return infile
70
+
71
+ if tmpdir is None:
72
+ from hashlib import md5
73
+ # use a hash of infile to create the tempdir
74
+ tmpdir = Path(tempfile.gettempdir()).joinpath(
75
+ f"biopipen_tabix_index_{md5(str(infile).encode()).hexdigest()}"
76
+ )
77
+ else:
78
+ tmpdir = Path(tmpdir)
79
+
80
+ tmpdir.mkdir(exist_ok=True, parents=True)
81
+
47
82
  # /path/to/some.vcf -> some.vcf
48
83
  # /path/to/some.vcf.gz -> some.vcf
49
84
  basename = infile.stem if infile.name.endswith(".gz") else infile.name
@@ -53,15 +88,24 @@ def tabix_index(infile, preset, tmpdir=None, tabix=config.exe.tabix):
53
88
  if gt == "gzip":
54
89
  # re-bgzip
55
90
  run_command(
56
- ["gunzip", "-c", infile], stdout=new_infile.with_suffix(""),
91
+ ["gunzip", "-f", "-c", infile], stdout=new_infile.with_suffix(""),
57
92
  )
58
- run_command(["bgzip", new_infile.with_suffix("")], fg=True)
93
+ run_command(["bgzip", "-f", new_infile.with_suffix("")], fg=True)
59
94
  elif gt == "flat":
60
- run_command(["bgzip", "-c", infile], stdout=new_infile)
95
+ run_command(["bgzip", "-f", "-c", infile], stdout=new_infile)
61
96
  else:
97
+ if new_infile.is_symlink():
98
+ new_infile.unlink()
62
99
  # directory of infile may not have write permission
63
100
  new_infile.symlink_to(infile)
64
101
 
102
+ new_index_file = new_infile.with_suffix(new_infile.suffix + ".tbi")
103
+ if (
104
+ new_index_file.is_file()
105
+ and new_index_file.stat().st_mtime > infile.resolve().stat().st_mtime
106
+ ):
107
+ return new_infile
108
+
65
109
  run_command([tabix, "-p", preset, new_infile], fg=True)
66
110
  return new_infile
67
111
 
@@ -82,15 +126,15 @@ def _run_bam_index(
82
126
 
83
127
 
84
128
  def bam_index(
85
- bam,
86
- bamdir=tempfile.gettempdir(),
87
- tool="samtools",
88
- samtools=config.exe.samtools,
89
- sambamba=config.exe.sambamba,
90
- ncores=1,
91
- ext=".bam.bai",
92
- force=False,
93
- ):
129
+ bam: str | Path,
130
+ bamdir: Path | str = tempfile.gettempdir(),
131
+ tool: str = "samtools",
132
+ samtools: str = config.exe.samtools,
133
+ sambamba: str = config.exe.sambamba,
134
+ ncores: int = 1,
135
+ ext: str = ".bam.bai",
136
+ force: bool = False,
137
+ ) -> Path:
94
138
  """Index a bam file
95
139
 
96
140
  First look for the index file in the same directory as the bam file,
@@ -131,7 +175,7 @@ def bam_index(
131
175
  return bam
132
176
 
133
177
  if indexfile.is_file():
134
- return str(bam)
178
+ return bam
135
179
 
136
180
  linkfile = Path(bamdir).joinpath(bam.name)
137
181
  indexfile = linkfile.with_suffix(ext)
@@ -0,0 +1,177 @@
1
+ from __future__ import annotations
2
+ from typing import Sequence
3
+ from os import PathLike
4
+ from pathlib import Path
5
+
6
+ """An implementation of reporter in python
7
+ "https://pwwang.github.io/biopipen.utils.R/reference/Reporter.html
8
+
9
+ to generate a json file for pipen-report to build a report for a process.
10
+ """
11
+
12
+ import json
13
+
14
+
15
+ class Reporter:
16
+
17
+ def __init__(self):
18
+ self.report = {}
19
+
20
+ def add(
21
+ self,
22
+ *args,
23
+ h1: str,
24
+ h2: str = "#",
25
+ h3: str = "#",
26
+ ui: str = "flat",
27
+ ) -> None:
28
+ """Add a content to the report
29
+
30
+ Args:
31
+ *args: The content of the report
32
+ h1 (str): The first level header
33
+ h2 (str): The second level header
34
+ h3 (str): The third level header
35
+ ui (str): The user interface of the report
36
+ """
37
+
38
+ self.report.setdefault(h1, {})
39
+ self.report[h1].setdefault(h2, {})
40
+ self.report[h1][h2].setdefault(h3, {})
41
+ self.report[h1][h2][h3][ui] = []
42
+
43
+ for arg in args:
44
+ self.report[h1][h2][h3][ui].append(arg)
45
+
46
+ def add2(
47
+ self,
48
+ *args,
49
+ hs: Sequence[str],
50
+ hs2: Sequence[str] = (),
51
+ ui: str = "flat",
52
+ collapse: str = ": ",
53
+ ) -> None:
54
+ """Add a content to the report
55
+
56
+ Args:
57
+ *args: The content of the report
58
+ hs: The headings of the case
59
+ hs2: The headings that must be shown.
60
+ When there are more items in `hs`, they will be concatenated.
61
+ For example, if `hs = c("Section1", "Case1")`, and `hs2 = c("A", "B")`,
62
+ then headings will be `h1 = "Section1: Case1"` and `h2 = "A"` and
63
+ `h3 = "B"`.
64
+ ui: The user interface of the report
65
+ collapse: The separator to concatenate the headings
66
+ """
67
+ if len(hs2) > 2:
68
+ raise ValueError("hs2 must have 2 or less items")
69
+
70
+ if len(hs2) == 2:
71
+ h1 = collapse.join(hs)
72
+ h2 = hs2[0]
73
+ h3 = hs2[1]
74
+ elif len(hs2) == 1:
75
+ h1 = hs[0]
76
+ hs = hs[1:]
77
+ if hs:
78
+ h2 = collapse.join(hs)
79
+ h3 = hs2[0]
80
+ else:
81
+ h2 = hs2[0]
82
+ h3 = "#"
83
+ else:
84
+ h1 = hs[0]
85
+ hs = hs[1:]
86
+ if hs:
87
+ h2 = hs[0]
88
+ hs = hs[1:]
89
+ else:
90
+ h2 = "#"
91
+
92
+ if hs:
93
+ h3 = collapse.join(hs)
94
+ else:
95
+ h3 = "#"
96
+
97
+ self.add(*args, h1=h1, h2=h2, h3=h3, ui=ui)
98
+
99
+ def image(
100
+ self,
101
+ prefix: str,
102
+ more_formats: str | Sequence[str],
103
+ save_code: bool,
104
+ kind: str = "image",
105
+ **kwargs,
106
+ ) -> dict:
107
+ """Generate a report for an image to be added.
108
+
109
+ Args:
110
+ prefix: The prefix of the image.
111
+ more_formats: More formats of the image available.
112
+ save_code: Whether to save the code to reproduce the plot.
113
+ kind: The kind of the report, default is "image".
114
+ **kwargs: Other arguments to add to the report.
115
+
116
+ Returns:
117
+ dict: The structured report for the image
118
+
119
+ Examples:
120
+ >>> reporter = Reporter()
121
+ >>> reporter.add(
122
+ >>> {
123
+ >>> "name": "Image 1",
124
+ >>> "contents": [
125
+ >>> reporter.image("/path/to/image1", "pdf", save_code=True)
126
+ >>> ]
127
+ >>> },
128
+ >>> h1="Images",
129
+ >>> h2="Image 1",
130
+ >>> )
131
+ """
132
+ out = {
133
+ "kind": kind,
134
+ "src": f"{prefix}.png",
135
+ **kwargs,
136
+ }
137
+
138
+ if more_formats or save_code:
139
+ out["download"] = []
140
+
141
+ if more_formats:
142
+ for mf in more_formats:
143
+ out["download"].append(f"{prefix}.{mf}")
144
+
145
+ if save_code:
146
+ out["download"].append(
147
+ {
148
+ "src": f"{prefix}.code.zip",
149
+ "tip": "Download the code to reproduce the plot",
150
+ "icon": "Code",
151
+ }
152
+ )
153
+
154
+ return out
155
+
156
+ def clear(self):
157
+ """Clear the report"""
158
+ self.report = {}
159
+
160
+ def save(self, path: str | PathLike, clear: bool = True) -> None:
161
+ """Save the report to a file
162
+
163
+ Args:
164
+ path: The path to save the report
165
+ If the path is a directory, the report will be saved as `report.json`
166
+ in the directory. Otherwise, the report will be saved to the file.
167
+ clear: Whether to clear the report after saving.
168
+ """
169
+ path = Path(path)
170
+ if path.is_dir():
171
+ path = path / "report.json"
172
+
173
+ with open(path, "w") as f:
174
+ json.dump(self.report, f, indent=2)
175
+
176
+ if clear:
177
+ self.clear()
biopipen/utils/vcf.py CHANGED
@@ -326,7 +326,7 @@ class Variant:
326
326
  if isinstance(samples, str):
327
327
  samples = Samples.from_str(samples, format)
328
328
  elif isinstance(samples[0], str):
329
- samples = Samples.from_strs(samples, format)
329
+ samples = Samples.from_strs(samples, format) # type: ignore
330
330
  else:
331
331
  samples = Samples.from_strss(samples, format)
332
332
 
@@ -0,0 +1,27 @@
1
+ Metadata-Version: 2.4
2
+ Name: biopipen
3
+ Version: 0.34.26
4
+ Summary: Bioinformatics processes/pipelines that can be run from `pipen run`
5
+ License: MIT
6
+ Author: pwwang
7
+ Author-email: pwwang@pwwang.com
8
+ Requires-Python: >=3.9,<4.0
9
+ Classifier: License :: OSI Approved :: MIT License
10
+ Classifier: Programming Language :: Python :: 3
11
+ Classifier: Programming Language :: Python :: 3.9
12
+ Classifier: Programming Language :: Python :: 3.10
13
+ Classifier: Programming Language :: Python :: 3.11
14
+ Classifier: Programming Language :: Python :: 3.12
15
+ Classifier: Programming Language :: Python :: 3.13
16
+ Classifier: Programming Language :: Python :: 3.14
17
+ Provides-Extra: log2file
18
+ Provides-Extra: runinfo
19
+ Requires-Dist: datar[pandas] (>=0.15.8,<0.16.0)
20
+ Requires-Dist: pipen-board[report] (>=0.17,<0.18)
21
+ Requires-Dist: pipen-cli-run (>=0.15,<0.16)
22
+ Requires-Dist: pipen-deprecated (>=0.0,<0.1)
23
+ Requires-Dist: pipen-filters (>=0.15,<0.16)
24
+ Requires-Dist: pipen-log2file (>=0.10.2,<0.11.0) ; extra == "log2file"
25
+ Requires-Dist: pipen-poplog (>=0.3,<0.4)
26
+ Requires-Dist: pipen-runinfo (>=0.9,<0.10) ; extra == "runinfo"
27
+ Requires-Dist: pipen-verbose (>=0.14,<0.15)
@@ -0,0 +1,292 @@
1
+ biopipen/__init__.py,sha256=rIXEwO7es8MXz_mI7AEkKrxT65G5y0OrKNxLmmq9N2c,24
2
+ biopipen/core/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
3
+ biopipen/core/config.py,sha256=edK5xnDhM8j27srDzsxubi934NMrglLoKrdcC8qsEPk,1069
4
+ biopipen/core/config.toml,sha256=hArI_h6iryrS5QMhfgGXdje7WGxj_DWcLjGjulHwBdQ,2264
5
+ biopipen/core/defaults.py,sha256=yPeehPLk_OYCf71IgRVCWuQRxLAMixDF81Ium0HtPKI,344
6
+ biopipen/core/filters.py,sha256=MbGhByMJT0Vo4tKPHdFdpfd3sTsCxGgpjYZUKn7aXD0,9357
7
+ biopipen/core/proc.py,sha256=jSdwm0IYjCnil0a3eYScKfq-JbTlVWwamT7Yjgaz-Ec,996
8
+ biopipen/core/testing.py,sha256=383wr9WFAzlYSmH7_5_TjEei2VCo78WWGU71OdvLkjg,3923
9
+ biopipen/ns/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
10
+ biopipen/ns/bam.py,sha256=hjUne8jCpOLaObF9u5EvVJDaiOHoEdvSb94Bm0Zg-fQ,13942
11
+ biopipen/ns/bed.py,sha256=EqpSa7Hx6GImvJNghtV4uDo2PnPXeUt1Yq9AFWJP9_8,8159
12
+ biopipen/ns/cellranger.py,sha256=Hm8E-ONKN8_PmqUMUyEdaQEQi0oDAk9QtfPfRebArRQ,8067
13
+ biopipen/ns/cellranger_pipeline.py,sha256=IjCCGpr1HB3R4nRyBcAgWmF0HsLYmHd6nGMn2-wkWOM,4075
14
+ biopipen/ns/cnv.py,sha256=QzAearaaQG3n9lEyI79Nm9dUxWRov72XN8voRHcy74s,7810
15
+ biopipen/ns/cnvkit.py,sha256=mxL-_jgFAAU9SD9gwSUC_CpFd1w3jt-fkbj_ZSZ-iHQ,31130
16
+ biopipen/ns/cnvkit_pipeline.py,sha256=Nlg4VLHV3iGKwFaXtVOyC-j4foI6GOUFbw2SgPs1KvQ,37162
17
+ biopipen/ns/delim.py,sha256=m2pVbncqsQHD8xxoHaTj0AaQRi_1oA_EO8JesLmz35w,6273
18
+ biopipen/ns/gene.py,sha256=rty-Bjcf87v2vyb9X4kRvfrQ6XQYXgN4f2ftFO0nWA8,3888
19
+ biopipen/ns/gsea.py,sha256=eMGj6lljdMds2Pzs3Mcab0lQPU4vtgRTKMhAsKXpxYo,9742
20
+ biopipen/ns/misc.py,sha256=0jDPvpRL3EUIf2ipTjKqLTZgnallLWEjSxzTpS-geTQ,4355
21
+ biopipen/ns/plot.py,sha256=N41_izb6zi-XArUly5WhLebapNXbTNSgGlOCCwtrDlY,18282
22
+ biopipen/ns/protein.py,sha256=YJtlKoHI2p5yHdxKeQnNtm5QrbxDGOq1UXOdt_7tlTs,6391
23
+ biopipen/ns/regulatory.py,sha256=WlnX_R8jEFyxCjk8mru5Qu5iCQJLzjMWiWGoc3gygzc,16221
24
+ biopipen/ns/rnaseq.py,sha256=bKAa6friFWof4yDTWZQahm1MS-lrdetO1GqDKdfxXYc,7708
25
+ biopipen/ns/scrna.py,sha256=-KuTXv9SKDUIre-GxBo4KAyhz2hxnPJJktgYv_nw-sA,168624
26
+ biopipen/ns/scrna_metabolic_landscape.py,sha256=MoJSH4HITXLRCWhXi3h_ONjxpMSmQ684RMtFRJM57YA,22337
27
+ biopipen/ns/snp.py,sha256=iXWrw7Lmhf4_ct57HGT7JGTClCXUD4sZ2FzOgsC2pTg,28123
28
+ biopipen/ns/stats.py,sha256=DlPyK5Vsg6ZEkV9SDS3aAw21eXzvOHgqeZDkXPhg7go,20509
29
+ biopipen/ns/tcgamaf.py,sha256=AFbUJIxiMSvsVY3RcHgjRFuMnNh2DG3Mr5slLNEyz6o,1455
30
+ biopipen/ns/tcr.py,sha256=BBd9I7AK6aWtrTuM_85kui8ekDwsHOqCWyrq6iGP2Lw,109689
31
+ biopipen/ns/vcf.py,sha256=zjOH2qiSJsHACLmBqV-Tew-mn-peZgvYLAWjTLh7uTI,23823
32
+ biopipen/ns/web.py,sha256=4cmxV3LusyQbyjLL0l0wTbNtepaC__5_g5w1GnKY6wo,5749
33
+ biopipen/reports/bam/CNAClinic.svelte,sha256=D4IxQcgDCPQZMbXog-aZP5iJEQTK2N4i0C60e_iXyfs,213
34
+ biopipen/reports/bam/CNVpytor.svelte,sha256=SJdM0j8nUujDDTI13uJjJnpi2vokveK8VOXxyVQq7Yk,1252
35
+ biopipen/reports/bam/ControlFREEC.svelte,sha256=OwN96RW0dN-gtQ1zWKbXYZCYkkrOC0RQmP3UG4x7zqU,837
36
+ biopipen/reports/cellranger/CellRangerCount.svelte,sha256=InkkGold9Vta8vSPeE7WgFuFWuMVBkQvwc2yxWFGVM4,466
37
+ biopipen/reports/cellranger/CellRangerSummary.svelte,sha256=WEYPwmcmgtSqpFpTvNPV40yZR-7ERa5LgZni2RXxUZQ,348
38
+ biopipen/reports/cellranger/CellRangerVdj.svelte,sha256=InkkGold9Vta8vSPeE7WgFuFWuMVBkQvwc2yxWFGVM4,466
39
+ biopipen/reports/cnv/AneuploidyScore.svelte,sha256=x0LbhqjauZpqMzmzDWmYgx-rEh5Tzo8qBrXcLcM0h78,1020
40
+ biopipen/reports/cnv/AneuploidyScoreSummary.svelte,sha256=AWlns70mChJGhH3z8r5uXuI4tc7VbVN_cOUdqBr3ZKg,4414
41
+ biopipen/reports/cnv/TMADScoreSummary.svelte,sha256=tJutaMOqeXxKroAosOIqOJVyhTTFet-soMwuOYVHTYU,2060
42
+ biopipen/reports/cnvkit/CNVkitDiagram.svelte,sha256=qEX5EscFuRqmhrKrF_rwRkxyc4ocakAzo8j2eP0zLN4,455
43
+ biopipen/reports/cnvkit/CNVkitHeatmap.svelte,sha256=AMJcdKmdRLFedvlRYi_thOH-8e9h1ZZvXfFQpwksBSA,507
44
+ biopipen/reports/cnvkit/CNVkitScatter.svelte,sha256=qEX5EscFuRqmhrKrF_rwRkxyc4ocakAzo8j2eP0zLN4,455
45
+ biopipen/reports/common.svelte,sha256=N5bRWGRk37kgBUkwlbcW8i9J_BwRelvS5uN8_pkpIjo,483
46
+ biopipen/reports/gsea/FGSEA.svelte,sha256=3gNbZovmRWK6QjtxfgZgmft6LUurVZfQyHBRqyGMosk,405
47
+ biopipen/reports/gsea/GSEA.svelte,sha256=lYHf8h8RLx3i-jNCEGu_LM-dbYm9ZJDzyAEadsZXzmQ,417
48
+ biopipen/reports/protein/ProdigySummary.svelte,sha256=WEYPwmcmgtSqpFpTvNPV40yZR-7ERa5LgZni2RXxUZQ,348
49
+ biopipen/reports/scrna/CellsDistribution.svelte,sha256=Mg6P0tazpzOxsOAtc-0LGEim5KprPt5KIgoW3TzrxxA,413
50
+ biopipen/reports/scrna/DimPlots.svelte,sha256=ubIx8dgppzSB8WS_B4LN2T3bOTerP4Ck6odx6vUMnQ4,467
51
+ biopipen/reports/scrna/MarkersFinder.svelte,sha256=77rD1psj0VJykPDhfwS-B8mubvaasREAE6RYR2atTN4,444
52
+ biopipen/reports/scrna/MetaMarkers.svelte,sha256=iIFRKjvVYrM1AtDWqq8UfeS8q23R8FKg2yepKAw2KSE,508
53
+ biopipen/reports/scrna/RadarPlots.svelte,sha256=g_fp9d3vdnzk-egXPhkhhfWXOeG569Rj8rYLRIKmlLc,396
54
+ biopipen/reports/scrna_metabolic_landscape/MetabolicFeatures.svelte,sha256=4ruKluhHiKG1_sLnkCddYWIeVGXN6uzL_k2yl3jsS8k,2527
55
+ biopipen/reports/scrna_metabolic_landscape/MetabolicPathwayActivity.svelte,sha256=nA35qYGDGdeFcMLqrP_T5VDpFKIA_p3wrnhiMQXlPLQ,5655
56
+ biopipen/reports/scrna_metabolic_landscape/MetabolicPathwayHeterogeneity.svelte,sha256=hSVrDzVo1vEIh2XQTFL36hBpg_VCObXwKzeaCTZRWUU,3009
57
+ biopipen/reports/snp/PlinkCallRate.svelte,sha256=u0JGUzBS6MJR38TrI7tz08E7uFJToFPeALinu-KLUOg,706
58
+ biopipen/reports/snp/PlinkFreq.svelte,sha256=GCLQXL3OY4b8BDzaLZ3vHVrsv2lNm5657UaSdiimE9w,523
59
+ biopipen/reports/snp/PlinkHWE.svelte,sha256=zlAbn0DLwGBka-X9-MQplpfYkQIanH-QhgQL2GtK0UA,490
60
+ biopipen/reports/snp/PlinkHet.svelte,sha256=xUkzAPjaun8Zz9CwAiEP-sm0jzdOwq3D_EmmQcs7I0U,533
61
+ biopipen/reports/snp/PlinkIBD.svelte,sha256=Uuoe_5X073tttL4Dh_eMoPf-TlaBteR8jP28k9A7lzU,495
62
+ biopipen/reports/tcr/CDR3AAPhyschem.svelte,sha256=Szz3_sM86cBxkEboAVRvtb7_pCbX8A7MYOvzvQ81Rf4,1526
63
+ biopipen/reports/tcr/ClonalStats.svelte,sha256=oLTOWNnwwvVIWTt9v6Sl7gYuPe2X68YwMxr1YA2ywA4,462
64
+ biopipen/reports/tcr/CloneResidency.svelte,sha256=pzjkdGAhB7STxlXkTY5wnTT3plhkAPKMdGa6jwKuwoc,470
65
+ biopipen/reports/tcr/Immunarch.svelte,sha256=jHOGUCWREaDNUf1_s6h9Kx_sp-y_dDRqY1rWrx0o0LM,433
66
+ biopipen/reports/tcr/SampleDiversity.svelte,sha256=GrPUpQ6aJPtyQHoFL9ayG6knpW6yZznqwo0ZVZ2tMl4,5524
67
+ biopipen/reports/tcr/TCRClusterStats.svelte,sha256=YGK5_Vp85QmUJZO1ZGtg1IWBsh9o-z-dSYC8kuW3ssU,415
68
+ biopipen/reports/tcr/TESSA.svelte,sha256=S1tG0HIU5569ybV0shuTz1CN0JcqFrFNB7M6JCiGhm0,1948
69
+ biopipen/reports/tcr/VJUsage.svelte,sha256=c9G2-APGG0l-c6b32aFOimrP_QYD-oELBASN4VabXmk,426
70
+ biopipen/reports/utils/misc.liq,sha256=hj9x4-vqPmVu0ZqoYeHqxanAmHHAlAySZ76YP0vFMEk,2146
71
+ biopipen/reports/vcf/TruvariBenchSummary.svelte,sha256=yew8HRN-YahBzX504Micah5BTnoL_PQzQfN_87TiuOA,577
72
+ biopipen/reports/vcf/TruvariConsistency.svelte,sha256=BBvtxi1EPmGH7j5M5zMOcLEhKWZOlKoXp1lrQGAmz_0,647
73
+ biopipen/scripts/bam/BamMerge.py,sha256=dCjROmURFNQYqkPaZy2FVrz6WFqZrMVJ2GU1WjXmkdI,3662
74
+ biopipen/scripts/bam/BamSampling.py,sha256=OzR3bRak3mqMF_7gHVCmdP9IinBxdUh5Ei8zF74isrw,2337
75
+ biopipen/scripts/bam/BamSort.py,sha256=vCFWR0asRDhFFbWm-nZJPi4lwfwNtsANa9DB4CjzyrY,5112
76
+ biopipen/scripts/bam/BamSplitChroms.py,sha256=TFIiX9NnvcHzRuOIhqNMiRZ5Dc64X6P7WGj1qz5ihlU,4995
77
+ biopipen/scripts/bam/BamSubsetByBed.py,sha256=98M-oynqCTR_4afRASfM6CSN3-JG2kRnl6P5PVR3zdc,1030
78
+ biopipen/scripts/bam/CNAClinic.R,sha256=hpTh-JeIDCYEN56bxJdCqq1yK4ap0_H072kCkxBpDdM,6318
79
+ biopipen/scripts/bam/CNVpytor.py,sha256=zUWkXHlFRzpGiPzY5kMlfEze_AUDB14VgZim_GJvfH0,18096
80
+ biopipen/scripts/bam/ControlFREEC.py,sha256=Leae_r3S1MJQAYxWTiZjw8V3DUGI_4MO4H6Q6OZuZLg,3354
81
+ biopipen/scripts/bam/SamtoolsView.py,sha256=LbZcS3nhDLZPF2kvap24L48k61nPiwTXJ0IILVyf1Fk,967
82
+ biopipen/scripts/bed/Bed2Vcf.py,sha256=CyFzfHSau2ntgPHo4nSaaeRZbaXpbBoW8YmPxxWJQlc,5128
83
+ biopipen/scripts/bed/BedConsensus.py,sha256=dgWEWCBX2cnZhxzJCF3WD8_JqlDAyPIDZlJ0Qiws0VA,2449
84
+ biopipen/scripts/bed/BedLiftOver.sh,sha256=gTIYN_KnNtPxKTjGdk4EYhwQ-kgPN5rO5YVvG6kxB0k,327
85
+ biopipen/scripts/bed/BedtoolsIntersect.py,sha256=lFE2I8fgpjKCqOJM_qH5cs0l7dXv1c3w36eTXzujBj8,1736
86
+ biopipen/scripts/bed/BedtoolsMakeWindows.py,sha256=HRYFwCOU_MzhmnwimhPH5jBnIftEXBdkpK5U9tCJ2Xw,1436
87
+ biopipen/scripts/bed/BedtoolsMerge.py,sha256=d20obKLaJQALDNQ-Jz--OiL8klHGN44octkKx1ysJ04,381
88
+ biopipen/scripts/cellranger/CellRangerCount.py,sha256=F0U76QA9M7DndscpQZhh-_10r7nPgG80J0LXtlskhE0,5079
89
+ biopipen/scripts/cellranger/CellRangerSummary.R,sha256=eLcgU3b2HdK0AaKNz1-B14atptJTsJFpr2W-VYx1C18,10788
90
+ biopipen/scripts/cellranger/CellRangerVdj.py,sha256=A_SiqfOKa5oxvKWLyguw4AW83FjBBO2ZbjUdWMZScc8,4224
91
+ biopipen/scripts/cnv/AneuploidyScore.R,sha256=b8B3uT8drOPxTWMFKU0BgVxtc8xTq8SD00dJWwoHxrE,9287
92
+ biopipen/scripts/cnv/AneuploidyScoreSummary.R,sha256=cj9pEFOry-yKET0H6-_PQsAy1Rgp0KCEPqXq6_V1cgY,12322
93
+ biopipen/scripts/cnv/TMADScore.R,sha256=xQ3qImpbgVafXNP2bbCZQ6dZ6YTKFpcrUbM7su2PKfs,1514
94
+ biopipen/scripts/cnv/TMADScoreSummary.R,sha256=zeusC4yWXS3XBspNuFe6jh_facJfgpjKTK_wjI5wUwI,5165
95
+ biopipen/scripts/cnvkit/CNVkitAccess.py,sha256=QWYPeXx9jaOg8ldKlAAtH6GS4X64FO4ajU1cfOAYS4s,762
96
+ biopipen/scripts/cnvkit/CNVkitAutobin.py,sha256=GdpWg_7NQwENU8Q_I1Mm6hngeyLEGdBEQL6TcFrwwPg,1975
97
+ biopipen/scripts/cnvkit/CNVkitBatch.py,sha256=3P7mcGDaqL4L6gO6oH6NOj46bCCCM6S9AqVYSJ50rF4,3828
98
+ biopipen/scripts/cnvkit/CNVkitCall.py,sha256=YSdOzsatvQHSNQj6C0mZWHAlc2xkQQOns9D67OVyWEQ,3567
99
+ biopipen/scripts/cnvkit/CNVkitCoverage.py,sha256=Vrc-NHh0VB1fnRwrZCZO17bJtFaRBWLNKqT6OCIq3Fg,841
100
+ biopipen/scripts/cnvkit/CNVkitDiagram.py,sha256=-hPLuULays8-Uu0R1ZGgffNpcA64qckq_HeDXpmWkI0,1927
101
+ biopipen/scripts/cnvkit/CNVkitFix.py,sha256=dBgPbRfN--3tVsPXCaD4kMR-MdeAfWVGYhjq3l5cljw,1106
102
+ biopipen/scripts/cnvkit/CNVkitGuessBaits.py,sha256=5s26FbtllpcMCaU2NtVAqlW_XUjcLJMvJJCwJJpPx6s,2371
103
+ biopipen/scripts/cnvkit/CNVkitHeatmap.py,sha256=DduCq7N2kGzv5L4_fWvJ8bhCmhyFIFrw6ZGXdTRarxY,2568
104
+ biopipen/scripts/cnvkit/CNVkitReference.py,sha256=cEnFe0CWBfbNR0Ws8649mAx4xlVldukeV6usz-NXGdc,1480
105
+ biopipen/scripts/cnvkit/CNVkitScatter.py,sha256=jDbYlMMuedih8qhbC65cqrNsNflWXSnHzIcZKEjk_BE,2766
106
+ biopipen/scripts/cnvkit/CNVkitSegment.py,sha256=YIgLo6ka8fBG1Ylb8pmbquwUl5B7SY42YlzZHgmp8y0,1656
107
+ biopipen/scripts/cnvkit/guess_baits.py,sha256=mTy3AmyH5tkC_Mb_5IhQ_c0RssEGaCmoLPEVsW81yrY,10691
108
+ biopipen/scripts/delim/RowsBinder.R,sha256=c-8POj1WZ0Q_LNZitDFb2ldnbqygiZzEerctZuxbzGo,1428
109
+ biopipen/scripts/delim/SampleInfo.R,sha256=ulwinn2WaXQOBt6beNI1_L7HGXWs4m8NHssLCLjlfeo,4679
110
+ biopipen/scripts/gene/GeneNameConversion.R,sha256=wi5MTOzKfvftXDpgl1x_7yFQDnSF4D6pqB-5_ZHL86w,1776
111
+ biopipen/scripts/gene/GenePromoters.R,sha256=0ukq3-wpN6uq_cyJlQvKDVvy0Dv8cI5Htd9t2xpkEyk,2021
112
+ biopipen/scripts/gsea/Enrichr.R,sha256=f63FYTIuzRlsKar5X0c2d-rde47P7B4811P2gNVoZK0,716
113
+ biopipen/scripts/gsea/FGSEA.R,sha256=Nn7pLs9XNIuRZlCp7oo3_bJZ_pYWA1RyH-Y6DWEK48s,6213
114
+ biopipen/scripts/gsea/GSEA.R,sha256=Qo-QUY4B539Hm2FbsS2lsfgAxP_2FrhtPUN1Feq1Jmc,1125
115
+ biopipen/scripts/gsea/PreRank.R,sha256=ITgp3xwKbtTzGgYP2SRdqffGsT4g7SiMtzPpe38pHD0,1386
116
+ biopipen/scripts/misc/Config2File.py,sha256=Lir5dCXDV-_cpOoACaRqi7jMcwzpWCNkA71ZcNr66J4,459
117
+ biopipen/scripts/misc/Plot.R,sha256=RNQ1bFUjq4YNZGKWDM2HNMwKT8Me7DXbjXuqbjpKypA,2441
118
+ biopipen/scripts/misc/Shell.sh,sha256=Rg8_DOfDFeUjZ_1_EVm2lbzyMLqcEv9A3k6SsTcfZZ0,493
119
+ biopipen/scripts/misc/Str2File.py,sha256=QgVStsdTrdQRu7mEdgZHu1y97O8THYGdmByAhfOY-zs,231
120
+ biopipen/scripts/plot/Heatmap.R,sha256=xD_X-0J3kVdKPctTUGeBFXxNgd6N6XbBfBb3giFePJU,2045
121
+ biopipen/scripts/plot/Manhattan.R,sha256=7lJwCX1d0zUpJVhVcmQ35ZtQELzkaDNnBTNHHc3cxW0,4754
122
+ biopipen/scripts/plot/QQPlot.R,sha256=Xil19FJ7jbsxo1yU7dBhhZo2_95Gz6gpTyuv9F0RDNM,4115
123
+ biopipen/scripts/plot/ROC.R,sha256=cjmmYRQycYisqRmlkZE9nbmwfo-04wdJKVmlOsiEFAM,2451
124
+ biopipen/scripts/plot/Scatter.R,sha256=fg4H5rgdr6IePTMAIysiElnZme0vCh1T0wrwH2Q9xkM,2840
125
+ biopipen/scripts/plot/VennDiagram.R,sha256=PzWCCkPiO7wdkr4luv-6uizbAFmxHJcqPtnaHFKpYjo,696
126
+ biopipen/scripts/protein/MMCIF2PDB.py,sha256=jKefr6wQA0abNwhvvqO1uXLKjqt3mBWb5IWxJeDyzs4,1143
127
+ biopipen/scripts/protein/PDB2Fasta.py,sha256=HVsoRRpieobuPwemCz30_N0rJ7T4aGFTQKZryijCbYg,1932
128
+ biopipen/scripts/protein/Prodigy.py,sha256=elA62U7WJ89TGEKobvjjd3Refjzr61S69PiVO0qF6DE,4493
129
+ biopipen/scripts/protein/ProdigySummary.R,sha256=qP30GYFpmxCvcfT2IVbJImGMgOdreKi-m1nyUqH6480,3799
130
+ biopipen/scripts/protein/RMSD.py,sha256=zE0g9QKWqqpC8lhGoQIF54VqDw37FaOUkvk0vtYf4-c,6250
131
+ biopipen/scripts/regulatory/MotifAffinityTest.R,sha256=7kQFV9ExawMkCfLJ-mIsnxbXazL57D1-hVBWcHEPrus,3466
132
+ biopipen/scripts/regulatory/MotifAffinityTest_AtSNP.R,sha256=pFO6SVo_h1lRdNhq-GOX5jD8jF9PlXz0_XnRDpy9RXg,4670
133
+ biopipen/scripts/regulatory/MotifAffinityTest_MotifBreakR.R,sha256=Z-OcUuLPScX5kZvozNGhtawdkbF33ckiuBsSrXRAApk,3853
134
+ biopipen/scripts/regulatory/MotifScan.py,sha256=mxhRWp6NBGEMpWJOpwqIvzkKlrgnRvJApyCU91svh8E,5399
135
+ biopipen/scripts/regulatory/VariantMotifPlot.R,sha256=cHngquU7zVCUhh8zGi40k1o7oeWLfuF78Ycljo_Ql88,2849
136
+ biopipen/scripts/regulatory/motifs-common.R,sha256=ES2UaFE68yULd4mfw7-T0zUcXQtb_uI6IDS-hQsVSvQ,13369
137
+ biopipen/scripts/rnaseq/Simulation-ESCO.R,sha256=cdADB5dpkI5hvzDPw5PyrhOyRFU4PMLgSsa84YOZALc,6424
138
+ biopipen/scripts/rnaseq/Simulation-RUVcorr.R,sha256=oZJHHEMdH7SBIkhCrgkpNYroBkF0dtr20U3ugY9I9hM,1202
139
+ biopipen/scripts/rnaseq/Simulation.R,sha256=LvIjL_onCA8GJR5TPiREUkN_NlMz_ngcw6PezWKc2x0,809
140
+ biopipen/scripts/rnaseq/UnitConversion.R,sha256=xuoj9AdFiCKNztpCmzwCz9VxmUAE-FslZ_LgjOm7dhM,11360
141
+ biopipen/scripts/scrna/AnnData2Seurat.R,sha256=RL1mBEG1fM8FK-SEO-GncgqzcbCJF_1e9pQTAwoOKzw,1161
142
+ biopipen/scripts/scrna/CCPlotR-patch.R,sha256=KpB8fwacBaWaUNjIidcLUkMShLjS4Gq9UY8LUgIITB0,8369
143
+ biopipen/scripts/scrna/CellCellCommunication.py,sha256=80YaNPf3I69Yj3d7xZS3bwBpqIHlymm3NflHfDfhVc4,4616
144
+ biopipen/scripts/scrna/CellCellCommunicationPlots.R,sha256=IcqqhVWasSE54PDWaw85u5_yup_YHVNNwZI7oOy9250,2456
145
+ biopipen/scripts/scrna/CellSNPLite.py,sha256=n6Zvc5iZI6ver5QHxDJ-BpYqeCdafF7rZBvaB2aP534,893
146
+ biopipen/scripts/scrna/CellTypeAnnotation-celltypist.R,sha256=vN3GF5zGkspfNHbevXDZJ-6Y1vjDfy_nZmSqyBRK5U0,6403
147
+ biopipen/scripts/scrna/CellTypeAnnotation-direct.R,sha256=IbLTf5YstWKheUxF-_Be2OM-RsITQrKiDCRJypoIKb0,2869
148
+ biopipen/scripts/scrna/CellTypeAnnotation-hitype.R,sha256=KhkLeyNMS1gK_WsgXwRHUdvgW5JSN-G4mh-7AnL2hMw,1989
149
+ biopipen/scripts/scrna/CellTypeAnnotation-sccatch.R,sha256=pWO-aiHfhj5ZRiOu1tmzeAzYqVlMTf5kfFLcEMJeUNA,1761
150
+ biopipen/scripts/scrna/CellTypeAnnotation-sctype.R,sha256=GSfTSH8fkwa_Dd45u3gpQLfbMStjH_F0re5zwnZUURQ,4527
151
+ biopipen/scripts/scrna/CellTypeAnnotation.R,sha256=iquKkQfjwPvBUqI7An_2qAaNRvTvWOPPbQBi9jrDcvA,1614
152
+ biopipen/scripts/scrna/CellsDistribution.R,sha256=4xmBJ2Fv24HCcOVJgCtEX-mWyFg0PMoB6eS7yqUXlUE,19734
153
+ biopipen/scripts/scrna/DimPlots.R,sha256=oKhygoWQOCck8OlpnOrNJg0CS2q-r8Com1dfjTvQzvU,1575
154
+ biopipen/scripts/scrna/ExprImputation-alra.R,sha256=iAUVwDkejt4oEphpr8tQGWFcyTg1jF-VbWLQvs5Y56c,3122
155
+ biopipen/scripts/scrna/ExprImputation-rmagic.R,sha256=ePgbMZ_3bKbeUrjsMdkdtBM_MSPH2yaGhrmNOGhwxgg,7399
156
+ biopipen/scripts/scrna/ExprImputation-scimpute.R,sha256=MI_bYfvCDKJsuGntUxfx_-NdrssBoQgL95-DGwJVE5s,1191
157
+ biopipen/scripts/scrna/ExprImputation.R,sha256=GcdZJpkDpq88hRQjtLZY5-byp8V43stEFm5T-pQbU6A,319
158
+ biopipen/scripts/scrna/LoomTo10X.R,sha256=c6F0p1udsL5UOlb84-53K5BsjSDWkdFyYTt5NQmlIec,1059
159
+ biopipen/scripts/scrna/MQuad.py,sha256=DyXPDiE36hQPKr9X9_lK_WYabm8b9MiQMN1PMnA2A1U,709
160
+ biopipen/scripts/scrna/MarkersFinder.R,sha256=_FTYEmNihXgH7Y18_d1pCfxpuW6VdQ6hzad5SbuhAQg,29093
161
+ biopipen/scripts/scrna/MetaMarkers.R,sha256=BgYaWYEj6obwqaZaDWqNPtxb1IEEAnXAeBE0Ji9PvBA,12426
162
+ biopipen/scripts/scrna/ModuleScoreCalculator.R,sha256=_mvo35a-wk5miUb_kMIVwvKK0b6InRa1NKtN8zznGwk,4457
163
+ biopipen/scripts/scrna/PseudoBulkDEG.R,sha256=Cc60g4VteEshUbCIfL-gn9axTwWsqwxVDWXl977tp8w,25215
164
+ biopipen/scripts/scrna/RadarPlots.R,sha256=Kn1E-hpczuujpgNjR8MqeIIVN-S3PbpmfcKWGKcNCVY,14546
165
+ biopipen/scripts/scrna/SCImpute.R,sha256=dSJOHhmJ3x_72LBRXT72dbCti5oiB85CJ-OjWtqONbk,2958
166
+ biopipen/scripts/scrna/ScFGSEA.R,sha256=eWfp3n-b9hRoIRboTd7_wjNQbpJl5Q1PNDysYXaw-AY,11431
167
+ biopipen/scripts/scrna/ScSimulation.R,sha256=q0-dXD9px1cApc_TxGmR-OdNHE8W1VSVWfSI57B96bo,1697
168
+ biopipen/scripts/scrna/ScVelo.py,sha256=6pDi-4AQBmSU3koMYZAWBQdKMAAbVECizDBtSQ2NdV8,21771
169
+ biopipen/scripts/scrna/Seurat2AnnData.R,sha256=F8g5n2CqX4-KBggxd8ittz8TejYuqqNLMudAHdFt1QM,184
170
+ biopipen/scripts/scrna/SeuratClusterStats-clustree.R,sha256=D2zLxvlD5p3U74YYxdV4T4B9A6lFMZu5NmNx6naQxJg,3978
171
+ biopipen/scripts/scrna/SeuratClusterStats-dimplots.R,sha256=2YNUxPz1xwND9yrOtBZ75u-wwnmkJUkoUyeBlJvBWKQ,1541
172
+ biopipen/scripts/scrna/SeuratClusterStats-features.R,sha256=8GtL7ysCacCpnt2vrkAfC47k1N-x3jhUSf-ZxOFIf60,7469
173
+ biopipen/scripts/scrna/SeuratClusterStats-ngenes.R,sha256=BN8HSl1HoZp8ibESaCVEJPCBWzmu1AFLMgW5ZeZphS0,3077
174
+ biopipen/scripts/scrna/SeuratClusterStats-stats.R,sha256=xu256GS80jV8kZePn7qFncK58dYSHzaQY3_SDnuxv6E,3598
175
+ biopipen/scripts/scrna/SeuratClusterStats.R,sha256=ITFqh7p1ggtDXzVxbBEO2TcdOw4dA6oGhL5m7hFAQmU,1838
176
+ biopipen/scripts/scrna/SeuratClustering.R,sha256=8w7cdojAlyyZ4oFB_QSLI1W7xPMiPeceM9GacOQk7r8,1110
177
+ biopipen/scripts/scrna/SeuratFilter.R,sha256=BrYK0MLdaTtQvInMaQsmOt7oH_hlks0M1zykkJtg2lM,509
178
+ biopipen/scripts/scrna/SeuratLoading.R,sha256=23KAgsj0-XZhOOdUlLrb3r17St4LzZq230UlfIjLn_E,892
179
+ biopipen/scripts/scrna/SeuratMap2Ref.R,sha256=pQFNHOLvOscLdMheLbRYH0WxoFtIu4ellsux8w_QjZ0,3571
180
+ biopipen/scripts/scrna/SeuratMetadataMutater.R,sha256=22Kh9G3awSOvyeFZk5I8Sgg-fbu4gClAvHf_wJOxWnU,1020
181
+ biopipen/scripts/scrna/SeuratPreparing.R,sha256=w490ofbdhnkJGOPQ75a-tift4dIu9DafGkT7vjpqI-Q,8753
182
+ biopipen/scripts/scrna/SeuratSplit.R,sha256=vdK11V39_Uo_NaOh76QWCtxObGaEr5Ynxqq0hTiSvsU,754
183
+ biopipen/scripts/scrna/SeuratSubClustering.R,sha256=WfxlZdX_HW7_wrYYWWQWboAPyA90g8kA3xNI8Idqnk8,1617
184
+ biopipen/scripts/scrna/SeuratSubset.R,sha256=yVA11NVE2FSSw-DhxQcJRapns0tNNHdyDYi5epO6SKM,1776
185
+ biopipen/scripts/scrna/SeuratTo10X.R,sha256=1mh1R0Qlo1iHVrpMLUXyLDOA92QKJ4GzTMURTFRqsWg,901
186
+ biopipen/scripts/scrna/Slingshot.R,sha256=TmYrVXNYCElZjjMLp4rAFX05NvZl8rmK5YjvsZ_ZZ0Y,1771
187
+ biopipen/scripts/scrna/Subset10X.R,sha256=dT1QY5mHaDcqOMgAtTfyU1FRBNFtfg3nMGCubvBJcSQ,2671
188
+ biopipen/scripts/scrna/TopExpressingGenes.R,sha256=hBgavmTZTRJ_h0cZkxDAWeNYdVk945j-WjUHivUhrg0,6824
189
+ biopipen/scripts/scrna/celltypist-wrapper.py,sha256=JHFmW9NKWU8TZLbVbEH1YgrAjwid7r3St_gYcdNlxls,7793
190
+ biopipen/scripts/scrna/sctype.R,sha256=NaUJkABwF5G1UVm1CCtcMbwLSj94Mo24mbYCKFqo1Bw,6524
191
+ biopipen/scripts/scrna/scvelo_paga.py,sha256=hN7tE9Ay4n64GAo_l_zME2AO8m8o1nFV_iLCibkkoKE,11987
192
+ biopipen/scripts/scrna/seurat_anndata_conversion.py,sha256=LbfJNhbEeQkYQ2gObYyzr5TdCYyGL350_uT97sT-1CM,3022
193
+ biopipen/scripts/scrna_metabolic_landscape/MetabolicFeatures.R,sha256=ybgUpjex2VHS4aqPMJdNMw4pV305PctGXjGmzdVLMgI,17822
194
+ biopipen/scripts/scrna_metabolic_landscape/MetabolicPathwayActivity.R,sha256=fUIibKV-zqqm-ppjUlTY4eq7zNPACmUG8OZ2n48VnBA,19462
195
+ biopipen/scripts/scrna_metabolic_landscape/MetabolicPathwayHeterogeneity.R,sha256=Kd60fZsC1IBQ3hYN4LjofWpJmY-CoXh1veNQvOGAiqs,9127
196
+ biopipen/scripts/snp/MatrixEQTL.R,sha256=Jzb4nYWJJHMsYNbAnyW8rzD4u_EYzFbVxIl80ZHRAbs,7863
197
+ biopipen/scripts/snp/Plink2GTMat.py,sha256=pqFxZgJJ0qcdb3alU8tglsFmBZPNPEXeRWOxrKp790Y,5583
198
+ biopipen/scripts/snp/PlinkCallRate.R,sha256=fKPTwumVnR5xZjJiuwryMaUOl3Vnbb__EinQjobsums,5961
199
+ biopipen/scripts/snp/PlinkFilter.py,sha256=I87x0o3VpTtqCu8y9HY1BLMBdESHfb5G-hSWykDUnvk,3250
200
+ biopipen/scripts/snp/PlinkFreq.R,sha256=wkAy94kSlg7cWC_qqX8L3h7T33rSzF1P2QjAprcuBSM,9821
201
+ biopipen/scripts/snp/PlinkFromVcf.py,sha256=uwXXWVCbdypdE3kcFo5h6c11mmNBttRxdHtycRiqgBo,2401
202
+ biopipen/scripts/snp/PlinkHWE.R,sha256=BCgaGXtAM34S5cQ3uwnuQFN6HaylcqqFbEYOr3NkZwU,1954
203
+ biopipen/scripts/snp/PlinkHet.R,sha256=0KbA4-GwmZuqai3nBuuJV-kLwfXi5CbMwBJ7tIihcPU,2306
204
+ biopipen/scripts/snp/PlinkIBD.R,sha256=9d315Y2fS71uFc1Uar_Nfl3sKVuNP7-1q4U3l3Qh71w,5490
205
+ biopipen/scripts/snp/PlinkSimulation.py,sha256=OMnzp0OZdt7hQQoMbNa9nv-6NzH2x9-YI2FNX5IGaEQ,4193
206
+ biopipen/scripts/snp/PlinkUpdateName.py,sha256=OTiI-oQT-e6f3WZaO98bnddzms2VUzWfMpGPJlg6O-c,4078
207
+ biopipen/scripts/stats/ChowTest.R,sha256=OWsZqyHrI5CflVuvY53eZ-lCfWtcL6hSxKuR-pi7WVQ,4472
208
+ biopipen/scripts/stats/DiffCoexpr.R,sha256=Cu9bgZdA312I20mhgb9IksDgnBd9gLUkH7vkOIZfAtY,4521
209
+ biopipen/scripts/stats/LiquidAssoc.R,sha256=m_M_JIYBHv8l3HBP6a96nLhcxFS0oRE324TFGrcWNrs,3732
210
+ biopipen/scripts/stats/Mediation.R,sha256=bBb3xKBJf0DxrGghzlKEhkWoSHOM_xDfs5SVHGBZgbU,3273
211
+ biopipen/scripts/stats/MetaPvalue.R,sha256=B_DchTGUlxluKhoqn0pH8ysavYQBloIbi_ODYSi04SU,4131
212
+ biopipen/scripts/stats/MetaPvalue1.R,sha256=WxMgiTRcqt3_OOemKWJ-xtOgZkZkjq7OLlznJNmPb7Q,1831
213
+ biopipen/scripts/tcgamaf/Maf2Vcf.py,sha256=2MHraQRO2PuiywFpBTpaQMOT7Fc4GhsHfCAJ79A3Q3w,723
214
+ biopipen/scripts/tcgamaf/MafAddChr.py,sha256=uo1utaK3Df88aU7xubKw85Ni7W06md8bQlwUh9oblew,512
215
+ biopipen/scripts/tcgamaf/maf2vcf.pl,sha256=hJKcH-NbgWK6fmK7f3qex7ozJJl-PqCNPXqpwfcHwJg,22707
216
+ biopipen/scripts/tcr/Attach2Seurat.R,sha256=0KZaBkuPvqOBXq4ZG3pzIIua5HL-161K5dVXRoCysy4,1366
217
+ biopipen/scripts/tcr/CDR3AAPhyschem.R,sha256=vU-5sjFZktSzBBj4f1frIGChOV8P8Uf0mMWS2Njdsww,15204
218
+ biopipen/scripts/tcr/CDR3Clustering.R,sha256=B3ZVxDtf2kk51APiMSNmImKzFldfyq0aojBAxLphUPc,11025
219
+ biopipen/scripts/tcr/ClonalStats.R,sha256=UeCasHqBu6RyK6d_rPMmfhqsvRKQvi6iNMWNgme2D8s,30933
220
+ biopipen/scripts/tcr/CloneResidency.R,sha256=3pong__cdn2bW7pctq4TLcEdcj_xNigzyKnznnmc1i8,22021
221
+ biopipen/scripts/tcr/CloneSizeQQPlot.R,sha256=zw5WPgq_lbfdDb9Ou07boh9D2FYjXZtCQKZCP0PKMYw,4561
222
+ biopipen/scripts/tcr/GIANA/GIANA.py,sha256=jo0d58K57CF4W6mc2Q-hQn9rLl6oLHTsr5JceP8xqN0,54874
223
+ biopipen/scripts/tcr/GIANA/GIANA4.py,sha256=zqECkRfg6lJUaOLTSnocTDrGbUWCYpjXBAwCBBHaouY,53864
224
+ biopipen/scripts/tcr/GIANA/Imgt_Human_TRBV.fasta,sha256=XUwDPXJxVH5O9Q0gCL6EILKXEwVyiAZXm4VS2vkPcnQ,15371
225
+ biopipen/scripts/tcr/GIANA/query.py,sha256=YJeCk24Hab7XfQxZ5VNesdjr_LVxPH0KH9rwGm1ePf4,7680
226
+ biopipen/scripts/tcr/Immunarch-basic.R,sha256=err_gEKyx6OcxhbP2GVSaNV-mNlwHlrzxZJbUp2NiNY,3289
227
+ biopipen/scripts/tcr/Immunarch-clonality.R,sha256=d2C1qzxRcnHE4ROF9DvXCnlKH3aK7tYRNDI-31A7A1o,3939
228
+ biopipen/scripts/tcr/Immunarch-diversity.R,sha256=yhYL6G9M7Pxr3U3kx0ZgTn_WCqj5DiFpq2pY4NQlbW4,27804
229
+ biopipen/scripts/tcr/Immunarch-geneusage.R,sha256=MvBmGYRmQD3uKlYe-cheXNm2pK13Ck-bgwe0HG7D0MA,7496
230
+ biopipen/scripts/tcr/Immunarch-kmer.R,sha256=IBb5-R-N6PW9jqTZEFWYmy_lgcJQLZL-osLi1vGBxEo,6802
231
+ biopipen/scripts/tcr/Immunarch-overlap.R,sha256=EzAHPY1GFHEkEg4FJoBABzWg9fARLRtEf3ZuNb37qXg,8126
232
+ biopipen/scripts/tcr/Immunarch-spectratyping.R,sha256=dR4p8NkJbtaF2JNyKbVrBofItj5ewPfvXR6sXPTKoWs,3172
233
+ biopipen/scripts/tcr/Immunarch-tracking.R,sha256=LnqNRn77LDi1IKH_2CT5-w4-d4lhYqLV1SSVP7X-Wk4,4582
234
+ biopipen/scripts/tcr/Immunarch-vjjunc.R,sha256=HzEwAVZ6yc8mIE5Q5G42SAwj-VKxAIrFICUPv3PQ5GA,5772
235
+ biopipen/scripts/tcr/Immunarch.R,sha256=MvkWbSYeevZAtyjrztWm6Kaw58SZqK_HpPyrL9JYq1k,4804
236
+ biopipen/scripts/tcr/Immunarch2VDJtools.R,sha256=F9y_qABSMy8Dv3T0wy0_wxBJE19q4oq6xSG_sqSkVvs,698
237
+ biopipen/scripts/tcr/ImmunarchFilter.R,sha256=-en-zi0ZB1JjuqhPlaEAN8YvHrELZNJ1V7NhRjB3Ghw,3983
238
+ biopipen/scripts/tcr/ImmunarchLoading.R,sha256=u3o2aag_7cZ17HA8RxpN58wvrII0Uh-q6FY6dA8MWeQ,5756
239
+ biopipen/scripts/tcr/ImmunarchSplitIdents.R,sha256=FGCeGV0uSmFU91lKkldUAeV4A2m3hHw5X4GNi8ffGzI,1873
240
+ biopipen/scripts/tcr/SampleDiversity.R,sha256=oipN4-2nQZe8bYjI0lZ0SvZ7T8GZ_FWkpkobi1cwmWE,2664
241
+ biopipen/scripts/tcr/ScRepCombiningExpression.R,sha256=sYn6BEUB53Z3pF7IAjYpewGYBvVBwzJqoAOPpcAxzQo,1011
242
+ biopipen/scripts/tcr/ScRepLoading.R,sha256=COdY7KotlYemq4LDJT3d08NlzOzRwrDUTrNUdt4P66A,5732
243
+ biopipen/scripts/tcr/TCRClusterStats.R,sha256=ns3S95DVDBuhSe1YgTZ1OksbfBgREO2Tnp1d4QzbTw0,13530
244
+ biopipen/scripts/tcr/TCRDock.py,sha256=Oyw27k6vr0pnJ0w1-lrk5b6sZ_IOf6TmbhSxQae-3Q8,3148
245
+ biopipen/scripts/tcr/TESSA.R,sha256=iXkgQMEP2OlrhdjQ0lHSdH6ehqMXBry__0KVifddWVE,5871
246
+ biopipen/scripts/tcr/TESSA_source/Atchley_factors.csv,sha256=SumqDOqP67P54uM7Cuc5_O_rySTWcGo7eX3psMSPX9s,763
247
+ biopipen/scripts/tcr/TESSA_source/BriseisEncoder.py,sha256=z4_Q_6StymffuUGGjHP1-B3aTsXtamKao5Q1-Kg9has,6831
248
+ biopipen/scripts/tcr/TESSA_source/MCMC_control.R,sha256=93Nnz0IG8KfFnVscZDvmBp1qccZoSoG_jIVpOWBQLHE,2911
249
+ biopipen/scripts/tcr/TESSA_source/TrainedEncoder.h5,sha256=U-z4jcmeDXnJQwgmXoIjeJvCj_R8f5wHsesDKYBaF98,457824
250
+ biopipen/scripts/tcr/TESSA_source/fixed_b.csv,sha256=tJJ2hUt0kJLZOxTH_vo_vd_CSbHa_W_JGa3jcOWrczY,570
251
+ biopipen/scripts/tcr/TESSA_source/initialization.R,sha256=TYPciAvWrrOVByfxdsqouEk8k9vgB45oW1jQFfUGLjM,3900
252
+ biopipen/scripts/tcr/TESSA_source/post_analysis.R,sha256=6RX7gdqd1N7lQVfwJBgjfEZEwi1Q4r15mpAthsLSSJ8,5090
253
+ biopipen/scripts/tcr/TESSA_source/real_data.R,sha256=tg3BbiTpRVQWBRZStnzkC2jI1PCmxUA0fjWK09J6grw,2448
254
+ biopipen/scripts/tcr/TESSA_source/update.R,sha256=kVrf6zgIkhhiQ2O55XGmxm_DGBKSpcShFgkyPNQIet0,6661
255
+ biopipen/scripts/tcr/TESSA_source/utility.R,sha256=6qbkMV7yp4bgQe718QiASQUAgOE2euiLgAXOeSqrvHQ,374
256
+ biopipen/scripts/tcr/VJUsage.R,sha256=2ad9758GRqwVHdxyTd5e80u7vkk8ndGFyL2r5P0aRFE,417
257
+ biopipen/scripts/tcr/immunarch-patched.R,sha256=6OAaV6arDVSI409VHuh1oMCuxlMQp-EaM-kkF-sTlCI,7007
258
+ biopipen/scripts/tcr/vdjtools-patch.sh,sha256=-gJFPVqzzFLdet3q2hccB8gSztRawLV1AnqNp1ZzHOg,568
259
+ biopipen/scripts/vcf/BcftoolsAnnotate.py,sha256=12-VUSP0kl0iyxvahhiu1CDyYJ9nTgGo5RWWVKhkBN8,2615
260
+ biopipen/scripts/vcf/BcftoolsFilter.py,sha256=vh6KjxHdt1JJB7vU39ZH0PqGcdt76VK2EglhoA0WQNM,2598
261
+ biopipen/scripts/vcf/BcftoolsMerge.py,sha256=KpCcEKNtDOEn8n0qSyWpi-lFv1qjnwqJRUlWNrXaqaU,989
262
+ biopipen/scripts/vcf/BcftoolsSort.py,sha256=Gq7d3q7B-YFWw9wE9AO-nL_T5RDckSj-8oCcbsv3yq8,3799
263
+ biopipen/scripts/vcf/BcftoolsView.py,sha256=tFOXskcR3gH576WZNvDcfjBLuzdAztdD1AnxmRTFUA4,2490
264
+ biopipen/scripts/vcf/TruvariBench.sh,sha256=5M7lZhO4laNJvCVCHudf8DYArKNXoiPWuSkXgRi2t_A,908
265
+ biopipen/scripts/vcf/TruvariBenchSummary.R,sha256=1mL32V1WoZ5a_QWx3D9sm_DpRqZjp9bKRqz91I6j2lg,1475
266
+ biopipen/scripts/vcf/TruvariConsistency.R,sha256=6h20v8qztbl1KZInJwoSK_t5XwqhKMTMzPWNPhoAjlM,2314
267
+ biopipen/scripts/vcf/Vcf2Bed.py,sha256=E0Bu7uqKhCPoikD_hM9dgNtzrjgZPQiPPSruULAlz4E,879
268
+ biopipen/scripts/vcf/VcfAnno.py,sha256=cxLVTmJ-U2zlz3dUys2xzdQ6oXaHNOZY6AlHGynyZv4,1003
269
+ biopipen/scripts/vcf/VcfDownSample.sh,sha256=_lI8or4uXqTHbawM2eQ4fxH3EuffaNtU9c3i68_aKAA,1343
270
+ biopipen/scripts/vcf/VcfFilter.py,sha256=KRMfuARccXr2uAXkEB4KKUwhC7AEVOVM-1_THcDugqQ,1952
271
+ biopipen/scripts/vcf/VcfFix.py,sha256=UohgLNRK8PFL5cHP8LqLWl2LjUAo1v5Bvsbr2nzj2L8,1330
272
+ biopipen/scripts/vcf/VcfFix_utils.py,sha256=pQbeTBUWddnegRizdljMaeKJWr-ew0IWE3Oa9lsJKWo,2443
273
+ biopipen/scripts/vcf/VcfIndex.py,sha256=LRjNBiQOoiuQYJvwVIvOSi66urfG0EQl9-nrWMlx2dQ,655
274
+ biopipen/scripts/vcf/VcfIntersect.py,sha256=XmQoehPX6fsfYl7rJu-BGzG6InM11z-RXBUMw32qnPU,751
275
+ biopipen/scripts/vcf/VcfLiftOver.sh,sha256=mZYTcimXKNw1QfekPuHLu15_cQXdHXK4rQmyMas3Usk,705
276
+ biopipen/scripts/vcf/VcfSplitSamples.py,sha256=56VwFdzK2wpQoNRS66siUlJD39QAzg8emdw5AR5hRo8,1558
277
+ biopipen/scripts/vcf/bcftools_utils.py,sha256=LtqchPmnZG4uY9k0llT5NemhK6QPwduGGYc17UJj6uo,1562
278
+ biopipen/scripts/web/Download.py,sha256=sAXBAFWKostwrD5yb2b2QcrsWCIO-D_s8KFwlBdCISg,1061
279
+ biopipen/scripts/web/DownloadList.py,sha256=_LqebncRvk29czkYMyKnJG9oRqRM-GIoRqgiRhkbvfI,1169
280
+ biopipen/scripts/web/GCloudStorageDownloadBucket.py,sha256=EnjEnCL52-X8v8d5tMvhJtJ777bQWKYUk19ISpXVVV0,2696
281
+ biopipen/scripts/web/GCloudStorageDownloadFile.py,sha256=2txA7W0AfnnuyocZtLp20I-RFAF2dCbL8sL7NzKkiyI,839
282
+ biopipen/scripts/web/gcloud_common.py,sha256=rMa42CRw3iJGV1OnG8A2KqLWFp8BocCH2nXRgkNSh1A,1254
283
+ biopipen/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
284
+ biopipen/utils/gene.py,sha256=ToRgAPYc8E72Hm6uYi84ImQaRMPZp5rN7O4CxK7vCag,4477
285
+ biopipen/utils/misc.py,sha256=mxv2bjg3J9vdqw7JDmG26DuA-3ds6mg7T6bmY2vzZI8,7727
286
+ biopipen/utils/reference.py,sha256=Oc6IlA1giLxymAuI7DO-IQLHQ7-DbsWzOQE86oTDfMU,5955
287
+ biopipen/utils/reporter.py,sha256=VwLl6xyVDWnGY7NEXyqBlkW8expKJoNQ5iTyZSELf5c,4922
288
+ biopipen/utils/vcf.py,sha256=MmMbAtLUcKPp02jUdk9TzuET2gWSeoWn7xgoOXFysK0,9393
289
+ biopipen-0.34.26.dist-info/METADATA,sha256=TPW1_7FA3U6GvLyIihc7X1JhfP8FKnR63J9MH4TqpYQ,1123
290
+ biopipen-0.34.26.dist-info/WHEEL,sha256=zp0Cn7JsFoX2ATtOhtaFYIiE2rmFAD4OcMhtUki8W3U,88
291
+ biopipen-0.34.26.dist-info/entry_points.txt,sha256=BYqHGBQJxyFDNLYqgH64ycI5PYwnlqwYcCFsMvJgzAU,653
292
+ biopipen-0.34.26.dist-info/RECORD,,