partis-bcr 1.0.6__py3-none-any.whl → 1.0.7__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.
packages/ham/bcrham CHANGED
Binary file
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: partis-bcr
3
- Version: 1.0.6
3
+ Version: 1.0.7
4
4
  Summary: B- and T-cell receptor sequence annotation, simulation, clonal family and germline inference
5
5
  Home-page: https://github.com/psathyrella/partis
6
6
  Author: Duncan Ralph
@@ -20,6 +20,7 @@ Classifier: Programming Language :: Python :: 3.8
20
20
  Classifier: Programming Language :: Python :: 3.9
21
21
  Classifier: Programming Language :: Python :: 3.10
22
22
  Classifier: Programming Language :: Python :: 3.11
23
+ Classifier: Programming Language :: Python :: 3.12
23
24
  Requires-Python: >=3.7
24
25
  Description-Content-Type: text/markdown
25
26
  License-File: COPYING
@@ -22,7 +22,6 @@ bin/makeHtml,sha256=SMMulEmYoU4ve4jlCRNaDuw9f4FS4t8g_FGE7z5Ndb4,1190
22
22
  bin/mds-run.py,sha256=rShy5b3oqvFZqhNdVxrtyZ4nw7whK-SKPAYl2thXooU,2003
23
23
  bin/parse-output.py,sha256=_vlx4ptHEoKiztm2RrCMqQZYlFriFmv4Sv17E6M6J9o,19533
24
24
  bin/partis,sha256=fm-5jD5mjvz3GsCeT5Q_gqeUCTCWalKgV5VJ012Xrdk,225118
25
- bin/partis-pip,sha256=STJkb_lm94kKxthpmIsMgFIhBWsoOJAtRJZbiFewaAU,5562
26
25
  bin/partis-test.py,sha256=CS0H2eckShv9TIPh-p_6jeaBuDd3zlRTDjaHmXU3Ln4,63749
27
26
  bin/partis.py,sha256=fm-5jD5mjvz3GsCeT5Q_gqeUCTCWalKgV5VJ012Xrdk,225118
28
27
  bin/plot-gl-set-trees.py,sha256=bgWPBmzzlD_YgWl9nQetGdzmgosXDKyVyfvaHs0VvVc,25695
@@ -297,18 +296,18 @@ data/substitution-profiles/GSSPs_for_VH_genes_with_at_least_300_lineages.txt,sha
297
296
  data/substitution-profiles/GSSPs_for_VK_genes_with_at_least_300_lineages.txt,sha256=dyMU1R_Izk_ciOVTNWmGL5SQBIKDCCKpxXM6eTGO4Fg,184138
298
297
  data/substitution-profiles/GSSPs_for_VL_genes_with_at_least_300_lineages.txt,sha256=CMFb1gk8MbfaMb6y0_qLLiKErrx866C2EafKRSPesB4,184979
299
298
  data/substitution-profiles/notes.txt,sha256=-DK9E31YovqOWaXR1Q-LL5KFhjVJcSLwXbriajUq1TA,389
300
- packages/ham/bcrham,sha256=EfXBRtZfvPosw3I56boG6FGingnLzP-PJ5tKj1H7cxM,1194352
299
+ packages/ham/bcrham,sha256=p5PJ7gX0kvDcG3OI9uAHrLN7WuG5xcYdjC1dW2yv8iY,1194352
301
300
  packages/ig-sw/src/ig_align/ig-sw,sha256=SNFYfMlvX9s9T64t9fYIB5ugD6cZ016SZVbRhrz5Pro,293464
