radMLBench 1.0__tar.gz → 1.2__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.
@@ -1,6 +1,6 @@
1
- Metadata-Version: 2.1
1
+ Metadata-Version: 2.4
2
2
  Name: radMLBench
3
- Version: 1.0
3
+ Version: 1.2
4
4
  Summary: A Python wrapper for the radMLBench data repository.
5
5
  Home-page: https://github.com/aydindemircioglu/radMLBench
6
6
  Author: Aydin Demircioglu
@@ -19,6 +19,18 @@ Requires-Dist: pyyaml>=5.2
19
19
  Requires-Dist: joblib>=0.12.0
20
20
  Requires-Dist: numpy>=1.18.0
21
21
  Requires-Dist: scikit-learn>=0.20.0
22
+ Dynamic: author
23
+ Dynamic: author-email
24
+ Dynamic: classifier
25
+ Dynamic: description
26
+ Dynamic: description-content-type
27
+ Dynamic: home-page
28
+ Dynamic: keywords
29
+ Dynamic: license
30
+ Dynamic: license-file
31
+ Dynamic: requires-dist
32
+ Dynamic: requires-python
33
+ Dynamic: summary
22
34
 
23
35
 
24
36
  A Python wrapper for the radMLBench data repository.
@@ -30,13 +30,13 @@ The complete list of datasets is
30
30
  | Dataset | Year | Modality | #Instances | #Features | Dimensionality | ClassBalance | DOI |
31
31
  |:----------------------------|-------:|:-----------|-------------:|------------:|-----------------:|---------------:|:---------------------------------------------|
32
32
  | Ahn2021 | 2021 | MRI | 114 | 108 | 0.96 | 55 | https://doi.org/10.1016/j.ejrad.2019.108642 |
33
- | Arita2018 | 2018 | MRI | 168 | 684 | 4.08 | 66 | https://doi.org/10.1038/s41598-018-30273-4 |
33
+ | Arita2018 | 2018 | MRI | 168 | 683 | 4.08 | 66 | https://doi.org/10.1038/s41598-018-30273-4 |
34
34
  | BraTS-2021 | 2021 | MRI | 577 | 4060 | 7.04 | 52 | https://doi.org/10.48550/arXiv.2107.02314 |
35
35
  | Brancato2023 | 2023 | MRI | 58 | 2380 | 41.07 | 60 | https://doi.org/10.3390/jcm12010140 |
36
36
  | C4KC-KiTS | 2021 | CT | 70 | 315 | 4.53 | 66 | https://doi.org/10.1016/j.media.2020.101821 |
37
37
  | Colorectal-Liver-Metastases | 2024 | CT | 90 | 525 | 5.86 | 84 | https://doi.org/10.1038/s41597-024-02981-2 |
38
38
  | Dai2023 | 2023 | CT | 119 | 851 | 7.17 | 26 | https://doi.org/10.7717/peerj.16230 |
39
- | Deng2023 | 2023 | MRI | 261 | 224 | 0.87 | 36 | https://doi.org/10.1007/s13246-023-01300-0 |
39
+ | Deng2023 | 2023 | MRI | 261 | 225 | 0.87 | 36 | https://doi.org/10.1007/s13246-023-01300-0 |
40
40
  | Dong2022 | 2022 | CT | 279 | 851 | 3.06 | 49 | https://doi.org/10.7717/peerj.14127 |
41
41
  | Fusco2022 | 2022 | MRI | 54 | 192 | 3.59 | 61 | https://doi.org/10.3390/curroncol29030159 |
42
42
  | Granata2021 | 2021 | CT | 88 | 580 | 6.61 | 47 | https://doi.org/10.3390/cancers13163992 |
@@ -124,6 +124,9 @@ contain the data and y the labels.
124
124
  The decorrelation example can be found in `examples/decorrelation`,
125
125
  to execute it, start `./examples/decorrelation/decorrelation.py`.
126
126
 
127
+ **NOTE**: Due to size problems, it is not possible to upload the .csv result files to github for the time being. Thus, to recreate the results, please rerun the experiment.
128
+
129
+
127
130
  The other example, TabFPN, can be found in `examples/tebpfn`.
128
131
  However, before executing this, one must install TabFPN (which in turn
129
132
  will install things like torch). One must also execute TabFPN once
@@ -136,15 +139,11 @@ put downloadFirst to False again to execute the experiment.
136
139
 
137
140
 
138
141
 
139
-
140
142
  ## Citing radMLBench
141
143
 
142
144
  If you use radMLBench in a scientific publication, please consider citing the paper:
143
145
 
