junifer 0.0.3.dev186__py3-none-any.whl → 0.0.4.dev8__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.
junifer/_version.py CHANGED
@@ -1,4 +1,4 @@
1
1
  # file generated by setuptools_scm
2
2
  # don't change, don't track in version control
3
- __version__ = version = '0.0.3.dev186'
4
- __version_tuple__ = version_tuple = (0, 0, 3, 'dev186')
3
+ __version__ = version = '0.0.4.dev8'
4
+ __version_tuple__ = version_tuple = (0, 0, 4, 'dev8')
junifer/data/masks.py CHANGED
@@ -213,7 +213,7 @@ def get_mask(
213
213
  all_masks = []
214
214
  for t_mask in true_masks:
215
215
  if isinstance(t_mask, dict):
216
- mask_name = list(t_mask.keys())[0]
216
+ mask_name = next(iter(t_mask.keys()))
217
217
  mask_params = t_mask[mask_name]
218
218
  else:
219
219
  mask_name = t_mask
@@ -411,7 +411,7 @@ def test_get_mask_multiple(
411
411
  computed = get_mask(masks=junifer_masks, target_data=input["BOLD"])
412
412
 
413
413
  masks_names = [
414
- list(x.keys())[0] if isinstance(x, dict) else x for x in masks
414
+ next(iter(x.keys())) if isinstance(x, dict) else x for x in masks
415
415
  ]
416
416
 
417
417
  mask_funcs = [
@@ -197,7 +197,7 @@ def test_marker_collection_storage(tmp_path: Path) -> None:
197
197
 
198
198
  features = storage.list_features()
199
199
  assert len(features) == 3
200
- feature_md5 = list(features.keys())[0]
200
+ feature_md5 = next(iter(features.keys()))
201
201
  t_feature = storage.read_df(feature_md5=feature_md5)
202
202
  fname = "gmd_schaefer100x7_mean"
203
203
  t_data = out[fname]["VBM_GM"]["data"] # type: ignore
@@ -114,7 +114,8 @@ class PandasBaseFeatureStorage(BaseFeatureStorage):
114
114
  if len(elem_idx) == 1:
115
115
  # Create normal index for vector
116
116
  index = pd.Index(
117
- data=list(elem_idx.values())[0], name=list(elem_idx.keys())[0]
117
+ data=next(iter(elem_idx.values())),
118
+ name=next(iter(elem_idx.keys())),
118
119
  )
119
120
  else:
120
121
  # Create multiindex for timeseries
@@ -175,7 +175,7 @@ def test_store_metadata_and_list_features(tmp_path: Path) -> None:
175
175
  # List the stored features
176
176
  features = storage.list_features()
177
177
  # Get the first MD5
178
- feature_md5 = list(features.keys())[0]
178
+ feature_md5 = next(iter(features.keys()))
179
179
  # Check the MD5
180
180
  assert meta_md5 == feature_md5
181
181
 
@@ -335,7 +335,7 @@ def test_store_df_and_read_df(tmp_path: Path) -> None:
335
335
  with pytest.raises(ValueError, match="Only one"):
336
336
  storage.read_df(feature_name="wrong_name", feature_md5="wrong_md5")
337
337
  # Get MD5 hash of features
338
- feature_md5 = list(features.keys())[0]
338
+ feature_md5 = next(iter(features.keys()))
339
339
  assert "feature_md5" == feature_md5
340
340
  # Check for key
341
341
  assert "BOLD_markername" == features[feature_md5]["name"]
@@ -373,7 +373,7 @@ def test_store_metadata(tmp_path: Path) -> None:
373
373
  meta_md5=meta_md5, element=element_to_store, meta=meta_to_store
374
374
  )
375
375
  features = storage.list_features()
376
- feature_md5 = list(features.keys())[0]
376
+ feature_md5 = next(iter(features.keys()))
377
377
  assert meta_md5 == feature_md5
378
378
 
379
379
 
@@ -474,7 +474,7 @@ def test_store_matrix(tmp_path: Path) -> None:
474
474
  stored_names = [f"{i}~{j}" for i in row_names for j in col_names]
475
475
 
476
476
  features = storage.list_features()
477
- feature_md5 = list(features.keys())[0]
477
+ feature_md5 = next(iter(features.keys()))
478
478
  assert "BOLD_fc" == features[feature_md5]["name"]
479
479
 
480
480
  read_df = storage.read_df(feature_md5=feature_md5)
@@ -498,7 +498,7 @@ def test_store_matrix(tmp_path: Path) -> None:
498
498
  for j in range(data.shape[1])
499
499
  ]
500
500
  features = storage.list_features()
501
- feature_md5 = list(features.keys())[0]
501
+ feature_md5 = next(iter(features.keys()))
502
502
  assert "BOLD_fc" == features[feature_md5]["name"]
503
503
  read_df = storage.read_df(feature_md5=feature_md5)
504
504
  assert list(read_df.columns) == stored_names
@@ -563,7 +563,7 @@ def test_store_matrix(tmp_path: Path) -> None:
563
563
  ]