302
- partis_bcr-1.0.6.data/scripts/cf-alleles.py,sha256=AgFLoRfcwuX1InVpE3zG6-unqoCBGOeCTpEl_RZftvU,4723
303
- partis_bcr-1.0.6.data/scripts/cf-germlines.py,sha256=8_bq0ue3ALFQ-a7-ntnhkbCaBdQ5mlWtQgNeQP_TvcQ,3135
304
- partis_bcr-1.0.6.data/scripts/compare-plotdirs.py,sha256=AABVGUOwlLCijjo-wwDLfLHiq80TrFVm8mE-4Zqn5Sg,16370
305
- partis_bcr-1.0.6.data/scripts/extract-pairing-info.py,sha256=IGPd4jYpsW3IPgsrxTJrk9jAwUKlb45eX3lOpb8Maos,2941
306
- partis_bcr-1.0.6.data/scripts/gctree-run.py,sha256=BfSZCFgqdhUEqVsv2h20o6OkS6KbQgx5tfvBhySRx2U,13950
307
- partis_bcr-1.0.6.data/scripts/get-naive-probabilities.py,sha256=WfuglaedP3PF0wpksGiUSvfAg4wJoNlucTPa1Wl9MDo,6916
308
- partis_bcr-1.0.6.data/scripts/parse-output.py,sha256=8nrg0ip3XDhme02NCiI45BrSqCNvbRIbKYErD8STk8U,19519
309
- partis_bcr-1.0.6.data/scripts/partis-test.py,sha256=bQq_sT9v2DVQBgUGqQzdvy-q1jUrqAxV6Sl-tzENwus,63735
310
- partis_bcr-1.0.6.data/scripts/split-loci.py,sha256=K0WXQYtloL5rs46mwvEXUecqT3iG8bbqwNOTNwfpvzY,20704
311
- partis_bcr-1.0.6.dist-info/licenses/COPYING,sha256=jOtLnuWt7d5Hsx6XXB2QxzrSe2sWWh3NgMfFRetluQM,35147
301
+ partis_bcr-1.0.7.data/scripts/cf-alleles.py,sha256=AgFLoRfcwuX1InVpE3zG6-unqoCBGOeCTpEl_RZftvU,4723
302
+ partis_bcr-1.0.7.data/scripts/cf-germlines.py,sha256=8_bq0ue3ALFQ-a7-ntnhkbCaBdQ5mlWtQgNeQP_TvcQ,3135
303
+ partis_bcr-1.0.7.data/scripts/compare-plotdirs.py,sha256=AABVGUOwlLCijjo-wwDLfLHiq80TrFVm8mE-4Zqn5Sg,16370
304
+ partis_bcr-1.0.7.data/scripts/extract-pairing-info.py,sha256=IGPd4jYpsW3IPgsrxTJrk9jAwUKlb45eX3lOpb8Maos,2941
305
+ partis_bcr-1.0.7.data/scripts/gctree-run.py,sha256=BfSZCFgqdhUEqVsv2h20o6OkS6KbQgx5tfvBhySRx2U,13950
306
+ partis_bcr-1.0.7.data/scripts/get-naive-probabilities.py,sha256=WfuglaedP3PF0wpksGiUSvfAg4wJoNlucTPa1Wl9MDo,6916
307
+ partis_bcr-1.0.7.data/scripts/parse-output.py,sha256=8nrg0ip3XDhme02NCiI45BrSqCNvbRIbKYErD8STk8U,19519
308
+ partis_bcr-1.0.7.data/scripts/partis-test.py,sha256=bQq_sT9v2DVQBgUGqQzdvy-q1jUrqAxV6Sl-tzENwus,63735
309
+ partis_bcr-1.0.7.data/scripts/split-loci.py,sha256=K0WXQYtloL5rs46mwvEXUecqT3iG8bbqwNOTNwfpvzY,20704
310
+ partis_bcr-1.0.7.dist-info/licenses/COPYING,sha256=jOtLnuWt7d5Hsx6XXB2QxzrSe2sWWh3NgMfFRetluQM,35147
312
311
  python/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
313
312
  python/alleleclusterer.py,sha256=x50E_lJMlKPc-CPkdkM1qe4AvVi-mkDJ1cBDxs5L-ms,30551
314
313
  python/allelefinder.py,sha256=SgJjopk5ivLOcmTumsWq5PZ05aPZ6zQyjTd1fxeRjaM,80402
@@ -347,7 +346,7 @@ python/scanplot.py,sha256=-ZXle3lW5C2ZRECC6r0xJokscZT0-A_VV7om6We_HbY,64864
347
346
  python/seqfileopener.py,sha256=6WZQaG-0R3KNk3ZYLP2bAJ9ViR7b9viSB-vTePaaMh0,26880
348
347
  python/treegenerator.py,sha256=aExfulBvj2CeNDcnX6AG-jeDiEmOvEzfSsDtt9psMVk,18909
349
348
  python/treeutils.py,sha256=aSKSxKZK2attLKrJv3xrDVWekgwtQVhqrnqZKs9c-uM,282309
350
- python/utils.py,sha256=RZr79jh3jLkYPBZW4N6210CkC-rKlrlxx2uu-ER5jdA,492652
349
+ python/utils.py,sha256=-luzQ8iLDF2AeQZd-9IewUDdfxhVKxokxQgVLxrBgis,492651
351
350
  python/viterbicluster.py,sha256=ub8vHxJbTDUtx2QUS2rGFFRQVKyGMdaGbDtFtNcaTgc,2070
