Skip to content

Commit 9c31a8f

Browse files
committed
Attempt switch to float64 for more 'precise' rounding
1 parent 53df8b5 commit 9c31a8f

File tree

10 files changed

+49
-39
lines changed

10 files changed

+49
-39
lines changed

modules/local/scanpy/bbknn/templates/bbknn.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@
3939
if params.decimals is not None:
4040
for key in adata.obsp:
4141
if hasattr(adata.obsp[key], 'data'):
42-
adata.obsp[key].data = np.round(adata.obsp[key].data, params.decimals)
42+
adata.obsp[key].data = np.round(adata.obsp[key].data.astype(np.float64), params.decimals)
4343

4444
adata.write_h5ad("${prefix}.h5ad")
4545

modules/local/scanpy/bbknn/tests/main.nf.test.snap

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@
4040
{
4141
"id": "test"
4242
},
43-
"test.h5ad:md5,806ff996e5a2fa6abd60db28646a57d3"
43+
"test.h5ad:md5,d83039db76dd28a01f459cfe7a1e1b6c"
4444
]
4545
],
4646
"1": [
@@ -51,15 +51,15 @@
5151
{
5252
"id": "test"
5353
},
54-
"test.h5ad:md5,806ff996e5a2fa6abd60db28646a57d3"
54+
"test.h5ad:md5,d83039db76dd28a01f459cfe7a1e1b6c"
5555
]
5656
],
5757
"versions": [
5858
"versions.yml:md5,0e8d49948d318a0226fecc9b8d3372bb"
5959
]
6060
}
6161
],
62-
"timestamp": "2026-03-17T23:24:47.233822583",
62+
"timestamp": "2026-03-18T00:12:12.879701725",
6363
"meta": {
6464
"nf-test": "0.9.4",
6565
"nextflow": "25.10.4"

modules/local/scanpy/neighbors/templates/neighbors.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@
3333
if params.decimals is not None:
3434
for key in adata.obsp:
3535
if hasattr(adata.obsp[key], 'data'):
36-
adata.obsp[key].data = np.round(adata.obsp[key].data, params.decimals)
36+
adata.obsp[key].data = np.round(adata.obsp[key].data.astype(np.float64), params.decimals)
3737

3838
adata.write_h5ad(f"{prefix}.h5ad")
3939

modules/local/scanpy/neighbors/tests/main.nf.test.snap

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@
4040
{
4141
"id": "test"
4242
},
43-
"test_neighbors.h5ad:md5,949997771b8f4cd43af2a9c498d9eff0"
43+
"test_neighbors.h5ad:md5,b0b62fa6a6f03fad08bc857950cfb68f"
4444
]
4545
],
4646
"1": [
@@ -51,15 +51,15 @@
5151
{
5252
"id": "test"
5353
},
54-
"test_neighbors.h5ad:md5,949997771b8f4cd43af2a9c498d9eff0"
54+
"test_neighbors.h5ad:md5,b0b62fa6a6f03fad08bc857950cfb68f"
5555
]
5656
],
5757
"versions": [
5858
"versions.yml:md5,100d9c36f756608d0626edd6565910ef"
5959
]
6060
}
6161
],
62-
"timestamp": "2026-03-17T23:24:44.5067562",
62+
"timestamp": "2026-03-18T00:12:34.796028005",
6363
"meta": {
6464
"nf-test": "0.9.4",
6565
"nextflow": "25.10.4"

modules/local/scanpy/pca/templates/pca.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@
2929
sc.pp.pca(adata, random_state=0, key_added=key_added)
3030

3131
if params.decimals is not None:
32-
adata.obsm[key_added] = np.round(adata.obsm[key_added], params.decimals)
32+
adata.obsm[key_added] = np.round(adata.obsm[key_added].astype(np.float64), params.decimals)
3333

3434
adata.write_h5ad(f"{prefix}.h5ad")
3535
df = pd.DataFrame(adata.obsm[key_added], index=adata.obs_names)

modules/local/scanpy/pca/tests/main.nf.test.snap

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -46,11 +46,11 @@
4646
{
4747
"id": "test"
4848
},
49-
"test_pca.h5ad:md5,3ca58d1124f559c74cb665e8c64d4aa8"
49+
"test_pca.h5ad:md5,6dbd71048f45abe2ce5491e442d9fa6a"
5050
]
5151
],
5252
"1": [
53-
"X_test_pca.pkl:md5,816e2c831fad337086bf3ea1ed3aa91e"
53+
"X_test_pca.pkl:md5,258865322a4aa25d03ae1261c22398d7"
5454
],
5555
"2": [
5656
"versions.yml:md5,1645b3233d21217bd7e2f01acd4a5892"
@@ -60,18 +60,18 @@
6060
{
6161
"id": "test"
6262
},
63-
"test_pca.h5ad:md5,3ca58d1124f559c74cb665e8c64d4aa8"
63+
"test_pca.h5ad:md5,6dbd71048f45abe2ce5491e442d9fa6a"
6464
]
6565
],
6666
"obsm": [
67-
"X_test_pca.pkl:md5,816e2c831fad337086bf3ea1ed3aa91e"
67+
"X_test_pca.pkl:md5,258865322a4aa25d03ae1261c22398d7"
6868
],
6969
"versions": [
7070
"versions.yml:md5,1645b3233d21217bd7e2f01acd4a5892"
7171
]
7272
}
7373
],
74-
"timestamp": "2026-03-17T23:24:10.027934861",
74+
"timestamp": "2026-03-18T00:11:55.51875637",
7575
"meta": {
7676
"nf-test": "0.9.4",
7777
"nextflow": "25.10.4"

modules/local/scanpy/rankgenesgroups/templates/rank_genes_groups.py

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -66,8 +66,18 @@
6666

6767
if params.decimals is not None:
6868
for key, arr in rgg_dict.items():
69-
if hasattr(arr, 'dtype') and np.issubdtype(arr.dtype, np.floating):
69+
if not hasattr(arr, 'dtype'):
70+
continue
71+
if np.issubdtype(arr.dtype, np.floating):
7072
rgg_dict[key] = arr.round(params.decimals)
73+
elif arr.dtype.names:
74+
rounded = np.empty_like(arr)
75+
for field in arr.dtype.names:
76+
if np.issubdtype(arr.dtype[field], np.floating):
77+
rounded[field] = np.round(arr[field], params.decimals)
78+
else:
79+
rounded[field] = arr[field]
80+
rgg_dict[key] = rounded
7181

7282
pickle.dump(rgg_dict, open(f"{prefix}.pkl", "wb"))
7383
adata.write_h5ad(f"{prefix}.h5ad")

modules/local/scanpy/rankgenesgroups/tests/main.nf.test.snap

Lines changed: 18 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -99,17 +99,17 @@
9999
{
100100
"id": "test"
101101
},
102-
"test_characteristic_genes.h5ad:md5,677c4a5ba34237bf72cda6682cbdc07e"
102+
"test_characteristic_genes.h5ad:md5,bf7798a044e64c7b97c8bfc30bf6210e"
103103
]
104104
],
105105
"1": [
106-
"test_characteristic_genes.pkl:md5,ff7fa02ae03cb48171cdbdfde8a6a787"
106+
"test_characteristic_genes.pkl:md5,a0228ebd3d8a39708ef229ea44e0f6d2"
107107
],
108108
"2": [
109-
"test_characteristic_genes.png:md5,69674bff60ebf5a30ad987848122e94d"
109+
"test_characteristic_genes.png:md5,bfc0eb7ac2dde8b7cdf2a6c3f1ceb7f9"
110110
],
111111
"3": [
112-
"test_characteristic_genes_mqc.json:md5,062fb9c7a8b87abb57c0df58fc594366"
112+
"test_characteristic_genes_mqc.json:md5,a0d77121e129083658ed2623a1eaacb9"
113113
],
114114
"4": [
115115
"versions.yml:md5,a279f17d763d69028f9d84346e55dec8"
@@ -119,24 +119,24 @@
119119
{
120120
"id": "test"
121121
},
122-
"test_characteristic_genes.h5ad:md5,677c4a5ba34237bf72cda6682cbdc07e"
122+
"test_characteristic_genes.h5ad:md5,bf7798a044e64c7b97c8bfc30bf6210e"
123123
]
124124
],
125125
"multiqc_files": [
126-
"test_characteristic_genes_mqc.json:md5,062fb9c7a8b87abb57c0df58fc594366"
126+
"test_characteristic_genes_mqc.json:md5,a0d77121e129083658ed2623a1eaacb9"
127127
],
128128
"plots": [
129-
"test_characteristic_genes.png:md5,69674bff60ebf5a30ad987848122e94d"
129+
"test_characteristic_genes.png:md5,bfc0eb7ac2dde8b7cdf2a6c3f1ceb7f9"
130130
],
131131
"uns": [
132-
"test_characteristic_genes.pkl:md5,ff7fa02ae03cb48171cdbdfde8a6a787"
132+
"test_characteristic_genes.pkl:md5,a0228ebd3d8a39708ef229ea44e0f6d2"
133133
],
134134
"versions": [
135135
"versions.yml:md5,a279f17d763d69028f9d84346e55dec8"
136136
]
137137
}
138138
],
139-
"timestamp": "2026-03-17T23:26:00.934165192",
139+
"timestamp": "2026-03-17T23:56:52.251802191",
140140
"meta": {
141141
"nf-test": "0.9.4",
142142
"nextflow": "25.10.4"
@@ -150,17 +150,17 @@
150150
{
151151
"id": "test"
152152
},
153-
"test_characteristic_genes.h5ad:md5,8dbc9a12332ebda14003103a3a55020e"
153+
"test_characteristic_genes.h5ad:md5,fa7b34786202562e33237e5255e8279d"
154154
]
155155
],
156156
"1": [
157-
"test_characteristic_genes.pkl:md5,507099becdc39c4affd0a2226b772415"
157+
"test_characteristic_genes.pkl:md5,f59e1a67c2b6b477cc1b9c91b3d25b33"
158158
],
159159
"2": [
160-
"test_characteristic_genes.png:md5,091c6b6875293d9c81b20674a58c8b7c"
160+
"test_characteristic_genes.png:md5,33f910ab340a5b101142790e4e872295"
161161
],
162162
"3": [
163-
"test_characteristic_genes_mqc.json:md5,f6b3506ac755476f53f099d60f64b38d"
163+
"test_characteristic_genes_mqc.json:md5,6b56113e10bc16b000b44d70544e8dc0"
164164
],
165165
"4": [
166166
"versions.yml:md5,a279f17d763d69028f9d84346e55dec8"
@@ -170,24 +170,24 @@
170170
{
171171
"id": "test"
172172
},
173-
"test_characteristic_genes.h5ad:md5,8dbc9a12332ebda14003103a3a55020e"
173+
"test_characteristic_genes.h5ad:md5,fa7b34786202562e33237e5255e8279d"
174174
]
175175
],
176176
"multiqc_files": [
177-
"test_characteristic_genes_mqc.json:md5,f6b3506ac755476f53f099d60f64b38d"
177+
"test_characteristic_genes_mqc.json:md5,6b56113e10bc16b000b44d70544e8dc0"
178178
],
179179
"plots": [
180-
"test_characteristic_genes.png:md5,091c6b6875293d9c81b20674a58c8b7c"
180+
"test_characteristic_genes.png:md5,33f910ab340a5b101142790e4e872295"
181181
],
182182
"uns": [
183-
"test_characteristic_genes.pkl:md5,507099becdc39c4affd0a2226b772415"
183+
"test_characteristic_genes.pkl:md5,f59e1a67c2b6b477cc1b9c91b3d25b33"
184184
],
185185
"versions": [
186186
"versions.yml:md5,a279f17d763d69028f9d84346e55dec8"
187187
]
188188
}
189189
],
190-
"timestamp": "2026-03-17T23:29:41.947771775",
190+
"timestamp": "2026-03-18T00:00:28.14147485",
191191
"meta": {
192192
"nf-test": "0.9.4",
193193
"nextflow": "25.10.4"

modules/local/scanpy/umap/templates/umap.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@
2727
sc.tl.umap(adata, random_state=0)
2828

2929
if params.decimals is not None:
30-
adata.obsm["X_umap"] = np.round(adata.obsm["X_umap"], params.decimals)
30+
adata.obsm["X_umap"] = np.round(adata.obsm["X_umap"].astype(np.float64), params.decimals)
3131

3232
adata.write_h5ad(f"{prefix}.h5ad")
3333
df = pd.DataFrame(adata.obsm["X_umap"], index=adata.obs_names)

modules/local/scanpy/umap/tests/main.nf.test.snap

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -46,11 +46,11 @@
4646
{
4747
"id": "test"
4848
},
49-
"test.h5ad:md5,875c3cec7f4a3e3195b40aa57dfb7292"
49+
"test.h5ad:md5,96f5b14f183cfc68a63d54e7a3646da0"
5050
]
5151
],
5252
"1": [
53-
"X_test.pkl:md5,edec44f873811d1b7e8d2f9ae837abe5"
53+
"X_test.pkl:md5,efe43b460f23a575c205437ddc81cda1"
5454
],
5555
"2": [
5656
"versions.yml:md5,f7e77a6f6fe060c4158eb2a86e7c0754"
@@ -60,18 +60,18 @@
6060
{
6161
"id": "test"
6262
},
63-
"test.h5ad:md5,875c3cec7f4a3e3195b40aa57dfb7292"
63+
"test.h5ad:md5,96f5b14f183cfc68a63d54e7a3646da0"
6464
]
6565
],
6666
"obsm": [
67-
"X_test.pkl:md5,edec44f873811d1b7e8d2f9ae837abe5"
67+
"X_test.pkl:md5,efe43b460f23a575c205437ddc81cda1"
6868
],
6969
"versions": [
7070
"versions.yml:md5,f7e77a6f6fe060c4158eb2a86e7c0754"
7171
]
7272
}
7373
],
74-
"timestamp": "2026-03-17T23:25:54.550633754",
74+
"timestamp": "2026-03-18T00:13:31.728690332",
7575
"meta": {
7676
"nf-test": "0.9.4",
7777
"nextflow": "25.10.4"

0 commit comments

Comments
 (0)