564
564
 
565
565
  features = storage.list_features()
566
- feature_md5 = list(features.keys())[0]
566
+ feature_md5 = next(iter(features.keys()))
567
567
  assert "BOLD_fc" == features[feature_md5]["name"]
568
568
  read_df = storage.read_df(feature_md5=feature_md5)
569
569
  assert list(read_df.columns) == stored_names
@@ -595,7 +595,7 @@ def test_store_matrix(tmp_path: Path) -> None:
595
595
  ]
596
596
 
597
597
  features = storage.list_features()
598
- feature_md5 = list(features.keys())[0]
598
+ feature_md5 = next(iter(features.keys()))
599
599
  assert "BOLD_fc" == features[feature_md5]["name"]
600
600
  read_df = storage.read_df(feature_md5=feature_md5)
601
601
  assert list(read_df.columns) == stored_names
@@ -632,7 +632,7 @@ def test_store_matrix(tmp_path: Path) -> None:
632
632
  ]
633
633
 
634
634
  features = storage.list_features()
635
- feature_md5 = list(features.keys())[0]
635
+ feature_md5 = next(iter(features.keys()))
636
636
  assert "BOLD_fc" == features[feature_md5]["name"]
637
637
  read_df = storage.read_df(feature_md5=feature_md5)
638
638
  assert list(read_df.columns) == stored_names
@@ -663,7 +663,7 @@ def test_store_matrix(tmp_path: Path) -> None:
663
663
  ]
664
664
 
665
665
  features = storage.list_features()
666
- feature_md5 = list(features.keys())[0]
666
+ feature_md5 = next(iter(features.keys()))
667
667
  assert "BOLD_fc" == features[feature_md5]["name"]
668
668
  read_df = storage.read_df(feature_md5=feature_md5)
669
669
  assert list(read_df.columns) == stored_names
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: junifer
3
- Version: 0.0.3.dev186
3
+ Version: 0.0.4.dev8
4
4
  Summary: JUelich NeuroImaging FEature extractoR
5
5
  Author-email: Fede Raimondo <f.raimondo@fz-juelich.de>, Synchon Mandal <s.mandal@fz-juelich.de>
6
6
  Maintainer-email: Fede Raimondo <f.raimondo@fz-juelich.de>, Synchon Mandal <s.mandal@fz-juelich.de>