352
351
  python/vrc01.py,sha256=f3PpRV9ZOU9kxJCKdoJlP9wvKB7FEgMM8WoNpevsEOE,10813
353
352
  python/waterer.py,sha256=sPBsJchmK2EO3M5UCwZq_S5mRV3eYFuIZoite4Js62g,109955
@@ -7310,8 +7309,8 @@ test/ref-results-slow/test/parameters/simu/true/mute-freqs/IGHV4-NL1_star_01.csv
7310
7309
  test/ref-results-slow/test/parameters/simu/true/mute-freqs/IGHV5-10-1_star_01.csv,sha256=S075HCAZnbZpAMsXeLMmMXEGVHFs_Euk1XujtFQ46y4,41974
7311
7310
  test/ref-results-slow/test/parameters/simu/true/mute-freqs/IGHV5-51_star_01.csv,sha256=QJGyDRqD2JezXsuMbNNXGSCM-kjaN2h4QGpgsaqTqXQ,57817
7312
7311
  test/ref-results-slow/test/parameters/simu/true/mute-freqs/IGHV7-4-1_star_02.csv,sha256=k5KeCR5Qa6iEF0IEHR63DDdJStqAjcZxgZOUbKDFNaY,39977
7313
- partis_bcr-1.0.6.dist-info/METADATA,sha256=kG5P0EfVVMZYGh7F6uYhI1uPiSlpUxukWRiJ6XRD1vA,5024
7314
- partis_bcr-1.0.6.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
7315
- partis_bcr-1.0.6.dist-info/entry_points.txt,sha256=Q-AkAQ91YwiKNHruS32ACdY4_IQdpZhpij2EuVDmdnM,44
7316
- partis_bcr-1.0.6.dist-info/top_level.txt,sha256=J-z0poNcsv31IHB413--iOY8LoHBKiTHeybHX3abokI,7
7317
- partis_bcr-1.0.6.dist-info/RECORD,,
7312
+ partis_bcr-1.0.7.dist-info/METADATA,sha256=ckhldbhLch81KuEpjwt9h1VOHdP8YEAzVKAy66WguiI,5075
7313
+ partis_bcr-1.0.7.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
7314
+ partis_bcr-1.0.7.dist-info/entry_points.txt,sha256=Q-AkAQ91YwiKNHruS32ACdY4_IQdpZhpij2EuVDmdnM,44
7315
+ partis_bcr-1.0.7.dist-info/top_level.txt,sha256=J-z0poNcsv31IHB413--iOY8LoHBKiTHeybHX3abokI,7
7316
+ partis_bcr-1.0.7.dist-info/RECORD,,
python/utils.py CHANGED
@@ -7324,7 +7324,7 @@ def run_vsearch(action, seqdict, workdir, threshold, match_mismatch='2:-4', gap_
7324
7324
  if platform.system() == 'Linux':
7325
7325
  binstr = 'linux'
7326
7326
  elif platform.system() == 'Darwin':
7327
- binstr += 'macos'
7327
+ binstr = 'macos'
7328
7328
  else:
7329
7329
  raise Exception('%s no vsearch binary in bin/ for platform \'%s\' (you can specify your own full vsearch path with --vsearch-binary)' % (color('red', 'error'), platform.system()))
7330
7330
  vsearch_binary = '%s/bin/vsearch-2.4.3-%s-x86_64' % (get_partis_dir(), binstr)
bin/partis-pip DELETED
@@ -1,116 +0,0 @@
1
- #!/usr/bin/env python3
2
- from __future__ import absolute_import, division, unicode_literals
3
- from __future__ import print_function
4
- import argparse
5
- import copy
6
- import time
7
- import random
8
- import sys
9
- import subprocess
10
- # import multiprocessing
11
- import numpy
12
- import scipy
13
- import math
14
- import itertools
15
- import collections
16
- import traceback
17
- from io import open
18
- import colored_traceback.always
19
- import os
20
- import json
21
- import csv
22
- import operator
23
- import glob
24
- from collections import defaultdict
25
-
26
- # Auto-detect installation type and set up imports accordingly
27
- def setup_partis_environment():
28
- # Check if we're in a pip installation or source installation
29
- current_dir = os.path.dirname(os.path.realpath(__file__))
30
-
31
- # Try to detect pip installation structure
32
- if current_dir.endswith('/site-packages/bin'):
33
- # We're in a pip installation: /site-packages/bin/partis
34
- site_packages_dir = os.path.dirname(current_dir) # /site-packages
35
- partis_dir = site_packages_dir
36
-
37
- # Set up environment for pip installation
38
- os.environ['PARTIS_DIR'] = partis_dir
39
- sys.path.insert(1, site_packages_dir)
40
-
41
- # Import using pip package structure
42
- import partis.utils as utils
43
- import partis.glutils as glutils
44
- import partis.treeutils as treeutils
45
- import partis.processargs as processargs
46
- import partis.seqfileopener as seqfileopener
47
- from partis.partitiondriver import PartitionDriver
48
- from partis.clusterpath import ClusterPath
49
- import partis.paircluster as paircluster
50
- from partis.parametercounter import ParameterCounter
51
- from partis.corrcounter import CorrCounter
52
- from partis.waterer import Waterer
53
-
54
- return utils, glutils, treeutils, processargs, seqfileopener, PartitionDriver, ClusterPath, paircluster, ParameterCounter, CorrCounter, Waterer, partis_dir
55
-
56
- else:
57
- # We're in a source installation: assume standard partis directory structure
58
- partis_dir = os.path.dirname(os.path.realpath(__file__)).replace('/bin', '')
59
- if not os.path.exists(partis_dir):
60
- print('%s partis dir %s doesn\'t exist, so python path may not be correctly set' % (os.path.dirname(os.path.realpath(__file__)), partis_dir))
61
- sys.path.insert(1, partis_dir)
62
-
63
- # Set up environment for source installation
64
- os.environ['PARTIS_DIR'] = partis_dir
65
-
66
- # Import using source structure
67
- import python.utils as utils
68
- import python.glutils as glutils
69
- import python.treeutils as treeutils
70
- import python.processargs as processargs
71
- import python.seqfileopener as seqfileopener
72
- from python.partitiondriver import PartitionDriver
73
- from python.clusterpath import ClusterPath
74
- import python.paircluster as paircluster
75
- from python.parametercounter import ParameterCounter
76
- from python.corrcounter import CorrCounter
77
- from python.waterer import Waterer
78
-
79
- return utils, glutils, treeutils, processargs, seqfileopener, PartitionDriver, ClusterPath, paircluster, ParameterCounter, CorrCounter, Waterer, partis_dir
80
-
81
- # Initialize environment and imports
82
- utils, glutils, treeutils, processargs, seqfileopener, PartitionDriver, ClusterPath, paircluster, ParameterCounter, CorrCounter, Waterer, partis_dir = setup_partis_environment()
83
-
84
- # ----------------------------------------------------------------------------------------
85
- def run_simulation(args):
86
- # ----------------------------------------------------------------------------------------
87
- def run_sub_cmds(working_gldir):
88
- # ----------------------------------------------------------------------------------------
89
- def get_sub_events(iproc):
90
- n_sub_events = args.n_sim_events // args.n_procs
91
- if iproc == args.n_procs - 1 and args.n_sim_events % args.n_procs > 0: # do any extra ones in the last proc (has to match sub file writer below)
92
- n_sub_events += args.n_sim_events % args.n_procs
93
- n_per_proc_list.append(n_sub_events)
94
- return n_sub_events
95
- # ----------------------------------------------------------------------------------------
96
- def get_workdir(iproc):
97
- return utils.choose_random_subdir('/tmp') + '/partis-simu-' + str(random.randint(0, 999999))
98
- # ----------------------------------------------------------------------------------------
99
- if args.n_procs == 1:
100
- sub_cmds = [get_simulation_cmd(working_gldir, n_events=args.n_sim_events, random_seed=random.randint(0, 999999), outfname=args.outfname, workdir=None)]
101
- else:
102
- n_per_proc_list = []
103
- sub_cmds = []
104
- for iproc in range(args.n_procs):
105
- workdir = get_workdir(iproc)
106
- outfname = workdir + '/simu-' + str(iproc) + '.yaml'
107
- sub_cmds.append(get_simulation_cmd(working_gldir, n_events=get_sub_events(iproc), random_seed=random.randint(0, 999999), outfname=outfname, workdir=workdir))
108
-
109
- utils.run_cmds(sub_cmds, shell=True, n_max_procs=args.n_procs, sleep=False, debug=args.debug, proc_limit_str=' %d / %d ' % (len(sub_cmds), len(sub_cmds)))
110
-
111
- if args.n_procs > 1:
112
- merge_simulation_outputs(sub_cmds)
113
-
114
- # ... rest of the simulation code would continue here, but for brevity I'll skip to the main parts
115
-
116
- # Copy the rest of the original bin/partis file content here, but I'll jump to the main execution part