agglovar 0.0.1.dev9__tar.gz → 0.0.1.dev10__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {agglovar-0.0.1.dev9/src/agglovar.egg-info → agglovar-0.0.1.dev10}/PKG-INFO +1 -1
- {agglovar-0.0.1.dev9 → agglovar-0.0.1.dev10}/src/agglovar/__init__.py +1 -1
- {agglovar-0.0.1.dev9 → agglovar-0.0.1.dev10}/src/agglovar/bed/intersect.py +13 -3
- {agglovar-0.0.1.dev9 → agglovar-0.0.1.dev10}/src/agglovar/bed/join.py +17 -11
- {agglovar-0.0.1.dev9 → agglovar-0.0.1.dev10/src/agglovar.egg-info}/PKG-INFO +1 -1
- {agglovar-0.0.1.dev9 → agglovar-0.0.1.dev10}/LICENSE +0 -0
- {agglovar-0.0.1.dev9 → agglovar-0.0.1.dev10}/README.md +0 -0
- {agglovar-0.0.1.dev9 → agglovar-0.0.1.dev10}/pyproject.toml +0 -0
- {agglovar-0.0.1.dev9 → agglovar-0.0.1.dev10}/setup.cfg +0 -0
- {agglovar-0.0.1.dev9 → agglovar-0.0.1.dev10}/src/agglovar/align/__init__.py +0 -0
- {agglovar-0.0.1.dev9 → agglovar-0.0.1.dev10}/src/agglovar/align/op.py +0 -0
- {agglovar-0.0.1.dev9 → agglovar-0.0.1.dev10}/src/agglovar/align/score.py +0 -0
- {agglovar-0.0.1.dev9 → agglovar-0.0.1.dev10}/src/agglovar/bed/__init__.py +0 -0
- {agglovar-0.0.1.dev9 → agglovar-0.0.1.dev10}/src/agglovar/bed/col.py +0 -0
- {agglovar-0.0.1.dev9 → agglovar-0.0.1.dev10}/src/agglovar/bed/merge.py +0 -0
- {agglovar-0.0.1.dev9 → agglovar-0.0.1.dev10}/src/agglovar/dev/__init__.py +0 -0
- {agglovar-0.0.1.dev9 → agglovar-0.0.1.dev10}/src/agglovar/dev/imports.py +0 -0
- {agglovar-0.0.1.dev9 → agglovar-0.0.1.dev10}/src/agglovar/fa.py +0 -0
- {agglovar-0.0.1.dev9 → agglovar-0.0.1.dev10}/src/agglovar/io.py +0 -0
- {agglovar-0.0.1.dev9 → agglovar-0.0.1.dev10}/src/agglovar/kmer/__init__.py +0 -0
- {agglovar-0.0.1.dev9 → agglovar-0.0.1.dev10}/src/agglovar/kmer/plot.py +0 -0
- {agglovar-0.0.1.dev9 → agglovar-0.0.1.dev10}/src/agglovar/kmer/util.py +0 -0
- {agglovar-0.0.1.dev9 → agglovar-0.0.1.dev10}/src/agglovar/merge/__init__.py +0 -0
- {agglovar-0.0.1.dev9 → agglovar-0.0.1.dev10}/src/agglovar/merge/base.py +0 -0
- {agglovar-0.0.1.dev9 → agglovar-0.0.1.dev10}/src/agglovar/merge/config/__init__.py +0 -0
- {agglovar-0.0.1.dev9 → agglovar-0.0.1.dev10}/src/agglovar/merge/config/parser.py +0 -0
- {agglovar-0.0.1.dev9 → agglovar-0.0.1.dev10}/src/agglovar/merge/config/stage.py +0 -0
- {agglovar-0.0.1.dev9 → agglovar-0.0.1.dev10}/src/agglovar/merge/config/strategy.py +0 -0
- {agglovar-0.0.1.dev9 → agglovar-0.0.1.dev10}/src/agglovar/merge/cumulative.py +0 -0
- {agglovar-0.0.1.dev9 → agglovar-0.0.1.dev10}/src/agglovar/merge/om/__init__.py +0 -0
- {agglovar-0.0.1.dev9 → agglovar-0.0.1.dev10}/src/agglovar/merge/om/_executor_base.py +0 -0
- {agglovar-0.0.1.dev9 → agglovar-0.0.1.dev10}/src/agglovar/merge/om/_executor_nr.py +0 -0
- {agglovar-0.0.1.dev9 → agglovar-0.0.1.dev10}/src/agglovar/meta/__init__.py +0 -0
- {agglovar-0.0.1.dev9 → agglovar-0.0.1.dev10}/src/agglovar/meta/decorators.py +0 -0
- {agglovar-0.0.1.dev9 → agglovar-0.0.1.dev10}/src/agglovar/meta/descriptors.py +0 -0
- {agglovar-0.0.1.dev9 → agglovar-0.0.1.dev10}/src/agglovar/pairwise/__init__.py +0 -0
- {agglovar-0.0.1.dev9 → agglovar-0.0.1.dev10}/src/agglovar/pairwise/base.py +0 -0
- {agglovar-0.0.1.dev9 → agglovar-0.0.1.dev10}/src/agglovar/pairwise/overlap/__init__.py +0 -0
- {agglovar-0.0.1.dev9 → agglovar-0.0.1.dev10}/src/agglovar/pairwise/overlap/_const.py +0 -0
- {agglovar-0.0.1.dev9 → agglovar-0.0.1.dev10}/src/agglovar/pairwise/overlap/_overlap.py +0 -0
- {agglovar-0.0.1.dev9 → agglovar-0.0.1.dev10}/src/agglovar/pairwise/overlap/_stage.py +0 -0
- {agglovar-0.0.1.dev9 → agglovar-0.0.1.dev10}/src/agglovar/pairwise/weights.py +0 -0
- {agglovar-0.0.1.dev9 → agglovar-0.0.1.dev10}/src/agglovar/schema.py +0 -0
- {agglovar-0.0.1.dev9 → agglovar-0.0.1.dev10}/src/agglovar/seqmatch.py +0 -0
- {agglovar-0.0.1.dev9 → agglovar-0.0.1.dev10}/src/agglovar/util/__init__.py +0 -0
- {agglovar-0.0.1.dev9 → agglovar-0.0.1.dev10}/src/agglovar/util/str.py +0 -0
- {agglovar-0.0.1.dev9 → agglovar-0.0.1.dev10}/src/agglovar/util/var.py +0 -0
- {agglovar-0.0.1.dev9 → agglovar-0.0.1.dev10}/src/agglovar.egg-info/SOURCES.txt +0 -0
- {agglovar-0.0.1.dev9 → agglovar-0.0.1.dev10}/src/agglovar.egg-info/dependency_links.txt +0 -0
- {agglovar-0.0.1.dev9 → agglovar-0.0.1.dev10}/src/agglovar.egg-info/requires.txt +0 -0
- {agglovar-0.0.1.dev9 → agglovar-0.0.1.dev10}/src/agglovar.egg-info/top_level.txt +0 -0
|
@@ -86,6 +86,17 @@ def as_proportion(
|
|
|
86
86
|
if name is None or not (name := name.strip()):
|
|
87
87
|
raise ValueError('Name must be a non-empty string')
|
|
88
88
|
|
|
89
|
+
if isinstance(df_a, pl.DataFrame):
|
|
90
|
+
df_a = df_a.lazy()
|
|
91
|
+
|
|
92
|
+
if isinstance(df_b, pl.DataFrame):
|
|
93
|
+
df_b = df_b.lazy()
|
|
94
|
+
|
|
95
|
+
col_set_a = set(df_a.collect_schema().names())
|
|
96
|
+
|
|
97
|
+
if '_index' not in col_set_a:
|
|
98
|
+
df_a = df_a.with_row_index('_index')
|
|
99
|
+
|
|
89
100
|
# Collapse b, index a
|
|
90
101
|
df_b_nr = (
|
|
91
102
|
merge_depth(df_b, 0, col_names_b)
|
|
@@ -96,8 +107,6 @@ def as_proportion(
|
|
|
96
107
|
|
|
97
108
|
df_a = (
|
|
98
109
|
df_a
|
|
99
|
-
.drop('_index', strict=False)
|
|
100
|
-
.with_row_index('_index')
|
|
101
110
|
.filter(
|
|
102
111
|
pl.col(col_names_a.pos).is_not_null(),
|
|
103
112
|
pl.col(col_names_a.end).is_not_null(),
|
|
@@ -128,11 +137,12 @@ def as_proportion(
|
|
|
128
137
|
df_a
|
|
129
138
|
.select(
|
|
130
139
|
'_index',
|
|
140
|
+
'_index_a_bed_as_prop',
|
|
131
141
|
(col_expr_a.end - col_expr_a.pos).alias('len')
|
|
132
142
|
)
|
|
133
143
|
.join(
|
|
134
144
|
df_join.lazy(),
|
|
135
|
-
on='
|
|
145
|
+
on='_index_a_bed_as_prop',
|
|
136
146
|
how='left',
|
|
137
147
|
)
|
|
138
148
|
.select(
|
|
@@ -46,6 +46,15 @@ class _JoinResources:
|
|
|
46
46
|
if isinstance(df_b, pl.DataFrame):
|
|
47
47
|
df_b = df_b.lazy()
|
|
48
48
|
|
|
49
|
+
cols_a = set(df_a.collect_schema().keys())
|
|
50
|
+
cols_b = set(df_b.collect_schema().keys())
|
|
51
|
+
|
|
52
|
+
if '_index' not in cols_a:
|
|
53
|
+
df_a = df_a.with_row_index('_index')
|
|
54
|
+
|
|
55
|
+
if '_index' not in cols_b:
|
|
56
|
+
df_b = df_b.with_row_index('_index')
|
|
57
|
+
|
|
49
58
|
# Set column names
|
|
50
59
|
ref_cols = get_coord_cols('ref')
|
|
51
60
|
|
|
@@ -65,16 +74,18 @@ class _JoinResources:
|
|
|
65
74
|
# Prepare tables
|
|
66
75
|
df_a = (
|
|
67
76
|
df_a
|
|
68
|
-
.select(
|
|
69
|
-
|
|
70
|
-
|
|
77
|
+
.select(
|
|
78
|
+
pl.col('_index').alias('_index_a'),
|
|
79
|
+
*col_select_a
|
|
80
|
+
)
|
|
71
81
|
)
|
|
72
82
|
|
|
73
83
|
df_b = (
|
|
74
84
|
df_b
|
|
75
|
-
.select(
|
|
76
|
-
|
|
77
|
-
|
|
85
|
+
.select(
|
|
86
|
+
pl.col('_index').alias('_index_b'),
|
|
87
|
+
*col_select_b
|
|
88
|
+
)
|
|
78
89
|
)
|
|
79
90
|
|
|
80
91
|
self.df_a = df_a
|
|
@@ -322,13 +333,10 @@ def pairwise_join_tree(
|
|
|
322
333
|
|
|
323
334
|
for df_batch_b in (
|
|
324
335
|
df_b
|
|
325
|
-
.drop('_index_b', strict=False)
|
|
326
|
-
.with_row_index('_index_b')
|
|
327
336
|
.select(pl.col('_index_b'), *col_b.exprs())
|
|
328
337
|
.collect_batches(chunk_size=chunk_size)
|
|
329
338
|
):
|
|
330
339
|
for index_b, chrom_b, pos_b, end_b in df_batch_b.iter_rows():
|
|
331
|
-
# print(f'Adding: {chrom_b} - {pos_b} - {end_b}')
|
|
332
340
|
itree[chrom_b].addi(pos_b - distance, end_b + distance, index_b)
|
|
333
341
|
|
|
334
342
|
# Intersect
|
|
@@ -336,8 +344,6 @@ def pairwise_join_tree(
|
|
|
336
344
|
|
|
337
345
|
for df_chunk in (
|
|
338
346
|
df_a
|
|
339
|
-
.drop('_index_a', strict=False)
|
|
340
|
-
.with_row_index('_index_a')
|
|
341
347
|
.select(pl.col('_index_a'), *col_a.exprs())
|
|
342
348
|
.collect_batches(chunk_size=chunk_size)
|
|
343
349
|
):
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|