144
- Aydin Demircioglu.
145
- [radMLBench: A radiomics dataset collection for benchmarking in radiomics](TBD).
146
- _TBD_ (2024).
147
-
148
- (This will update as soon as the manuscript is submitted).
149
-
150
- ```
146
+ Aydin Demircioglu.
147
+ [radMLBench: A radiomics dataset collection for benchmarking in radiomics](https://doi.org/10.1016/j.compbiomed.2024.109140).
148
+ _Computers in Biology and Medicine_, Volume 182, 2024, 109140.
149
+ ISSN 0010-4825.
@@ -26,7 +26,7 @@ Arita2018:
26
26
  dataset: Arita2018
27
27
  download_source: https://www.nature.com/articles/s41598-018-30273-4#Sec18
28
28
  modality: MRI
29
- nFeatures: 684
29
+ nFeatures: 683
30
30
  nInstances: 168
31
31
  outcome: IDH mutation status
32
32
  pathology: Glioma
@@ -142,7 +142,7 @@ Deng2023:
142
142
  dataset: Deng2023
143
143
  download_source: https://github.com/BboyT/BM_NSCLC_subpathology
144
144
  modality: MRI
145
- nFeatures: 224
145
+ nFeatures: 225
146
146
  nInstances: 261
147
147
  outcome: Pathological diagnosis
148
148
  pathology: NSCLC
@@ -25,7 +25,12 @@ SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
25
25
  import pandas as pd
26
26
  import numpy as np
27
27
  import os
28
- from pkg_resources import resource_filename
28
+
29
+ try:
30
+ from importlib.resources import files
31
+ except ImportError: # Python <3.9
32
+ from importlib_resources import files
33
+
29
34
  import requests
30
35
  import warnings
31
36
  import subprocess
@@ -167,24 +172,16 @@ def getCVSplits(dataset, num_splits=10, num_repeats=10):
167
172
 
168
173
  def readMetaData ():
169
174
  """Internal. Reads metadata into variable"""
170
- def read_yaml(file_path):
171
- try:
172
- with open(file_path, 'r') as stream:
173
- data = yaml.safe_load(stream)
174
- return data
175
- except Exception as e:
176
- print ('Unable to read metadata file for all dataset!')
177
- print ('Error', e)
178
- return None
179
-
180
175
  global metaData
181
176
  if metaData is None:
182
- #print ("Reading metadata.")
183
- package_dir = resource_filename('radMLBench', '')
184
- metadata_path = os.path.join(package_dir, 'metadata.yaml')
185
- metaData = read_yaml(metadata_path)
186
- pass
187
-
177
+ try:
178
+ ref = files('radMLBench').joinpath('metadata.yaml')
179
+ with ref.open('r') as stream:
180
+ metaData = yaml.safe_load(stream)
181
+ except Exception as e:
182
+ print('Unable to read metadata file for all dataset!')
183
+ print('Error', e)
184
+ metaData = None
188
185
 
189
186
 
190
187
 
@@ -1,6 +1,6 @@
1
- Metadata-Version: 2.1
1
+ Metadata-Version: 2.4
2
2
  Name: radMLBench
3
- Version: 1.0
3
+ Version: 1.2
4
4
  Summary: A Python wrapper for the radMLBench data repository.
5
5
  Home-page: https://github.com/aydindemircioglu/radMLBench
6
6
  Author: Aydin Demircioglu
@@ -19,6 +19,18 @@ Requires-Dist: pyyaml>=5.2
19
19
  Requires-Dist: joblib>=0.12.0
20
20
  Requires-Dist: numpy>=1.18.0
21
21
  Requires-Dist: scikit-learn>=0.20.0
22
+ Dynamic: author
23
+ Dynamic: author-email
24
+ Dynamic: classifier
25
+ Dynamic: description
26
+ Dynamic: description-content-type
27
+ Dynamic: home-page
28
+ Dynamic: keywords
29
+ Dynamic: license
30
+ Dynamic: license-file
31
+ Dynamic: requires-dist
32
+ Dynamic: requires-python
33
+ Dynamic: summary
22
34
 
23
35
 
24
36
  A Python wrapper for the radMLBench data repository.
@@ -5,11 +5,12 @@ from setuptools import setup, find_packages
5
5
 
6
6
  setup(
7
7
  name='radMLBench',
8
- version='1.0',
8
+ version='1.2',
9
9
  author='Aydin Demircioglu',
10
10
  author_email=('aydin.demircioglu@uk-essen.de'),
11
11
  packages=find_packages(),
12
- package_data={'radMLBench': ['./metadata.yaml']},
12
+ package_data={'radMLBench': ['metadata.yaml']},
13
+ python_required=">=3.9",
13
14
  include_package_data=True,
14
15
  url='https://github.com/aydindemircioglu/radMLBench',
15
16
  license="MIT",
File without changes
File without changes