biopipen 0.28.0__py3-none-any.whl → 0.29.0__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.
Potentially problematic release.
This version of biopipen might be problematic. Click here for more details.
- biopipen/__init__.py +1 -1
- biopipen/core/config.toml +8 -0
- biopipen/ns/bam.py +0 -2
- biopipen/ns/bed.py +35 -0
- biopipen/ns/cellranger_pipeline.py +5 -5
- biopipen/ns/cnv.py +18 -2
- biopipen/ns/cnvkit_pipeline.py +16 -11
- biopipen/ns/gene.py +68 -23
- biopipen/ns/misc.py +2 -15
- biopipen/ns/plot.py +146 -0
- biopipen/ns/regulation.py +214 -0
- biopipen/ns/scrna.py +15 -3
- biopipen/ns/snp.py +516 -8
- biopipen/ns/stats.py +74 -2
- biopipen/ns/vcf.py +196 -0
- biopipen/reports/snp/PlinkCallRate.svelte +24 -0
- biopipen/reports/snp/PlinkFreq.svelte +18 -0
- biopipen/reports/snp/PlinkHWE.svelte +18 -0
- biopipen/reports/snp/PlinkHet.svelte +18 -0
- biopipen/reports/snp/PlinkIBD.svelte +18 -0
- biopipen/scripts/bam/CNVpytor.py +144 -46
- biopipen/scripts/bed/BedtoolsIntersect.py +54 -0
- biopipen/scripts/bed/BedtoolsMerge.py +1 -1
- biopipen/scripts/cnv/AneuploidyScore.R +30 -7
- biopipen/scripts/cnv/AneuploidyScoreSummary.R +5 -2
- biopipen/scripts/cnv/TMADScore.R +21 -5
- biopipen/scripts/cnv/TMADScoreSummary.R +6 -2
- biopipen/scripts/cnvkit/CNVkitAccess.py +2 -1
- biopipen/scripts/cnvkit/CNVkitAutobin.py +3 -2
- biopipen/scripts/cnvkit/CNVkitBatch.py +1 -1
- biopipen/scripts/cnvkit/CNVkitCoverage.py +2 -1
- biopipen/scripts/cnvkit/CNVkitGuessBaits.py +1 -1
- biopipen/scripts/cnvkit/CNVkitHeatmap.py +1 -1
- biopipen/scripts/cnvkit/CNVkitReference.py +2 -1
- biopipen/scripts/gene/GeneNameConversion.R +65 -0
- biopipen/scripts/gene/GenePromoters.R +61 -0
- biopipen/scripts/misc/Shell.sh +15 -0
- biopipen/scripts/plot/Manhattan.R +140 -0
- biopipen/scripts/plot/QQPlot.R +62 -0
- biopipen/scripts/regulation/MotifAffinityTest.R +226 -0
- biopipen/scripts/regulation/MotifAffinityTest_AtSNP.R +126 -0
- biopipen/scripts/regulation/MotifAffinityTest_MotifBreakR.R +96 -0
- biopipen/scripts/regulation/MotifScan.py +159 -0
- biopipen/scripts/regulation/atSNP.R +33 -0
- biopipen/scripts/regulation/motifBreakR.R +1594 -0
- biopipen/scripts/scrna/CellsDistribution.R +2 -0
- biopipen/scripts/scrna/MarkersFinder.R +59 -67
- biopipen/scripts/scrna/SeuratClustering.R +63 -29
- biopipen/scripts/scrna/SeuratMap2Ref.R +20 -0
- biopipen/scripts/scrna/SeuratSubClustering.R +76 -27
- biopipen/scripts/snp/MatrixEQTL.R +84 -43
- biopipen/scripts/snp/Plink2GTMat.py +133 -0
- biopipen/scripts/snp/PlinkCallRate.R +190 -0
- biopipen/scripts/snp/PlinkFilter.py +100 -0
- biopipen/scripts/snp/PlinkFreq.R +298 -0
- biopipen/scripts/snp/PlinkFromVcf.py +78 -0
- biopipen/scripts/snp/PlinkHWE.R +80 -0
- biopipen/scripts/snp/PlinkHet.R +92 -0
- biopipen/scripts/snp/PlinkIBD.R +197 -0
- biopipen/scripts/snp/PlinkUpdateName.py +124 -0
- biopipen/scripts/stats/MetaPvalue.R +2 -1
- biopipen/scripts/stats/MetaPvalue1.R +70 -0
- biopipen/scripts/tcr/TCRClusterStats.R +12 -7
- biopipen/scripts/vcf/BcftoolsAnnotate.py +91 -0
- biopipen/scripts/vcf/BcftoolsFilter.py +90 -0
- biopipen/scripts/vcf/BcftoolsSort.py +113 -0
- biopipen/scripts/vcf/BcftoolsView.py +73 -0
- biopipen/scripts/vcf/VcfFix_utils.py +1 -1
- biopipen/scripts/vcf/bcftools_utils.py +52 -0
- biopipen/utils/gene.R +83 -37
- biopipen/utils/gene.py +108 -60
- biopipen/utils/misc.R +56 -0
- biopipen/utils/misc.py +5 -2
- biopipen/utils/reference.py +54 -10
- {biopipen-0.28.0.dist-info → biopipen-0.29.0.dist-info}/METADATA +2 -2
- {biopipen-0.28.0.dist-info → biopipen-0.29.0.dist-info}/RECORD +78 -50
- {biopipen-0.28.0.dist-info → biopipen-0.29.0.dist-info}/entry_points.txt +1 -1
- biopipen/ns/bcftools.py +0 -111
- biopipen/scripts/bcftools/BcftoolsAnnotate.py +0 -42
- biopipen/scripts/bcftools/BcftoolsFilter.py +0 -79
- biopipen/scripts/bcftools/BcftoolsSort.py +0 -19
- biopipen/scripts/gene/GeneNameConversion.py +0 -66
- {biopipen-0.28.0.dist-info → biopipen-0.29.0.dist-info}/WHEEL +0 -0
biopipen/utils/reference.py
CHANGED
|
@@ -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(
|
|
26
|
+
def tabix_index(
|
|
27
|
+
infile: str | PathLike,
|
|
28
|
+
preset: Literal["gff", "bed", "sam", "vcf", "gaf"],
|
|
29
|
+
tmpdir: bool | 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
|
|
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
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: biopipen
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.29.0
|
|
4
4
|
Summary: Bioinformatics processes/pipelines that can be run from `pipen run`
|
|
5
5
|
License: MIT
|
|
6
6
|
Author: pwwang
|
|
@@ -16,7 +16,7 @@ Provides-Extra: runinfo
|
|
|
16
16
|
Requires-Dist: datar[pandas] (>=0.15.6,<0.16.0)
|
|
17
17
|
Requires-Dist: pipen-board[report] (>=0.15,<0.16)
|
|
18
18
|
Requires-Dist: pipen-cli-run (>=0.13,<0.14)
|
|
19
|
-
Requires-Dist: pipen-filters (>=0.
|
|
19
|
+
Requires-Dist: pipen-filters (>=0.13,<0.14)
|
|
20
20
|
Requires-Dist: pipen-poplog (>=0.1.2,<0.2.0)
|
|
21
21
|
Requires-Dist: pipen-runinfo (>=0.6,<0.7) ; extra == "runinfo"
|
|
22
22
|
Requires-Dist: pipen-verbose (>=0.11,<0.12)
|
|
@@ -1,33 +1,33 @@
|
|
|
1
|
-
biopipen/__init__.py,sha256=
|
|
1
|
+
biopipen/__init__.py,sha256=RvbohpnoJRSLAwJOFoWTtu5c5Vpi5vWAfsKR12hwJVI,23
|
|
2
2
|
biopipen/core/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
3
3
|
biopipen/core/config.py,sha256=edK5xnDhM8j27srDzsxubi934NMrglLoKrdcC8qsEPk,1069
|
|
4
|
-
biopipen/core/config.toml,sha256=
|
|
4
|
+
biopipen/core/config.toml,sha256=IL31RfhuF-6V46lvLs1F-Z4SPmUuTvWzk5PN37Xjrqc,1907
|
|
5
5
|
biopipen/core/defaults.py,sha256=yPeehPLk_OYCf71IgRVCWuQRxLAMixDF81Ium0HtPKI,344
|
|
6
6
|
biopipen/core/filters.py,sha256=-OIzS5F_yNZ0Nk5Ci16BepPWqLOGBmYVqX3W98RSK9Y,12488
|
|
7
7
|
biopipen/core/proc.py,sha256=60lUP3PcUAaKbDETo9N5PEIoeOYrLgcSmuytmrhcx8g,912
|
|
8
8
|
biopipen/core/testing.py,sha256=lZ_R5ZbYPO2NPuLHdbzg6HbD_f4j8paVVbyeUqwg6FE,3411
|
|
9
9
|
biopipen/ns/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
10
|
-
biopipen/ns/bam.py,sha256=
|
|
11
|
-
biopipen/ns/
|
|
12
|
-
biopipen/ns/bed.py,sha256=UN38qUChDeE-ipuSBY8RVLwvJqM2wxSRmlhOiDo4JG0,5395
|
|
10
|
+
biopipen/ns/bam.py,sha256=jLhIztPiKsGfMpDgbcEpsybFskKkquIx9OKyTOc_L7Q,9172
|
|
11
|
+
biopipen/ns/bed.py,sha256=HsTCJge7XNfCZyCBJ4iifNKQ5we4VZSpRx8XL8--y5A,6689
|
|
13
12
|
biopipen/ns/cellranger.py,sha256=yPBoNzVSY74J7uyVucaob5lqZKKru5-hYSM4f4Nr2OY,5553
|
|
14
|
-
biopipen/ns/cellranger_pipeline.py,sha256=
|
|
15
|
-
biopipen/ns/cnv.py,sha256=
|
|
13
|
+
biopipen/ns/cellranger_pipeline.py,sha256=EWkPJTujamNSMQoRnKfhUiIj6TkMfRmCSUbPfd8Tv8E,4011
|
|
14
|
+
biopipen/ns/cnv.py,sha256=ssQAHf2MB675avoXVRkYy0vGiqIpRpRExywjhbymmBI,7811
|
|
16
15
|
biopipen/ns/cnvkit.py,sha256=5mA2Q8-YDs4g1HoxtpB_NWnyZYwEThNr3s3wlubLQrQ,31130
|
|
17
|
-
biopipen/ns/cnvkit_pipeline.py,sha256=
|
|
16
|
+
biopipen/ns/cnvkit_pipeline.py,sha256=DZZljwvwVEI9sRUYBdxkOIT5-CIPLH1tag_OIU86aes,37094
|
|
18
17
|
biopipen/ns/delim.py,sha256=fejsh4KW1TG5oMZzAC238LvQhBz7brXkfl3BHfnLK5M,5612
|
|
19
|
-
biopipen/ns/gene.py,sha256=
|
|
18
|
+
biopipen/ns/gene.py,sha256=rty-Bjcf87v2vyb9X4kRvfrQ6XQYXgN4f2ftFO0nWA8,3888
|
|
20
19
|
biopipen/ns/gsea.py,sha256=EsNRAPYsagaV2KYgr4Jv0KCnZGqayM209v4yOGGTIOI,7423
|
|
21
|
-
biopipen/ns/misc.py,sha256=
|
|
22
|
-
biopipen/ns/plot.py,sha256=
|
|
20
|
+
biopipen/ns/misc.py,sha256=qXcm0RdR6W-xpYGgQn3v7JBeYRWwVm5gtgSj2tdVxx4,2935
|
|
21
|
+
biopipen/ns/plot.py,sha256=PWPJg1Tly465drYxKMbfrFL4waWNrDG0plgYZeEA7Po,11972
|
|
22
|
+
biopipen/ns/regulation.py,sha256=3esve77YuB-vYNoxYZl15GAd3HELX8FauBcrA2X3-mM,11750
|
|
23
23
|
biopipen/ns/rnaseq.py,sha256=bKAa6friFWof4yDTWZQahm1MS-lrdetO1GqDKdfxXYc,7708
|
|
24
|
-
biopipen/ns/scrna.py,sha256=
|
|
24
|
+
biopipen/ns/scrna.py,sha256=XQxdHDZjSt0TWTu-6mshYOmPwPg9a86siaYngBku90s,106954
|
|
25
25
|
biopipen/ns/scrna_metabolic_landscape.py,sha256=6AhaynGG3lNRi96N2tReVT46BJMuEwooSSd2irBoN80,28347
|
|
26
|
-
biopipen/ns/snp.py,sha256
|
|
27
|
-
biopipen/ns/stats.py,sha256=
|
|
26
|
+
biopipen/ns/snp.py,sha256=-Jx5Hsv_7KV7TqLU0nHCaPkMEN0CFdi4tNVlyq0rUZ4,27259
|
|
27
|
+
biopipen/ns/stats.py,sha256=57UF9keLEGxg49R9C2Omx0WIXkPSHvLNxGxO3Xzap2M,16568
|
|
28
28
|
biopipen/ns/tcgamaf.py,sha256=AFbUJIxiMSvsVY3RcHgjRFuMnNh2DG3Mr5slLNEyz6o,1455
|
|
29
29
|
biopipen/ns/tcr.py,sha256=0PCF8iPZ629z6P3RHoAWEpMWmuDslomTGcMopjqvXmE,88304
|
|
30
|
-
biopipen/ns/vcf.py,sha256=
|
|
30
|
+
biopipen/ns/vcf.py,sha256=0aKH_YSLy_-JzV-_VZb0EoScv7JKGrDU7BaeWHjDuRo,22699
|
|
31
31
|
biopipen/ns/web.py,sha256=3zucrDo-IVsSnIvlw-deoScuxqWa6OMTm8Vo-R4E44Q,2224
|
|
32
32
|
biopipen/reports/bam/CNAClinic.svelte,sha256=D4IxQcgDCPQZMbXog-aZP5iJEQTK2N4i0C60e_iXyfs,213
|
|
33
33
|
biopipen/reports/bam/CNVpytor.svelte,sha256=s03SlhbEPd8-_44Dy_cqE8FSErhUdqStLK39te5o7ZE,1364
|
|
@@ -58,6 +58,11 @@ biopipen/reports/scrna_metabolic_landscape/MetabolicFeatures.svelte,sha256=4M8V6
|
|
|
58
58
|
biopipen/reports/scrna_metabolic_landscape/MetabolicFeaturesIntraSubset.svelte,sha256=7FohWYR2BEqo77W4FuGsuwEEvG7j_Mc2ohXG8TSgODg,907
|
|
59
59
|
biopipen/reports/scrna_metabolic_landscape/MetabolicPathwayActivity.svelte,sha256=bbPWDEXTi-A377Vo2VaEyh_VoxGmFj-P3WX8g_y_-9k,3416
|
|
60
60
|
biopipen/reports/scrna_metabolic_landscape/MetabolicPathwayHeterogeneity.svelte,sha256=TohFc1IsHFAio8WNu_1FoaJucxsW3OtmS7fIJOH5KHc,350
|
|
61
|
+
biopipen/reports/snp/PlinkCallRate.svelte,sha256=QoHqzJ88sx8d8FfH4ToFcR690RX0jmi2SaeWVAnw8y0,730
|
|
62
|
+
biopipen/reports/snp/PlinkFreq.svelte,sha256=gHN1SezJ5l732Ndtrl_xZABdWPoSvAWkRh1rKbcsD1c,535
|
|
63
|
+
biopipen/reports/snp/PlinkHWE.svelte,sha256=nes-NTwatoxvLoRBCg6jPp0fSg5kZZkVngURpfmM_nc,502
|
|
64
|
+
biopipen/reports/snp/PlinkHet.svelte,sha256=hlSGx3qVETvZg6cd6vf27EtGeRzwD86I01kMLyIHEC4,545
|
|
65
|
+
biopipen/reports/snp/PlinkIBD.svelte,sha256=s7nepF52Q4hKhRnIZDTFXqG7SIvhGy0NtfnTpexG0mE,507
|
|
61
66
|
biopipen/reports/tcr/CDR3AAPhyschem.svelte,sha256=_r1pi_yTu_KjC02aegZ52IEQY8Mq0p3nqW_o9wOFWf8,1530
|
|
62
67
|
biopipen/reports/tcr/CloneResidency.svelte,sha256=pzjkdGAhB7STxlXkTY5wnTT3plhkAPKMdGa6jwKuwoc,470
|
|
63
68
|
biopipen/reports/tcr/Immunarch.svelte,sha256=jHOGUCWREaDNUf1_s6h9Kx_sp-y_dDRqY1rWrx0o0LM,433
|
|
@@ -72,47 +77,55 @@ biopipen/reports/vcf/TruvariConsistency.svelte,sha256=BBvtxi1EPmGH7j5M5zMOcLEhKW
|
|
|
72
77
|
biopipen/scripts/bam/BamMerge.py,sha256=jyaJI0-TulAxaCzvrYjC8PujH_ECNInevnPbh2_XQtU,3477
|
|
73
78
|
biopipen/scripts/bam/BamSplitChroms.py,sha256=b7GS2I4X0dLOhlPg_r9-buoIHTWlq6zHI3Rox94LXR8,4893
|
|
74
79
|
biopipen/scripts/bam/CNAClinic.R,sha256=EbQ1s1_y2uCERTP1aP0Fwu_dO4n8k1YSMBswwVs0uDQ,5040
|
|
75
|
-
biopipen/scripts/bam/CNVpytor.py,sha256=
|
|
80
|
+
biopipen/scripts/bam/CNVpytor.py,sha256=hOUli9BDMOoth0or-tjUYC1AP3yNOuxUS6G3Rhcg99s,18000
|
|
76
81
|
biopipen/scripts/bam/ControlFREEC.py,sha256=oX6iWsos-CfiT_ViDBrKeMOOIVdCKWrB-_MqzLgEF9s,3267
|
|
77
|
-
biopipen/scripts/bcftools/BcftoolsAnnotate.py,sha256=0OIiP9bfR81vU1fbVgRPh8j860AEUPJ4yWFQvuZNiuI,1339
|
|
78
|
-
biopipen/scripts/bcftools/BcftoolsFilter.py,sha256=P7OV9fwMSfFgD7ZtLWrU1-T2Oph94ACqtBMGi-SYrOk,2278
|
|
79
|
-
biopipen/scripts/bcftools/BcftoolsSort.py,sha256=0xXIUf1Po8QHe8XTC5SyU_6kmLopRgp8Z87NXwWl8Mc,639
|
|
80
82
|
biopipen/scripts/bed/Bed2Vcf.py,sha256=u0mp_2Y4UtEA839zq9UENesH6Gyiwd4sZQW9wFnBVU0,5090
|
|
81
83
|
biopipen/scripts/bed/BedConsensus.py,sha256=gfAxuIalvCEpS0tiOyAJGPYGgHN0L-hm0K37Iteh5yw,2386
|
|
82
84
|
biopipen/scripts/bed/BedLiftOver.sh,sha256=Y4gBsz9w4zhE29UmWojO6F4PXMMMWC1uCzjrxa19eOs,256
|
|
83
|
-
biopipen/scripts/bed/
|
|
85
|
+
biopipen/scripts/bed/BedtoolsIntersect.py,sha256=sFyXPL3kG59xa5eJwHumcQLw3lfabOXsq2-k8IgIqt4,1722
|
|
86
|
+
biopipen/scripts/bed/BedtoolsMerge.py,sha256=7mt307V_wWa_ME0VfuMsVX0HgEwfDcZtY_bDvOPjFiQ,368
|
|
84
87
|
biopipen/scripts/cellranger/CellRangerCount.py,sha256=Mi6PiufFPp-cb4WRgZhniXi2ja5VUusRDW9RdAqFyX0,2831
|
|
85
88
|
biopipen/scripts/cellranger/CellRangerSummary.R,sha256=8EqP4j074RLi5Adw47xyqQwkDEcvSS6Yfk0UgKKYOuo,11045
|
|
86
89
|
biopipen/scripts/cellranger/CellRangerVdj.py,sha256=ipGkPzkiVy5IpPrYKUK4zgEIvz-aMJOKbMEN-bMStFE,2200
|
|
87
|
-
biopipen/scripts/cnv/AneuploidyScore.R,sha256=
|
|
88
|
-
biopipen/scripts/cnv/AneuploidyScoreSummary.R,sha256=
|
|
89
|
-
biopipen/scripts/cnv/TMADScore.R,sha256=
|
|
90
|
-
biopipen/scripts/cnv/TMADScoreSummary.R,sha256=
|
|
91
|
-
biopipen/scripts/cnvkit/CNVkitAccess.py,sha256=
|
|
92
|
-
biopipen/scripts/cnvkit/CNVkitAutobin.py,sha256=
|
|
93
|
-
biopipen/scripts/cnvkit/CNVkitBatch.py,sha256=
|
|
90
|
+
biopipen/scripts/cnv/AneuploidyScore.R,sha256=OldqRUr4rn8AZZCLDaX5xCIR1e0R7XXb_RQ2hXDHHog,9142
|
|
91
|
+
biopipen/scripts/cnv/AneuploidyScoreSummary.R,sha256=fhffzQ5tW13KSgGz9CNDmvgqxUR1NDVVrsW_5xl1968,12410
|
|
92
|
+
biopipen/scripts/cnv/TMADScore.R,sha256=IH07REfBO3QB2QNWuwGY6LgAUAOE0lsfP6W0bS67zGs,1530
|
|
93
|
+
biopipen/scripts/cnv/TMADScoreSummary.R,sha256=w58LD5xHnLal9jv53nBUGpQ8eTkAyEk1leCVN2T_ZaM,7109
|
|
94
|
+
biopipen/scripts/cnvkit/CNVkitAccess.py,sha256=UerX66utY8UdlI1mlSVD7E9O0ByLnHzt6G3Urb8mCWE,689
|
|
95
|
+
biopipen/scripts/cnvkit/CNVkitAutobin.py,sha256=H5YcQ8f7Vs01Wad_oEQ9_AKBo5bKW856hAxShD75oDA,1656
|
|
96
|
+
biopipen/scripts/cnvkit/CNVkitBatch.py,sha256=uzb300XLPRzV1BOOug6dAmupZ5FtQamFoYslVmbdTCA,3794
|
|
94
97
|
biopipen/scripts/cnvkit/CNVkitCall.py,sha256=NyOnMjwT4w-ID9YtNks6fp6BIG7OzkGHmYphcXzAy_M,3544
|
|
95
|
-
biopipen/scripts/cnvkit/CNVkitCoverage.py,sha256=
|
|
98
|
+
biopipen/scripts/cnvkit/CNVkitCoverage.py,sha256=hTXh77QmMWy12Ipphdabkai19D0ZfKd7XF5Soc-HSG8,823
|
|
96
99
|
biopipen/scripts/cnvkit/CNVkitDiagram.py,sha256=tvHW6wAZ9YXKb6sbdvWEO_HPjLK4LOYxrcnPkV8iUoA,1889
|
|
97
100
|
biopipen/scripts/cnvkit/CNVkitFix.py,sha256=nZ7_15ba4zgTRpyQfyGAdcx1kCWyNTyjfEkKYxQumJA,1087
|
|
98
|
-
biopipen/scripts/cnvkit/CNVkitGuessBaits.py,sha256=
|
|
99
|
-
biopipen/scripts/cnvkit/CNVkitHeatmap.py,sha256=
|
|
100
|
-
biopipen/scripts/cnvkit/CNVkitReference.py,sha256=
|
|
101
|
+
biopipen/scripts/cnvkit/CNVkitGuessBaits.py,sha256=lrNNa3-jH87WCmdVv8lRmS894xT_zNjFjWXmi1oSG4U,2216
|
|
102
|
+
biopipen/scripts/cnvkit/CNVkitHeatmap.py,sha256=gtLSI2ipnB9amEM_hJtl73iM-0jGG_fvn1uPMIlFa-o,2485
|
|
103
|
+
biopipen/scripts/cnvkit/CNVkitReference.py,sha256=dO5vzqlgfecYUNJ3I2TvBdL_zKEJyKl3mRcL14GLDGU,1402
|
|
101
104
|
biopipen/scripts/cnvkit/CNVkitScatter.py,sha256=7DhTiXPHEHbdXn0VFcDOR-wTP6sks08N94KG7zjo_Is,2728
|
|
102
105
|
biopipen/scripts/cnvkit/CNVkitSegment.py,sha256=q5iGAjY6-yIehPcJpi3hX6EuGre0YgWTPkG_d5LEV48,1629
|
|
103
106
|
biopipen/scripts/cnvkit/guess_baits.py,sha256=7OCMtSMHIJWWZv9qEYVXnB0N4hU_JaGEesKdkr6tvJc,10586
|
|
104
107
|
biopipen/scripts/delim/RowsBinder.R,sha256=yp960u7Ui_jFCL8WDvODa-0vhJvyLo64ll35PzXYUbI,1444
|
|
105
108
|
biopipen/scripts/delim/SampleInfo.R,sha256=1EYlqoVpIEl9l2eBaCLETuI_Ma3HjihS9tRbGmOPiBk,6397
|
|
106
|
-
biopipen/scripts/gene/GeneNameConversion.
|
|
109
|
+
biopipen/scripts/gene/GeneNameConversion.R,sha256=uAnueB1poicYpQHjUnl4ZBFn3sAWzP9HzmBC7zjlehI,1776
|
|
110
|
+
biopipen/scripts/gene/GenePromoters.R,sha256=0ukq3-wpN6uq_cyJlQvKDVvy0Dv8cI5Htd9t2xpkEyk,2021
|
|
107
111
|
biopipen/scripts/gsea/Enrichr.R,sha256=tr4vInlVIeiGXumh22ARuTQmy0-Qq869RiX7d7ERqCg,661
|
|
108
112
|
biopipen/scripts/gsea/FGSEA.R,sha256=RLqDgrqnYEacHfzEEuZ3d29lxNqWehigOnGuu248SRg,1483
|
|
109
113
|
biopipen/scripts/gsea/GSEA.R,sha256=gkiigYQ9xNdqZWMus0h0htSdWWbLJt9uXPo8Bc4hOaI,1083
|
|
110
114
|
biopipen/scripts/gsea/PreRank.R,sha256=onZK1FQa6yDO0Fz4juy56XQjpzyw3zBdZv7edY9acNI,1356
|
|
111
115
|
biopipen/scripts/misc/Config2File.py,sha256=NUio0uOEuZtUBpuByDSItYu9Kwu5mosb4pdPq5-QAmE,440
|
|
116
|
+
biopipen/scripts/misc/Shell.sh,sha256=Rg8_DOfDFeUjZ_1_EVm2lbzyMLqcEv9A3k6SsTcfZZ0,493
|
|
112
117
|
biopipen/scripts/misc/Str2File.py,sha256=99oQNxChxChNJ9vmD77b48cu-r_P_heSpx7A5wi3qTE,212
|
|
113
118
|
biopipen/scripts/plot/Heatmap.R,sha256=4v_oRME8ZiwczIlBIp-OP_YPWLAvBKzbHiwNBCZ0Xog,1982
|
|
119
|
+
biopipen/scripts/plot/Manhattan.R,sha256=14qWI4l4AgaEys59dI6nigZacQL_QAV9Hm4TVy_rlNY,4529
|
|
120
|
+
biopipen/scripts/plot/QQPlot.R,sha256=qIvMzy3y1JIwsZDr-IlUxO4AexyakqYaMBNohIUv0i4,1678
|
|
114
121
|
biopipen/scripts/plot/ROC.R,sha256=Cr-mHQx6c748fQYkOWO2xIKWwiVAUxGuxn6lYEhNH78,2430
|
|
115
122
|
biopipen/scripts/plot/VennDiagram.R,sha256=GVc-kyHqnXrbXZvy-evcxI1XGtlLSChBiVnMjPywNMA,731
|
|
123
|
+
biopipen/scripts/regulation/MotifAffinityTest.R,sha256=DcetElFSlurIRuOw1YLPvoOPDCnfq-EpgV-e1aKX_nM,8969
|
|
124
|
+
biopipen/scripts/regulation/MotifAffinityTest_AtSNP.R,sha256=SAyTm2-6g5qVJFRrLxEY0QJrLWTkwDi_J_9J7HhtTN8,4438
|
|
125
|
+
biopipen/scripts/regulation/MotifAffinityTest_MotifBreakR.R,sha256=wCK4tLx1iWh_OwW7ZvLTCjTGWCIfVqw-lYC0-JqIPqg,3338
|
|
126
|
+
biopipen/scripts/regulation/MotifScan.py,sha256=nxwfDV3sXWk62x0WFpzxEZuUjJSErZvYkB2KJP7uAnc,5336
|
|
127
|
+
biopipen/scripts/regulation/atSNP.R,sha256=TXJARbE0rDIzSq6Spacz_HsM_DXdREJ95ZsBg26trgw,1288
|
|
128
|
+
biopipen/scripts/regulation/motifBreakR.R,sha256=trzvvTvwc5gSO427wkqx93FecuQxLGa9kNqodKa8S0U,70236
|
|
116
129
|
biopipen/scripts/rnaseq/Simulation-ESCO.R,sha256=68cEHDdJclX8P8Q7ey9yBOfK09M_kxlL6zgYXsEL2Rs,6378
|
|
117
130
|
biopipen/scripts/rnaseq/Simulation-RUVcorr.R,sha256=6C6Ke5RLF0fC2V9WQPoFEdqoDabCnhslZBIyB6zhIxc,1155
|
|
118
131
|
biopipen/scripts/rnaseq/Simulation.R,sha256=PNEDUwEEOMGwgNyx5VPDAbzSLS74gqAxKenv5Uw_8zo,850
|
|
@@ -124,13 +137,13 @@ biopipen/scripts/scrna/CellTypeAnnotation-hitype.R,sha256=6_DBAlLKcHqaMyWGZWvTd4
|
|
|
124
137
|
biopipen/scripts/scrna/CellTypeAnnotation-sccatch.R,sha256=HO1ta0VWdBY1SuUNDqeb_Rp3UrbcqJgGpglegvMUGpw,1435
|
|
125
138
|
biopipen/scripts/scrna/CellTypeAnnotation-sctype.R,sha256=1nKRtzhVoJ9y0yMg1sgI6u7czsrk2cN0FvNUCZo8l-o,3878
|
|
126
139
|
biopipen/scripts/scrna/CellTypeAnnotation.R,sha256=OwLM_G4D7TG4HhIJjQxgIQM92X86lsWp9MVyXTTkLSc,618
|
|
127
|
-
biopipen/scripts/scrna/CellsDistribution.R,sha256=
|
|
140
|
+
biopipen/scripts/scrna/CellsDistribution.R,sha256=lCobUWmNv97PF0HwwRbn9CGAJ1HGRuzlJe6CvlUijf0,18915
|
|
128
141
|
biopipen/scripts/scrna/DimPlots.R,sha256=-mXOTMnpPxvR30XLjwcohFfFx7xTqWKKiICwJiD6yEo,1554
|
|
129
142
|
biopipen/scripts/scrna/ExprImputation-alra.R,sha256=w3W1txJcdWg52-SETY2Z0lO7maDNfiMjBYIGN587YW0,843
|
|
130
143
|
biopipen/scripts/scrna/ExprImputation-rmagic.R,sha256=jYIfqZpnvjKJkvItLnemPVtUApHBYQi1_L8rHVbEe1M,735
|
|
131
144
|
biopipen/scripts/scrna/ExprImputation-scimpute.R,sha256=mg40qCUW7-nP5oHPvARq7dmtoahM0GRFWXQpum0BXVk,1082
|
|
132
145
|
biopipen/scripts/scrna/ExprImputation.R,sha256=GcdZJpkDpq88hRQjtLZY5-byp8V43stEFm5T-pQbU6A,319
|
|
133
|
-
biopipen/scripts/scrna/MarkersFinder.R,sha256
|
|
146
|
+
biopipen/scripts/scrna/MarkersFinder.R,sha256=-rQyu0uXJscQbRUH6XDPxIFawOwqDxch75yyG1ArMaU,22670
|
|
134
147
|
biopipen/scripts/scrna/MetaMarkers.R,sha256=9ve1X0TrDzS_ZEW6HtU3n8R-uPx7q-hYMMNFVDSE8wQ,11272
|
|
135
148
|
biopipen/scripts/scrna/ModuleScoreCalculator.R,sha256=JSHd-_-KiFqW8avCGxgU4T-C5BtDr2u0kwIvEu2lFIg,4188
|
|
136
149
|
biopipen/scripts/scrna/RadarPlots.R,sha256=TGPUTUcHOHgd9rsNtLYT-N6WHiFNDBZsiIoqkyAJh0A,13020
|
|
@@ -143,14 +156,14 @@ biopipen/scripts/scrna/SeuratClusterStats-hists.R,sha256=YhuD-GePjJPSkR0iLRgV_hi
|
|
|
143
156
|
biopipen/scripts/scrna/SeuratClusterStats-ngenes.R,sha256=GVKIXFNS_syCuSN8oxoBkjxxAeI5LdSxh-qLVkUsbDA,2146
|
|
144
157
|
biopipen/scripts/scrna/SeuratClusterStats-stats.R,sha256=bBbvNCvV6dZLg9zvhh2nR48_53md5A5UEqrPXD00MZU,9263
|
|
145
158
|
biopipen/scripts/scrna/SeuratClusterStats.R,sha256=ouWoj7Q644uG3MUlT23AES8f74g38-jPtPhINSvoUas,1267
|
|
146
|
-
biopipen/scripts/scrna/SeuratClustering.R,sha256=
|
|
159
|
+
biopipen/scripts/scrna/SeuratClustering.R,sha256=xumBiqNnXcOn50tRmcqev9EBRUvf-ck9rEpAWeDXToE,7530
|
|
147
160
|
biopipen/scripts/scrna/SeuratFilter.R,sha256=BrYK0MLdaTtQvInMaQsmOt7oH_hlks0M1zykkJtg2lM,509
|
|
148
161
|
biopipen/scripts/scrna/SeuratLoading.R,sha256=ekWKnHIqtQb3kHVQiVymAHXXqiUxs6KKefjZKjaykmk,900
|
|
149
|
-
biopipen/scripts/scrna/SeuratMap2Ref.R,sha256=
|
|
162
|
+
biopipen/scripts/scrna/SeuratMap2Ref.R,sha256=qnFkOCudqC-j5uAszBssWM9Xg_vO3H9_Hj0n5wdOmBc,9757
|
|
150
163
|
biopipen/scripts/scrna/SeuratMetadataMutater.R,sha256=Pp4GsF3hZ6ZC2vroC3LSBmVa4B1p2L3hbh981yaAIeQ,1093
|
|
151
164
|
biopipen/scripts/scrna/SeuratPreparing.R,sha256=t6GOcc9ZNwpRLeES7uBWja9RF6u6k5I_TXcdK4Ve7d0,18683
|
|
152
165
|
biopipen/scripts/scrna/SeuratSplit.R,sha256=vdK11V39_Uo_NaOh76QWCtxObGaEr5Ynxqq0hTiSvsU,754
|
|
153
|
-
biopipen/scripts/scrna/SeuratSubClustering.R,sha256=
|
|
166
|
+
biopipen/scripts/scrna/SeuratSubClustering.R,sha256=ooEQhUneYvSiRcwlqC9Mc8WE0g5pLEtKtQWYrKN3cck,8001
|
|
154
167
|
biopipen/scripts/scrna/SeuratSubset.R,sha256=yVA11NVE2FSSw-DhxQcJRapns0tNNHdyDYi5epO6SKM,1776
|
|
155
168
|
biopipen/scripts/scrna/SeuratTo10X.R,sha256=1mh1R0Qlo1iHVrpMLUXyLDOA92QKJ4GzTMURTFRqsWg,901
|
|
156
169
|
biopipen/scripts/scrna/Subset10X.R,sha256=T2nJBTwOe12AIKC2FZsMSv6xx3s-67CYZokpz5wshqY,2679
|
|
@@ -161,12 +174,22 @@ biopipen/scripts/scrna_metabolic_landscape/MetabolicFeatures.R,sha256=sOnHSH0Ld-
|
|
|
161
174
|
biopipen/scripts/scrna_metabolic_landscape/MetabolicFeaturesIntraSubset.R,sha256=RPSxEHWk50Fyw5YPBVVGeWwd55Hi0zjbipLuM5O4tjs,5465
|
|
162
175
|
biopipen/scripts/scrna_metabolic_landscape/MetabolicPathwayActivity.R,sha256=95DLX1Rz0tobOuDZ8V9YdGgO0KiNthhccoeeOK21tno,16216
|
|
163
176
|
biopipen/scripts/scrna_metabolic_landscape/MetabolicPathwayHeterogeneity.R,sha256=rQ9iwGh9FNRZlJJzM4QItdyXmebfzLAq05ZAjb1kGUw,9831
|
|
164
|
-
biopipen/scripts/snp/MatrixEQTL.R,sha256=
|
|
177
|
+
biopipen/scripts/snp/MatrixEQTL.R,sha256=Wr1m4RLcxisJgy5_7Tp_SoOoDZIBfRjHuUVnYLBWtAo,7186
|
|
178
|
+
biopipen/scripts/snp/Plink2GTMat.py,sha256=ypxuT6YEBuuSk9TML9SHhVtA38GlZvB-3tQakJd8YLQ,5052
|
|
179
|
+
biopipen/scripts/snp/PlinkCallRate.R,sha256=lkx93TyZjnvOWuq7W5zvdIlYmTC4n4ys52VymA7PvPM,6160
|
|
180
|
+
biopipen/scripts/snp/PlinkFilter.py,sha256=eqC18ne3rPUzIJ_KjqvwQ79MyeMxe0oh4S9PnhfhK1E,3200
|
|
181
|
+
biopipen/scripts/snp/PlinkFreq.R,sha256=Y8R-jE4upWe6B4yf7G9BCjEyv6HXItHOaUQzVInXL-8,10605
|
|
182
|
+
biopipen/scripts/snp/PlinkFromVcf.py,sha256=TZaJ117Qp-gbqPX7WK6r7Zw8XHVXbRO6wb0V1NQouxw,2284
|
|
183
|
+
biopipen/scripts/snp/PlinkHWE.R,sha256=Ncs4ctTDCnfGxs5HbyNxsNuq3Cn_Dwo1iFKdbj6GJSc,2201
|
|
184
|
+
biopipen/scripts/snp/PlinkHet.R,sha256=r35hzA3A5lrqJN1kWxd2bYucTZd1eNd_vDjqhprur34,3005
|
|
185
|
+
biopipen/scripts/snp/PlinkIBD.R,sha256=DJjmcwWYso8pY6HTKXLEIWsTurctknQxOQScG_ikBck,5640
|
|
165
186
|
biopipen/scripts/snp/PlinkSimulation.py,sha256=mSSoGGG6sbEPBcUGdHgbebUrg4DiHeyNyc7jLPjV5pY,4169
|
|
187
|
+
biopipen/scripts/snp/PlinkUpdateName.py,sha256=sYyb0ek46wRQfclFfoJEhQyQ-zWsFd2xpFHKw3jbsq4,4055
|
|
166
188
|
biopipen/scripts/stats/ChowTest.R,sha256=4p7NULmfOZSfeBSQ04els0h3cXOK5yeCJJ4-gEBPOGk,3617
|
|
167
189
|
biopipen/scripts/stats/DiffCoexpr.R,sha256=5hQDV2_7bKdKUsOGMZUa0GS5rc7kFspxonNyFEPmtbc,4516
|
|
168
190
|
biopipen/scripts/stats/LiquidAssoc.R,sha256=s-XJbFoOfH4eWSkxbbOSHZ1x16lY0Sdod_V1KvSkM8k,3727
|
|
169
|
-
biopipen/scripts/stats/MetaPvalue.R,sha256=
|
|
191
|
+
biopipen/scripts/stats/MetaPvalue.R,sha256=fnqayZeHd61cP9PxZZAebg5lE7JQgFG5MElCct43S1M,4012
|
|
192
|
+
biopipen/scripts/stats/MetaPvalue1.R,sha256=falhaOeoa8E7ZbddXfGsSdim5P7eQvA7RFGD7XSrBUk,1733
|
|
170
193
|
biopipen/scripts/tcgamaf/Maf2Vcf.py,sha256=Cxh7fiSNCxWDTfIJqZDOOnaSrw-85S_fH2U-PWY03hc,704
|
|
171
194
|
biopipen/scripts/tcgamaf/MafAddChr.py,sha256=V10HMisl12O3ZfXuRmFNdy5p-3mr43WCvy0GHxSpwfA,494
|
|
172
195
|
biopipen/scripts/tcgamaf/maf2vcf.pl,sha256=hJKcH-NbgWK6fmK7f3qex7ozJJl-PqCNPXqpwfcHwJg,22707
|
|
@@ -193,7 +216,7 @@ biopipen/scripts/tcr/ImmunarchFilter.R,sha256=o25O36FwH_0w6F8DFQ0SfpcwDzlzaGefXq
|
|
|
193
216
|
biopipen/scripts/tcr/ImmunarchLoading.R,sha256=l_l-gojiCKI_MWgIUe2zG5boVtNipBv4rACRJEcrnFE,5734
|
|
194
217
|
biopipen/scripts/tcr/ImmunarchSplitIdents.R,sha256=FGCeGV0uSmFU91lKkldUAeV4A2m3hHw5X4GNi8ffGzI,1873
|
|
195
218
|
biopipen/scripts/tcr/SampleDiversity.R,sha256=jQ1OU3b8vswD8tZhLt3fkcqJKrl2bhQX0giHM2rXz3Y,2643
|
|
196
|
-
biopipen/scripts/tcr/TCRClusterStats.R,sha256=
|
|
219
|
+
biopipen/scripts/tcr/TCRClusterStats.R,sha256=40e_XhrpyKkDv6yUTnU0wUnQiFdiHpk30Hr0pri3uuM,12864
|
|
197
220
|
biopipen/scripts/tcr/TCRClustering.R,sha256=eflUsYfq4aEaX9BVL0MiB7lNlot_L-8VaReK516go84,9236
|
|
198
221
|
biopipen/scripts/tcr/TCRDock.py,sha256=jjzxMWp-hs0LDtA1mVbiWDvUieSO7X-F9yeKGy1LSTM,3026
|
|
199
222
|
biopipen/scripts/tcr/TESSA.R,sha256=bfOixWLZy8yi0MzXncP67KjtCukwXEzsK5fCdMzB5VM,6822
|
|
@@ -210,6 +233,10 @@ biopipen/scripts/tcr/TESSA_source/utility.R,sha256=6qbkMV7yp4bgQe718QiASQUAgOE2e
|
|
|
210
233
|
biopipen/scripts/tcr/VJUsage.R,sha256=LjHEbAHW3WriCYiM9-T6Esd4jc6pnoiSxBKTN_YA490,437
|
|
211
234
|
biopipen/scripts/tcr/immunarch-patched.R,sha256=6OAaV6arDVSI409VHuh1oMCuxlMQp-EaM-kkF-sTlCI,7007
|
|
212
235
|
biopipen/scripts/tcr/vdjtools-patch.sh,sha256=rL5qp2S18CrpqduKkeR1HVmmuWhCVJOMKJXvWiKdYIc,566
|
|
236
|
+
biopipen/scripts/vcf/BcftoolsAnnotate.py,sha256=iS-T6IhumqePW5kdyi_Tb6rubyIiCMjSTIRkGL_ad-U,2582
|
|
237
|
+
biopipen/scripts/vcf/BcftoolsFilter.py,sha256=AdQMXFTNLCS5eqYWMNIMbkK8qXJ5j8GYm7HdPopVk0c,2573
|
|
238
|
+
biopipen/scripts/vcf/BcftoolsSort.py,sha256=tU0pTrEIB-7x6iOSfU-KpYY1rEidi6Q4179NntY3cGc,3778
|
|
239
|
+
biopipen/scripts/vcf/BcftoolsView.py,sha256=Sj3KkYPpwQFo5kmZC5MRxItrSE5KVZi0jNYrRFck3Ow,2465
|
|
213
240
|
biopipen/scripts/vcf/TruvariBench.sh,sha256=80yLQ73OzSgsJ4ltzgpcWxYvvX1hFnCG8YSBhhhRQ9Y,765
|
|
214
241
|
biopipen/scripts/vcf/TruvariBenchSummary.R,sha256=YlcD9qLtK3aeW3XeLx8pXTe7yOkbaYJyLHb2TYijm8A,1474
|
|
215
242
|
biopipen/scripts/vcf/TruvariConsistency.R,sha256=dqoLHCzCeyJ3JWyDX8Q8MzIFwkVK8Jg71Ml45d96Cxg,2293
|
|
@@ -218,29 +245,30 @@ biopipen/scripts/vcf/VcfAnno.py,sha256=FW626rAs_WSU7AHQMKjfkYoByUGh_gVyJM97neGfO
|
|
|
218
245
|
biopipen/scripts/vcf/VcfDownSample.sh,sha256=yBlyoA8xyHPkVc1XAs1biNZmN7rDR-CMz8qVh2GGvuk,939
|
|
219
246
|
biopipen/scripts/vcf/VcfFilter.py,sha256=0clQi9XuN0B33xAquQ3e7ce1PZlzIOmOFctNA-dpdEw,1881
|
|
220
247
|
biopipen/scripts/vcf/VcfFix.py,sha256=r2bgwwb2hAMr42wjpFZSFcUDxGllvhkOaRY_r9sKLNE,1304
|
|
221
|
-
biopipen/scripts/vcf/VcfFix_utils.py,sha256=
|
|
248
|
+
biopipen/scripts/vcf/VcfFix_utils.py,sha256=Ur1-nFFYYjg7HYiK_C6Is_MTZXFULKRTwTGqBD8jzyU,2299
|
|
222
249
|
biopipen/scripts/vcf/VcfIndex.py,sha256=kMOdB8O4UWvvxeEnAa3iZoH7_ySKHCJ0LOpEds0GXf4,635
|
|
223
250
|
biopipen/scripts/vcf/VcfIntersect.py,sha256=6u9tLlfmEhlSMkYLXurVOO2uU94JwKRegSHhCzliHX0,735
|
|
224
251
|
biopipen/scripts/vcf/VcfLiftOver.sh,sha256=-mb-aY0kbr62Audm8urEh3iLef_FREVWgt8hs3ELNK8,565
|
|
225
252
|
biopipen/scripts/vcf/VcfSplitSamples.py,sha256=GraKi7WluzDAvVVGljwd3Yif6MriniF8stZOmllZtgk,1528
|
|
253
|
+
biopipen/scripts/vcf/bcftools_utils.py,sha256=p91rZp0RG6AtbpYA_KuKCfa6T5aNKMq_rK95QPL7mMI,1514
|
|
226
254
|
biopipen/scripts/web/Download.py,sha256=WKC_t5ZEeJoKFyY9XwksHARcMbKmHMcxNEUDLMGJ0Cc,924
|
|
227
255
|
biopipen/scripts/web/DownloadList.py,sha256=cZvdi3LVzlATiTvAXe0uuDDXGqB5jcR2zHrMLCEb2U8,1130
|
|
228
256
|
biopipen/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
229
257
|
biopipen/utils/caching.R,sha256=qANQqH8p-VpvD8V4VSoqSfp0TFr4esujC7x3OFZsJMw,1687
|
|
230
258
|
biopipen/utils/common_docstrs.py,sha256=Ow-g-yS5P7DEO37cP1X-xioRbYWygfQHxIuLIaDdrjs,6288
|
|
231
|
-
biopipen/utils/gene.R,sha256=
|
|
232
|
-
biopipen/utils/gene.py,sha256=
|
|
259
|
+
biopipen/utils/gene.R,sha256=EITppeN7dwXy7LnFELYHeRCSHImYno0JncLyVWEAXOM,3757
|
|
260
|
+
biopipen/utils/gene.py,sha256=ToRgAPYc8E72Hm6uYi84ImQaRMPZp5rN7O4CxK7vCag,4477
|
|
233
261
|
biopipen/utils/gsea.R,sha256=BUr4pwfo7ZyinOyNa4O4dDxA1c50qWb3lpph374Yw_A,9239
|
|
234
262
|
biopipen/utils/io.R,sha256=jIYdqdn0iRWfQYAZa5CjXi3fikqmYvPPLIXhobRe8sw,537
|
|
235
|
-
biopipen/utils/misc.R,sha256=
|
|
236
|
-
biopipen/utils/misc.py,sha256=
|
|
263
|
+
biopipen/utils/misc.R,sha256=qTninxi9XAM_3QJqwThflGA-j7p1aKpQ9Pjmix6Iy3U,12059
|
|
264
|
+
biopipen/utils/misc.py,sha256=nkQHa3GMc7Ce0N2GKmucbRc8BMXgZ2yr_SPbq9RYA4s,3740
|
|
237
265
|
biopipen/utils/mutate_helpers.R,sha256=Bqy6Oi4rrPEPJw0Jq32bVAwwBfZv7JJL9jFcK5x-cek,17649
|
|
238
266
|
biopipen/utils/plot.R,sha256=pzl37PomNeUZPxohHZ2w93j3Fc4T0Qrc62FF-9MTKdw,4417
|
|
239
|
-
biopipen/utils/reference.py,sha256=
|
|
267
|
+
biopipen/utils/reference.py,sha256=oi5evicLwHxF0KAIPNZohBeHJLJQNWFJH0cr2y5pgcg,5873
|
|
240
268
|
biopipen/utils/rnaseq.R,sha256=Ro2B2dG-Z2oVaT5tkwp9RHBz4dp_RF-JcizlM5GYXFs,1298
|
|
241
269
|
biopipen/utils/single_cell.R,sha256=pJjYP8bIZpNAtTQ32rOXhZxaM1Y-6D-xUcK3pql9tbk,4316
|
|
242
270
|
biopipen/utils/vcf.py,sha256=ajXs0M_QghEctlvUlSRjWQIABVF02wPdYd-0LP4mIsU,9377
|
|
243
|
-
biopipen-0.
|
|
244
|
-
biopipen-0.
|
|
245
|
-
biopipen-0.
|
|
246
|
-
biopipen-0.
|
|
271
|
+
biopipen-0.29.0.dist-info/METADATA,sha256=dQ6UcVOLcX89F69jLAtXIczJo77lhkrSDdE5QrBgIJg,882
|
|
272
|
+
biopipen-0.29.0.dist-info/WHEEL,sha256=sP946D7jFCHeNz5Iq4fL4Lu-PrWrFsgfLXbbkciIZwg,88
|
|
273
|
+
biopipen-0.29.0.dist-info/entry_points.txt,sha256=99uvED4sthSUVArFUMdMNLbYkVIEDLPUYg92JB22lt8,625
|
|
274
|
+
biopipen-0.29.0.dist-info/RECORD,,
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
[pipen_cli_run]
|
|
2
2
|
bam=biopipen.ns.bam
|
|
3
|
-
bcftools=biopipen.ns.bcftools
|
|
4
3
|
bed=biopipen.ns.bed
|
|
5
4
|
cellranger=biopipen.ns.cellranger
|
|
6
5
|
cellranger_pipeline=biopipen.ns.cellranger_pipeline
|
|
@@ -12,6 +11,7 @@ gene=biopipen.ns.gene
|
|
|
12
11
|
gsea=biopipen.ns.gsea
|
|
13
12
|
misc=biopipen.ns.misc
|
|
14
13
|
plot=biopipen.ns.plot
|
|
14
|
+
regulation=biopipen.ns.regulation
|
|
15
15
|
rnaseq=biopipen.ns.rnaseq
|
|
16
16
|
scrna=biopipen.ns.scrna
|
|
17
17
|
scrna_metabolic_landscape=biopipen.ns.scrna_metabolic_landscape
|
biopipen/ns/bcftools.py
DELETED
|
@@ -1,111 +0,0 @@
|
|
|
1
|
-
"""handling VCF files using bcftools"""
|
|
2
|
-
from ..core.proc import Proc
|
|
3
|
-
from ..core.config import config
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
class BcftoolsAnnotate(Proc):
|
|
7
|
-
"""Add or remove annotations from VCF files
|
|
8
|
-
|
|
9
|
-
Input:
|
|
10
|
-
infile: The input VCF file
|
|
11
|
-
annfile: The annotation file
|
|
12
|
-
|
|
13
|
-
Output:
|
|
14
|
-
outfile: The annotated VCF file
|
|
15
|
-
|
|
16
|
-
Envs:
|
|
17
|
-
bcftools: Path to bcftools
|
|
18
|
-
tabix: Path to tabix, used to index infile and annfile
|
|
19
|
-
annfile: The annotation file. If `in.annfile` is provided,
|
|
20
|
-
this is ignored
|
|
21
|
-
ncores: Number of cores (`--nthread`) to use
|
|
22
|
-
cols: Overwrite `-c/--columns`
|
|
23
|
-
header: Headers to be added
|
|
24
|
-
args: Other arguments for `bcftools annotate`
|
|
25
|
-
"""
|
|
26
|
-
input = "infile:file, annfile:file"
|
|
27
|
-
output = "outfile:file:{{in.infile | basename}}"
|
|
28
|
-
lang = config.lang.python
|
|
29
|
-
envs = {
|
|
30
|
-
"bcftools": config.exe.bcftools,
|
|
31
|
-
"tabix": config.exe.tabix,
|
|
32
|
-
"annfile": "",
|
|
33
|
-
"cols": [],
|
|
34
|
-
"header": [],
|
|
35
|
-
"args": {},
|
|
36
|
-
"ncores": config.misc.ncores,
|
|
37
|
-
}
|
|
38
|
-
script = "file://../scripts/bcftools/BcftoolsAnnotate.py"
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
class BcftoolsFilter(Proc):
|
|
42
|
-
"""Apply fixed threshold filters to VCF files
|
|
43
|
-
|
|
44
|
-
Input:
|
|
45
|
-
infile: The input VCF file
|
|
46
|
-
|
|
47
|
-
Output:
|
|
48
|
-
outfile: The filtered VCF file. If the `in.infile` is gzipped, this is
|
|
49
|
-
gzipped as well.
|
|
50
|
-
|
|
51
|
-
Envs:
|
|
52
|
-
bcftools: Path to bcftools
|
|
53
|
-
ncores: Number of cores (`--nthread`) to use
|
|
54
|
-
keep: Whether we should keep the filtered variants or not.
|
|
55
|
-
args: Other arguments for `bcftools annotate`
|
|
56
|
-
ncores: `nthread`
|
|
57
|
-
tmpdir: Path to save the intermediate files
|
|
58
|
-
Since the filters need to be applied one by one by bcftools
|
|
59
|
-
includes: and
|
|
60
|
-
excludes: include/exclude only sites for which EXPRESSION is true.
|
|
61
|
-
See: https://samtools.github.io/bcftools/bcftools.html#expressions
|
|
62
|
-
If provided, `envs.args.include/exclude` will be ignored.
|
|
63
|
-
If `str`/`list` used, The filter names will be `Filter%d`
|
|
64
|
-
A dict is used when keys are filter names and values are expressions
|
|
65
|
-
"""
|
|
66
|
-
input = "infile:file"
|
|
67
|
-
output = "outfile:file:{{in.infile | basename}}"
|
|
68
|
-
lang = config.lang.python
|
|
69
|
-
envs = {
|
|
70
|
-
"bcftools": config.exe.bcftools,
|
|
71
|
-
"keep": True,
|
|
72
|
-
"ncores": config.misc.ncores,
|
|
73
|
-
"includes": None,
|
|
74
|
-
"excludes": None,
|
|
75
|
-
"tmpdir": config.path.tmpdir,
|
|
76
|
-
"args": {},
|
|
77
|
-
}
|
|
78
|
-
script = "file://../scripts/bcftools/BcftoolsFilter.py"
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
class BcftoolsSort(Proc):
|
|
82
|
-
"""Sort VCF files
|
|
83
|
-
|
|
84
|
-
Input:
|
|
85
|
-
infile: The input VCF file
|
|
86
|
-
|
|
87
|
-
Output:
|
|
88
|
-
outfile: The sorted VCF file.
|
|
89
|
-
|
|
90
|
-
Envs:
|
|
91
|
-
bcftools: Path to bcftools
|
|
92
|
-
gz: Whether to gzip the output file
|
|
93
|
-
index: Whether to index the output file (tbi) (`envs.gz` forced to True)
|
|
94
|
-
tmpdir: Path to save the intermediate files
|
|
95
|
-
args: Other arguments for `bcftools sort`. For example `max-mem`.
|
|
96
|
-
See also https://samtools.github.io/bcftools/bcftools.html#sort
|
|
97
|
-
"""
|
|
98
|
-
input = "infile:file"
|
|
99
|
-
output = (
|
|
100
|
-
"outfile:file:{{in.infile | stem0}}.vcf"
|
|
101
|
-
"{% if envs.gz or envs.index %}.gz{% endif %}"
|
|
102
|
-
)
|
|
103
|
-
lang = config.lang.python
|
|
104
|
-
envs = {
|
|
105
|
-
"bcftools": config.exe.bcftools,
|
|
106
|
-
"gz": True,
|
|
107
|
-
"index": True,
|
|
108
|
-
"tmpdir": config.path.tmpdir,
|
|
109
|
-
"args": {},
|
|
110
|
-
}
|
|
111
|
-
script = "file://../scripts/bcftools/BcftoolsSort.py"
|
|
@@ -1,42 +0,0 @@
|
|
|
1
|
-
from os import path
|
|
2
|
-
|
|
3
|
-
from biopipen.utils.reference import tabix_index
|
|
4
|
-
from biopipen.utils.misc import dict_to_cli_args, run_command
|
|
5
|
-
|
|
6
|
-
infile = {{in.infile | repr}} # pyright: ignore
|
|
7
|
-
annfile = {{(in.annfile or envs.annfile) | repr}} # pyright: ignore
|
|
8
|
-
outfile = {{out.outfile | repr}} # pyright: ignore
|
|
9
|
-
joboutdir = {{job.outdir | repr}} # pyright: ignore
|
|
10
|
-
bcftools = {{envs.bcftools | repr}} # pyright: ignore
|
|
11
|
-
tabix = {{envs.tabix | repr}} # pyright: ignore
|
|
12
|
-
ncores = {{envs.ncores | repr}} # pyright: ignore
|
|
13
|
-
cols = {{envs.cols | repr}} # pyright: ignore
|
|
14
|
-
header = {{envs.header | repr}} # pyright: ignore
|
|
15
|
-
args = {{envs.args | repr}} # pyright: ignore
|
|
16
|
-
|
|
17
|
-
args[""] = bcftools
|
|
18
|
-
args["_"] = tabix_index(infile, "vcf")
|
|
19
|
-
args["o"] = outfile
|
|
20
|
-
args["threads"] = ncores
|
|
21
|
-
|
|
22
|
-
if annfile:
|
|
23
|
-
abname = path.basename(annfile)
|
|
24
|
-
ext = path.splitext(
|
|
25
|
-
abname[:-3] if abname.endswith('.gz') else abname
|
|
26
|
-
)[-1][1:]
|
|
27
|
-
args["a"] = tabix_index(annfile, ext, tabix)
|
|
28
|
-
|
|
29
|
-
if cols and isinstance(cols, list):
|
|
30
|
-
args["c"] = ",".join(cols)
|
|
31
|
-
|
|
32
|
-
if header:
|
|
33
|
-
if not isinstance(header, list):
|
|
34
|
-
header = [header]
|
|
35
|
-
|
|
36
|
-
headerfile = path.join(joboutdir, "header.txt")
|
|
37
|
-
with open(headerfile, "w") as fh:
|
|
38
|
-
for head in header:
|
|
39
|
-
fh.write(f"{head}\n")
|
|
40
|
-
args["h"] = headerfile
|
|
41
|
-
|
|
42
|
-
run_command(dict_to_cli_args(args, dashify=True), fg=True)
|
|
@@ -1,79 +0,0 @@
|
|
|
1
|
-
import shutil
|
|
2
|
-
from pathlib import Path
|
|
3
|
-
from hashlib import md5
|
|
4
|
-
|
|
5
|
-
from biopipen.core.filters import dict_to_cli_args, run_command
|
|
6
|
-
|
|
7
|
-
infile = {{in.infile | repr}} # pyright: ignore
|
|
8
|
-
outfile = {{out.outfile | repr}} # pyright: ignore
|
|
9
|
-
bcftools = {{envs.bcftools | repr}} # pyright: ignore
|
|
10
|
-
keep = {{envs.keep | repr}} # pyright: ignore
|
|
11
|
-
args = {{envs.args | repr}} # pyright: ignore
|
|
12
|
-
ncores = {{envs.ncores | repr}} # pyright: ignore
|
|
13
|
-
tmpdir = {{envs.tmpdir | repr}} # pyright: ignore
|
|
14
|
-
includes = {{envs.includes | repr}} # pyright: ignore
|
|
15
|
-
excludes = {{envs.excludes | repr}} # pyright: ignore
|
|
16
|
-
|
|
17
|
-
args[""] = bcftools
|
|
18
|
-
args["_"] = infile
|
|
19
|
-
args["o"] = outfile
|
|
20
|
-
args["threads"] = ncores
|
|
21
|
-
if "O" not in args and "output-type" not in args:
|
|
22
|
-
args["O"] = "z" if infile.endswith(".gz") else "v"
|
|
23
|
-
if "m" not in args and "mode" not in args:
|
|
24
|
-
args["m"] = "+"
|
|
25
|
-
|
|
26
|
-
tmpdir = (
|
|
27
|
-
Path(tmpdir) / f"biopipen-bcftoolsfilter-{md5(infile.encode()).hexdigest()}"
|
|
28
|
-
)
|
|
29
|
-
tmpdir.mkdir(parents=True, exist_ok=True)
|
|
30
|
-
# a.vcf.gz -> a
|
|
31
|
-
# a.vcf -> a
|
|
32
|
-
stem = Path(infile).stem
|
|
33
|
-
if stem.endswith(".vcf"):
|
|
34
|
-
stem = stem[:-4]
|
|
35
|
-
# .vcf.gz
|
|
36
|
-
# .gz
|
|
37
|
-
ext = Path(infile).name[len(stem):]
|
|
38
|
-
|
|
39
|
-
FILTER_INDEX = [1]
|
|
40
|
-
|
|
41
|
-
def handle_filter(vcf, fname, filt, flag):
|
|
42
|
-
print("- Handling filter ", fname, ": ", filt, " ...")
|
|
43
|
-
|
|
44
|
-
arguments = args.copy()
|
|
45
|
-
arguments[flag] = filt
|
|
46
|
-
arguments["_"] = vcf
|
|
47
|
-
arguments["o"] = tmpdir / f"{stem}.{fname}{ext}"
|
|
48
|
-
if keep:
|
|
49
|
-
arguments["s"] = fname
|
|
50
|
-
|
|
51
|
-
run_command(dict_to_cli_args(arguments, dashify=True), fg=True)
|
|
52
|
-
return arguments["o"]
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
def normalize_expr(expr, flag):
|
|
56
|
-
out = {}
|
|
57
|
-
if not expr:
|
|
58
|
-
return out
|
|
59
|
-
if isinstance(expr, list):
|
|
60
|
-
for ex in expr:
|
|
61
|
-
out[f"FILTER{FILTER_INDEX[0]}"] = (ex, flag)
|
|
62
|
-
FILTER_INDEX[0] += 1
|
|
63
|
-
elif isinstance(expr, dict):
|
|
64
|
-
for name, ex in expr.items():
|
|
65
|
-
out[name] = (ex, flag)
|
|
66
|
-
else: # str
|
|
67
|
-
out[f"FILTER{FILTER_INDEX[0]}"] = (expr, flag)
|
|
68
|
-
FILTER_INDEX[0] += 1
|
|
69
|
-
return out
|
|
70
|
-
|
|
71
|
-
includes = normalize_expr(includes, "include")
|
|
72
|
-
excludes = normalize_expr(excludes, "exclude")
|
|
73
|
-
includes.update(excludes)
|
|
74
|
-
|
|
75
|
-
# bcftools can be only done once at one filter
|
|
76
|
-
for fname, (filt, flag) in includes.items():
|
|
77
|
-
infile = handle_filter(infile, fname, filt, flag)
|
|
78
|
-
|
|
79
|
-
shutil.copy2(infile, outfile)
|