pheval 0.6.4__py3-none-any.whl → 0.6.6__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.

Potentially problematic release.


This version of pheval might be problematic. Click here for more details.

@@ -6,7 +6,7 @@ import duckdb
6
6
  import polars as pl
7
7
 
8
8
  from pheval.analyse.benchmark_db_manager import write_table
9
- from pheval.analyse.benchmark_output_type import BenchmarkOutputType, BenchmarkOutputTypeEnum
9
+ from pheval.analyse.benchmark_output_type import BenchmarkOutputType, BenchmarkOutputTypeEnum, _get_unique_subset
10
10
  from pheval.analyse.binary_classification_curves import compute_curves
11
11
  from pheval.analyse.binary_classification_stats import compute_confusion_matrix
12
12
  from pheval.analyse.generate_plots import generate_plots
@@ -48,7 +48,7 @@ def scan_directory(run: RunConfig, benchmark_type: BenchmarkOutputType) -> pl.La
48
48
  else True
49
49
  )
50
50
  .sort("rank")
51
- .unique(subset=["file_path", *benchmark_type.columns], keep="first")
51
+ .unique(subset=_get_unique_subset(benchmark_type), keep="first")
52
52
  )
53
53
 
54
54
 
@@ -42,3 +42,12 @@ class BenchmarkOutputTypeEnum(Enum):
42
42
  ["disease_identifier", "mondo_identifier"],
43
43
  "pheval_disease_results",
44
44
  )
45
+
46
+
47
+ def _get_unique_subset(benchmark_type: BenchmarkOutputType) -> list[str]:
48
+ """
49
+ Determine which columns to use for uniqueness in benchmarking results.
50
+ """
51
+ if benchmark_type.prioritisation_type_string == "disease":
52
+ return ["file_path", "mondo_identifier"]
53
+ return ["file_path", *benchmark_type.columns]
@@ -1,7 +1,7 @@
1
1
  from itertools import combinations
2
2
 
3
3
  import polars as pl
4
- from duckdb.duckdb import DuckDBPyConnection
4
+ from duckdb import DuckDBPyConnection
5
5
 
6
6
  from pheval.analyse.benchmark_db_manager import write_table
7
7
  from pheval.analyse.benchmark_output_type import BenchmarkOutputType
@@ -1,7 +1,8 @@
1
- Metadata-Version: 2.3
1
+ Metadata-Version: 2.4
2
2
  Name: pheval
3
- Version: 0.6.4
3
+ Version: 0.6.6
4
4
  Summary:
5
+ License-File: LICENSE
5
6
  Author: Yasemin Bridges
6
7
  Author-email: y.bridges@qmul.ac.uk
7
8
  Requires-Python: >=3.10,<4.0.0
@@ -10,6 +11,7 @@ Classifier: Programming Language :: Python :: 3.10
10
11
  Classifier: Programming Language :: Python :: 3.11
11
12
  Classifier: Programming Language :: Python :: 3.12
12
13
  Classifier: Programming Language :: Python :: 3.13
14
+ Classifier: Programming Language :: Python :: 3.14
13
15
  Requires-Dist: class-resolver (>=0.4.2)
14
16
  Requires-Dist: click (>=8.1.3)
15
17
  Requires-Dist: deprecation (>=2.1.0)
@@ -1,12 +1,12 @@
1
1
  pheval/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
2
2
  pheval/analyse/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
3
- pheval/analyse/benchmark.py,sha256=Ktjovg3uEuaBi02AIiGX4OaZ73yAruwcsohhfBrDY44,6874
3
+ pheval/analyse/benchmark.py,sha256=Eiqwx0cJXkx4U3YOpt3LK55xyXyeF2MSYbu5o-O8Erk,6890
4
4
  pheval/analyse/benchmark_db_manager.py,sha256=zS1TI76YuV2_YXLipHLSyh-XDR5kTxyOwhRhHRFHfjQ,764