@@ -65,10 +65,11 @@ Requires-Dist: bctpy (==0.6.0) ; extra == 'onthefly'
65
65
  [![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg?style=flat-square)](https://github.com/psf/black)
66
66
  [![Ruff](https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/charliermarsh/ruff/main/assets/badge/v2.json)](https://github.com/charliermarsh/ruff)
67
67
  [![pre-commit](https://img.shields.io/badge/pre--commit-enabled-brightgreen?logo=pre-commit)](https://github.com/pre-commit/pre-commit)
68
+ [![DOI](https://zenodo.org/badge/DOI/10.5281/zenodo.8176570.svg)](https://doi.org/10.5281/zenodo.8176570)
68
69
 
69
70
  ## About
70
71
 
71
- junifer is a data handling and feature extraction library targeted towards neuroimaging data specifically functional MRI data.
72
+ `junifer` is a data handling and feature extraction library targeted towards neuroimaging data specifically functional MRI data.
72
73
 
73
74
  It is currently being developed and maintained at the [Applied Machine Learning](https://www.fz-juelich.de/en/inm/inm-7/research-groups/applied-machine-learning-aml) group at [Forschungszentrum Juelich](https://www.fz-juelich.de/en), Germany. Although the library is designed for people working at [Institute of Neuroscience and Medicine - Brain and Behaviour (INM-7)](https://www.fz-juelich.de/en/inm/inm-7), it is designed to be as modular as possible thus enabling others to extend it easily.
74
75
 
@@ -109,12 +110,12 @@ conda install -c conda-forge junifer
109
110
 
110
111
  ## Citation
111
112
 
112
- If you use junifer in a scientific publication, we would appreciate if you cite our work. Currently, we do not have a publication, so feel free to use the project [URL](https://juaml.github.io/junifer).
113
+ If you use `junifer` in a scientific publication, we would appreciate if you cite our work. Currently, we do not have a publication, so feel free to use the project's [Zenodo URL](https://doi.org/10.5281/zenodo.8176569).
113
114
 
114
115
  ## Funding
115
116
 
116
117
  We thank the [Helmholtz Imaging Platform](https://helmholtz-imaging.de/) and
117
- [SMHB](https://www.fz-juelich.de/en/smhb) for supporting development of Junifer.
118
+ [SMHB](https://www.fz-juelich.de/en/smhb) for supporting development of `junifer`.
118
119
  (The funding sources had no role in the design, implementation and evaluation of the pipeline.)
119
120
 
120
121
  ## Contribution
@@ -126,7 +127,7 @@ Contributions are welcome and greatly appreciated. Please read the [guidelines](
126
127
  junifer is released under the AGPL v3 license:
127
128
 
128
129
  junifer, FZJuelich AML neuroimaging feature extraction library.
129
- Copyright (C) 2022, authors of junifer.
130
+ Copyright (C) 2023, authors of junifer.
130
131
 
131
132
  This program is free software: you can redistribute it and/or modify
132
133
  it under the terms of the GNU Affero General Public License as published by
@@ -1,5 +1,5 @@
1
1
  junifer/__init__.py,sha256=x1UR2jUcrUdm2HNl-3Qvyi4UUrU6ms5qm2qcmNY7zZk,391
2
- junifer/_version.py,sha256=xYaygwsoOVGnfKSSbAQ2gIdNJ6kT7a3YwiHoHwUxT2Y,177
2
+ junifer/_version.py,sha256=E4uKRriX8g1SlYHfxA-JdKnnyeDdjAOGVIjgZH8igQ0,173
3
3
  junifer/stats.py,sha256=KUX4jJcLWnlE34coet8EkdFypFd-td4Vtpx5LvlomVs,5879
4
4
  junifer/api/__init__.py,sha256=YILu9M7SC0Ri4CVd90fELH2OnK_gvCYAXCoqBNCFE8E,257
5
5
  junifer/api/cli.py,sha256=epPGiMU9szF0Dbv-_ty3hxxWPUd8KM-gqQI10TJEl2Y,9843
@@ -34,7 +34,7 @@ junifer/configs/juseless/datagrabbers/tests/test_ucla.py,sha256=e-jdvcZ9B0mka6_5
34
34
  junifer/configs/juseless/datagrabbers/tests/test_ukb_vbm.py,sha256=b9hjc1mgO--PSRC3id2EzzfE2yWNsuZ2UI47a6sfGZU,1025
35
35
  junifer/data/__init__.py,sha256=UKoiW2DfuNgWlpdqSVPWAED1tSMl9ygUHMsCnFXPp2A,507
36
36
  junifer/data/coordinates.py,sha256=mPiaOdw3HY5c_5geGiQbHjKCTvj2YVTXie0Y6HLFk_I,4896
37
- junifer/data/masks.py,sha256=oRvKzbm4Z4q3Dz1PdnsuS4t08x70s1fpbEgPeFKuy2Y,11277
37
+ junifer/data/masks.py,sha256=SYt2EJCUCw7KAl8nBK5fRFRonrfIVQn-DH6aQsnr7vE,11280
38
38
  junifer/data/parcellations.py,sha256=REmkmRwWH9IrJJO_BhKq-xl4Z6IcdSFfEpYKTKLaB8k,48818
39
39
  junifer/data/utils.py,sha256=K9quLIoWRmm2QFM8Rdy_5bYsWb_XhL0l5Uq_1Sie0kA,1274
40
40
  junifer/data/VOIs/meta/CogAC_VOIs.txt,sha256=Sr5_E712OLdeQRyUcDNM0wLBvZIyO6gc9Q7KkyJHX1A,398
@@ -59,7 +59,7 @@ junifer/data/masks/vickery-patil/CAT12_IXI555_MNI152_TMP_GS_GMprob0.2_clean_3mm.
59
59
  junifer/data/masks/vickery-patil/GMprob0.2_cortex_3mm_NA_rm.nii.gz,sha256=jfMe_4H9XEnArYms5bSQbqS2V1_HbLHTfI5amQa_Pes,8700
60
60
  junifer/data/tests/test_coordinates.py,sha256=RCYOuaAjs2wqPeFHX-l9Bryt5Zw5mOIV0WpsH891RwA,3240
61
61
  junifer/data/tests/test_data_utils.py,sha256=Vy7x8zaHws5hmn92PKSv3H38hU2kamOpyaH6nG_NNpw,1086
62
- junifer/data/tests/test_masks.py,sha256=sJ_rXAPddQ_2SAGvew1FEEMcLwy0NEfQv8TsCvgA2pA,13266
62
+ junifer/data/tests/test_masks.py,sha256=uhY3dm0CGbKTMs8hAMJxQx0KMcl9qmfaee3guBrdYas,13269
63
63
  junifer/data/tests/test_parcellations.py,sha256=3JCTuaT4Ugs3t_EX5XWbr52bSaMSnoROF81Nthmn9Nc,31361
64
64
  junifer/datagrabber/__init__.py,sha256=xKMQMjqoWul13YluGTLLMBgKahUg5jJKi4phPih3XJU,634
65
65
  junifer/datagrabber/base.py,sha256=6JoIDBCWXCIQdjSg6OIbdrqbQKzV6_zBTk0Zs1Wj6_Y,4622
@@ -140,7 +140,7 @@ junifer/markers/temporal_snr/temporal_snr_spheres.py,sha256=VoxVA_b48Ppf7P6cxYq0
140
140
  junifer/markers/temporal_snr/tests/test_temporal_snr_base.py,sha256=KRln5ibLTJJQ_f3pnioATfwyhK5htGc2o2J7CPcoyfs,426
141
141
  junifer/markers/temporal_snr/tests/test_temporal_snr_parcels.py,sha256=KCfJFpg6oXR4hs1yGOrdV8xSh6zJi7dv1o75Lraq_nc,1594
142
142
  junifer/markers/temporal_snr/tests/test_temporal_snr_spheres.py,sha256=rbfL4vQMtK_PbeIlHccp62wj9Ue97rJUxpupljmlkJs,1833
143
- junifer/markers/tests/test_collection.py,sha256=HQvW6LNB2vSSSAImBU6paVOanyGJBY500_Yf9IrLJ_M,6850
143
+ junifer/markers/tests/test_collection.py,sha256=nsf2EhU6bBtO2g4uj_99E7tPWhV6IoL9mO3LmUArIZ8,6853
144
144
  junifer/markers/tests/test_ets_rss.py,sha256=uVNcSWh6TYCtwZACcununV38IBXY5loBaP7pBcDnwL4,2619
145
145
  junifer/markers/tests/test_marker_utils.py,sha256=SR3ADWI3uGv4ozYqVu-rMZnJVqP6JnjLBgo6qUm16Wk,1478
146
146
  junifer/markers/tests/test_markers_base.py,sha256=cbuCeMmjyFMP1ea6J6XRsBQo8CivQ41ooABiT1Snj2k,3076
@@ -166,12 +166,12 @@ junifer/preprocess/tests/test_preprocess_base.py,sha256=UHuH_YOK7AU3AfApWqgB6YLG
166
166
  junifer/storage/__init__.py,sha256=QlzBw9UrRhmg_f7zQVas9h313u3sfZIBicA3_0Skm4M,337
167
167
  junifer/storage/base.py,sha256=LtiB3cKfQQKw0gfoWM_H8PlA3sQlxosbzGxA_sA9RP8,9459
168
168
  junifer/storage/hdf5.py,sha256=7JbLUrOLI0f7WEGMSv-YO9AJGi1-rAX1sqGU6X7NFbE,35520
169
- junifer/storage/pandas_base.py,sha256=UpMXztwDVSTN3FN_4_73wtxycX8FfghEJ3KZmAZloXE,7450
169
+ junifer/storage/pandas_base.py,sha256=Qu3Az-xEaFftsiZwordONnOF2UBO1JgkrP8tmxhXUN4,7473
170
170
  junifer/storage/sqlite.py,sha256=6pcxC2RN6YHq2BePvcpORoMk9mJQ0bFfv1IY2YYGmio,21243
171
171
  junifer/storage/utils.py,sha256=amE5AQI3vWoMRUV6pwwLcRgl4sL0ooYjp59JpuHHk6U,7257
172
- junifer/storage/tests/test_hdf5.py,sha256=4CunM2xwhPuci4Z78Q7F0QA2Ocu-sgpzokjVhfauzN0,29334
172
+ junifer/storage/tests/test_hdf5.py,sha256=R-3kXMwAMsmInaS2cytjbOmKh4riQc5WJKbYkH3wZkY,29337
173
173
  junifer/storage/tests/test_pandas_base.py,sha256=y_TfUGpuXkj_39yVon3rMDxMeBrZXs58ZW6OSty5LNw,4058
174
- junifer/storage/tests/test_sqlite.py,sha256=kua5BqNKpUG1MTqldHLNiEcfomX6RS3dzDA_KlbJE4g,28294
174
+ junifer/storage/tests/test_sqlite.py,sha256=JPfE6r34o86XkKaB6yjMVmO_2vUV40DjsaHICagUtjk,28318
175
175
  junifer/storage/tests/test_storage_base.py,sha256=YzgfspuggzXejyPIoRCPST3ZzH9Pi7dgl0IHN7kynXM,3071
176
176
  junifer/storage/tests/test_utils.py,sha256=kpnp1IozQGKHXCpZbg2yGBe_XtDfsL8mfJGE6a9vYyk,11853
177
177
  junifer/testing/__init__.py,sha256=5rCgJOF9m2du2u4Qsaze9SZ1oDjKptn6-QbN7VPhD1I,235
@@ -190,10 +190,10 @@ junifer/utils/fs.py,sha256=Jd9AoV2fIF7pT7KhXsn8T1O1fJ1_SFZgaFuOBAM7DG8,460
190
190
  junifer/utils/logging.py,sha256=phBwOFaK6ejqbSjkCSAkZhhdo4sr01GdVZmJIL8t-Lw,8994
191
191
  junifer/utils/tests/test_fs.py,sha256=WQS7cKlKEZ742CIuiOYYpueeAhY9PqlastfDVpVVtvE,923
192
192
  junifer/utils/tests/test_logging.py,sha256=l8oo-AiBV7H6_IzlsNcj__cLeZBUvgIGoaMszD9VaJg,7754
193
- junifer-0.0.3.dev186.dist-info/AUTHORS.rst,sha256=rmULKpchpSol4ExWFdm-qu4fkpSZPYqIESVJBZtGb6E,163
194
- junifer-0.0.3.dev186.dist-info/LICENSE.md,sha256=MqCnOBu8uXsEOzRZWh9EBVfVz-kE9NkXcLCrtGXo2yU,34354
195
- junifer-0.0.3.dev186.dist-info/METADATA,sha256=Uqcm_sDbWts6RgMsVXnEYIGOLXbdb8iIoMXZsHLG_jU,6706
196
- junifer-0.0.3.dev186.dist-info/WHEEL,sha256=pkctZYzUS4AYVn6dJ-7367OJZivF2e8RA9b_ZBjif18,92
197
- junifer-0.0.3.dev186.dist-info/entry_points.txt,sha256=DxFvKq0pOqRunAK0FxwJcoDfV1-dZvsFDpD5HRqSDhw,48
198
- junifer-0.0.3.dev186.dist-info/top_level.txt,sha256=4bAq1R2QFQ4b3hohjys2JBvxrl0GKk5LNFzYvz9VGcA,8
199
- junifer-0.0.3.dev186.dist-info/RECORD,,
193
+ junifer-0.0.4.dev8.dist-info/AUTHORS.rst,sha256=rmULKpchpSol4ExWFdm-qu4fkpSZPYqIESVJBZtGb6E,163
194
+ junifer-0.0.4.dev8.dist-info/LICENSE.md,sha256=MqCnOBu8uXsEOzRZWh9EBVfVz-kE9NkXcLCrtGXo2yU,34354
195
+ junifer-0.0.4.dev8.dist-info/METADATA,sha256=QYFLL5lyVIGdW1U9PZ1wMK_ndpOYvZ4fXL3EtDKRGAQ,6832
196
+ junifer-0.0.4.dev8.dist-info/WHEEL,sha256=AtBG6SXL3KF_v0NxLf0ehyVOh0cold-JbJYXNGorC6Q,92
197
+ junifer-0.0.4.dev8.dist-info/entry_points.txt,sha256=DxFvKq0pOqRunAK0FxwJcoDfV1-dZvsFDpD5HRqSDhw,48
198
+ junifer-0.0.4.dev8.dist-info/top_level.txt,sha256=4bAq1R2QFQ4b3hohjys2JBvxrl0GKk5LNFzYvz9VGcA,8
199
+ junifer-0.0.4.dev8.dist-info/RECORD,,
@@ -1,5 +1,5 @@
1
1
  Wheel-Version: 1.0
2
- Generator: bdist_wheel (0.40.0)
2
+ Generator: bdist_wheel (0.41.0)
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any
5
5