5
- pheval/analyse/benchmark_output_type.py,sha256=AG4HtEfscbDqESMBQ_M5Brnj8AmfrFxU6q7Gi2FOebw,1493
5
+ pheval/analyse/benchmark_output_type.py,sha256=J92VJq_VkMdROOGBjR9TmdxKLP27xtWyWs3eBUNVYDU,1822
6
6
  pheval/analyse/binary_classification_curves.py,sha256=b5YseLqv519DT7rsOweMRx7ElxYv9LcukXtLeAxflQE,4953
7
7
  pheval/analyse/binary_classification_stats.py,sha256=oWkaj-A2-2MaUIsJjlehwLApx-wGLx-TQ49v9O4lMAs,6910
8
8
  pheval/analyse/generate_plots.py,sha256=fyUMOgmbqYeYMPW843VR-CVArt3R75HgGbyq1i2XO7A,14489
9
- pheval/analyse/generate_rank_comparisons.py,sha256=BmksHkvJhpR0Rcrnc-r2_OF5L3ROHB8o3HuDSXjgeK4,1660
9
+ pheval/analyse/generate_rank_comparisons.py,sha256=MURu5fs15vQVUpY35qZ7ugiZqc7oz3qa8tGkgqIjfOc,1653
10
10
  pheval/analyse/rank_stats.py,sha256=io8UWTEUZfZQSnxXBjk2Z_1u6WWoxX0kSfEvxtpC-Kg,8241
11
11
  pheval/analyse/run_data_parser.py,sha256=da8-J9sSwyOUow80A2ETKdVP7GUX-zuEiiBix-M18Mo,3601
12
12
  pheval/cli.py,sha256=1kPhBYFSKjvPv9YcpknDj3Y7DZl5CA41ucqDRR7fAjk,1599
@@ -50,8 +50,8 @@ pheval/utils/logger.py,sha256=5DZl5uMltUDQorhkvg_B7_ZhFwApAmEkWneFIOKfRGQ,1566
50
50
  pheval/utils/phenopacket_utils.py,sha256=qt816uYkJKAe2MATFoulqEr78zg0-Z2Z_FxfEO9iSFE,26740
51
51
  pheval/utils/semsim_utils.py,sha256=tSDin3PwCdtMjtMXubIXTiGaCEFNz7iF4IngrjNHprI,6104
52
52
  pheval/utils/utils.py,sha256=T9zzqMlzY2hrcYn9ObatYgOHtKWTpWbW5nU0tTTcYxI,4489
53
- pheval-0.6.4.dist-info/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
54
- pheval-0.6.4.dist-info/METADATA,sha256=QNcXx4I83wCz7jEkPn1sbKC8phoFxYuil5Gzlb6JSIQ,6494
55
- pheval-0.6.4.dist-info/WHEEL,sha256=b4K_helf-jlQoXBBETfwnf4B04YC67LOev0jo4fX5m8,88
56
- pheval-0.6.4.dist-info/entry_points.txt,sha256=o9gSwDkvT4-lqKy4mlsftd1nzP9WUOXQCfnbqycURd0,81
57
- pheval-0.6.4.dist-info/RECORD,,
53
+ pheval-0.6.6.dist-info/METADATA,sha256=fXDOIB49Qaran6fWjgwWy-xsmnL7bIjlyH9_3d74lg0,6567
54
+ pheval-0.6.6.dist-info/WHEEL,sha256=zp0Cn7JsFoX2ATtOhtaFYIiE2rmFAD4OcMhtUki8W3U,88
55
+ pheval-0.6.6.dist-info/entry_points.txt,sha256=o9gSwDkvT4-lqKy4mlsftd1nzP9WUOXQCfnbqycURd0,81
56
+ pheval-0.6.6.dist-info/licenses/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
57
+ pheval-0.6.6.dist-info/RECORD,,
@@ -1,4 +1,4 @@
1
1
  Wheel-Version: 1.0
2
- Generator: poetry-core 2.1.3
2
+ Generator: poetry-core 2.2.1
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any