pheval 0.6.1__tar.gz → 0.6.3__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.

Potentially problematic release.


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

Files changed (56) hide show
  1. {pheval-0.6.1 → pheval-0.6.3}/PKG-INFO +1 -1
  2. {pheval-0.6.1 → pheval-0.6.3}/pyproject.toml +1 -1
  3. {pheval-0.6.1 → pheval-0.6.3}/src/pheval/analyse/benchmark.py +4 -0
  4. {pheval-0.6.1 → pheval-0.6.3}/src/pheval/analyse/run_data_parser.py +9 -0
  5. {pheval-0.6.1 → pheval-0.6.3}/src/pheval/post_processing/phenopacket_truth_set.py +3 -1
  6. {pheval-0.6.1 → pheval-0.6.3}/src/pheval/post_processing/post_processing.py +4 -1
  7. {pheval-0.6.1 → pheval-0.6.3}/LICENSE +0 -0
  8. {pheval-0.6.1 → pheval-0.6.3}/README.md +0 -0
  9. {pheval-0.6.1 → pheval-0.6.3}/src/pheval/__init__.py +0 -0
  10. {pheval-0.6.1 → pheval-0.6.3}/src/pheval/analyse/__init__.py +0 -0
  11. {pheval-0.6.1 → pheval-0.6.3}/src/pheval/analyse/benchmark_db_manager.py +0 -0
  12. {pheval-0.6.1 → pheval-0.6.3}/src/pheval/analyse/benchmark_output_type.py +0 -0
  13. {pheval-0.6.1 → pheval-0.6.3}/src/pheval/analyse/binary_classification_curves.py +0 -0
  14. {pheval-0.6.1 → pheval-0.6.3}/src/pheval/analyse/binary_classification_stats.py +0 -0
  15. {pheval-0.6.1 → pheval-0.6.3}/src/pheval/analyse/generate_plots.py +0 -0
  16. {pheval-0.6.1 → pheval-0.6.3}/src/pheval/analyse/generate_rank_comparisons.py +0 -0
  17. {pheval-0.6.1 → pheval-0.6.3}/src/pheval/analyse/rank_stats.py +0 -0
  18. {pheval-0.6.1 → pheval-0.6.3}/src/pheval/cli.py +0 -0
  19. {pheval-0.6.1 → pheval-0.6.3}/src/pheval/cli_pheval.py +0 -0
  20. {pheval-0.6.1 → pheval-0.6.3}/src/pheval/cli_pheval_utils.py +0 -0
  21. {pheval-0.6.1 → pheval-0.6.3}/src/pheval/config_parser.py +0 -0
  22. {pheval-0.6.1 → pheval-0.6.3}/src/pheval/implementations/__init__.py +0 -0
  23. {pheval-0.6.1 → pheval-0.6.3}/src/pheval/implementations/pheval_class_resolver.py +0 -0
  24. {pheval-0.6.1 → pheval-0.6.3}/src/pheval/infra/__init__.py +0 -0
  25. {pheval-0.6.1 → pheval-0.6.3}/src/pheval/infra/exomiserdb.py +0 -0
  26. {pheval-0.6.1 → pheval-0.6.3}/src/pheval/post_processing/__init__.py +0 -0
  27. {pheval-0.6.1 → pheval-0.6.3}/src/pheval/post_processing/mondo_mapping.py +0 -0
  28. {pheval-0.6.1 → pheval-0.6.3}/src/pheval/post_processing/validate_result_format.py +0 -0
  29. {pheval-0.6.1 → pheval-0.6.3}/src/pheval/prepare/__init__.py +0 -0
  30. {pheval-0.6.1 → pheval-0.6.3}/src/pheval/prepare/create_noisy_phenopackets.py +0 -0
  31. {pheval-0.6.1 → pheval-0.6.3}/src/pheval/prepare/create_spiked_vcf.py +0 -0
  32. {pheval-0.6.1 → pheval-0.6.3}/src/pheval/prepare/custom_exceptions.py +0 -0
  33. {pheval-0.6.1 → pheval-0.6.3}/src/pheval/prepare/prepare_corpus.py +0 -0
  34. {pheval-0.6.1 → pheval-0.6.3}/src/pheval/prepare/update_phenopacket.py +0 -0
  35. {pheval-0.6.1 → pheval-0.6.3}/src/pheval/resources/alternate_ouputs/CADA_results.txt +0 -0
  36. {pheval-0.6.1 → pheval-0.6.3}/src/pheval/resources/alternate_ouputs/DeepPVP_results.txt +0 -0
  37. {pheval-0.6.1 → pheval-0.6.3}/src/pheval/resources/alternate_ouputs/OVA_results.txt +0 -0
  38. {pheval-0.6.1 → pheval-0.6.3}/src/pheval/resources/alternate_ouputs/Phen2Gene_results.json +0 -0
  39. {pheval-0.6.1 → pheval-0.6.3}/src/pheval/resources/alternate_ouputs/Phenolyzer_results.txt +0 -0
  40. {pheval-0.6.1 → pheval-0.6.3}/src/pheval/resources/alternate_ouputs/lirical_results.tsv +0 -0
  41. {pheval-0.6.1 → pheval-0.6.3}/src/pheval/resources/alternate_ouputs/svanna_results.tsv +0 -0
  42. {pheval-0.6.1 → pheval-0.6.3}/src/pheval/resources/hgnc_complete_set.txt +0 -0
  43. {pheval-0.6.1 → pheval-0.6.3}/src/pheval/resources/metadata.json +0 -0
  44. {pheval-0.6.1 → pheval-0.6.3}/src/pheval/resources/mondo.sssom.tsv +0 -0
  45. {pheval-0.6.1 → pheval-0.6.3}/src/pheval/run_metadata.py +0 -0
  46. {pheval-0.6.1 → pheval-0.6.3}/src/pheval/runners/__init__.py +0 -0
  47. {pheval-0.6.1 → pheval-0.6.3}/src/pheval/runners/runner.py +0 -0
  48. {pheval-0.6.1 → pheval-0.6.3}/src/pheval/utils/__init__.py +0 -0
  49. {pheval-0.6.1 → pheval-0.6.3}/src/pheval/utils/docs_gen.py +0 -0
  50. {pheval-0.6.1 → pheval-0.6.3}/src/pheval/utils/docs_gen.sh +0 -0
  51. {pheval-0.6.1 → pheval-0.6.3}/src/pheval/utils/exomiser.py +0 -0
  52. {pheval-0.6.1 → pheval-0.6.3}/src/pheval/utils/file_utils.py +0 -0
  53. {pheval-0.6.1 → pheval-0.6.3}/src/pheval/utils/logger.py +0 -0
  54. {pheval-0.6.1 → pheval-0.6.3}/src/pheval/utils/phenopacket_utils.py +0 -0
  55. {pheval-0.6.1 → pheval-0.6.3}/src/pheval/utils/semsim_utils.py +0 -0
  56. {pheval-0.6.1 → pheval-0.6.3}/src/pheval/utils/utils.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: pheval
3
- Version: 0.6.1
3
+ Version: 0.6.3
4
4
  Summary:
5
5
  Author: Yasemin Bridges
6
6
  Author-email: y.bridges@qmul.ac.uk
@@ -1,6 +1,6 @@
1
1
  [tool.poetry]
2
2
  name = "pheval"
3
- version = "0.6.1"
3
+ version = "0.6.3"
4
4
  description = ""
5
5
  authors = ["Yasemin Bridges <y.bridges@qmul.ac.uk>",
6
6
  "Julius Jacobsen <j.jacobsen@qmul.ac.uk>",
@@ -1,3 +1,4 @@
1
+ import sys
1
2
  import time
2
3
  from pathlib import Path
3
4
  from typing import List, Tuple
@@ -135,6 +136,9 @@ def benchmark_runs(benchmark_config_file: Path) -> None:
135
136
  start_time = time.perf_counter()
136
137
  logger.info("Initiated benchmarking process.")
137
138
  config = parse_run_config(benchmark_config_file)
139
+ if Path(f"{config.benchmark_name}.duckdb").exists():
140
+ logger.error(f"{config.benchmark_name}.duckdb already exists! Exiting.")
141
+ sys.exit(1)
138
142
  gene_analysis_runs = [run for run in config.runs if run.gene_analysis]
139
143
  variant_analysis_runs = [run for run in config.runs if run.variant_analysis]
140
144
  disease_analysis_runs = [run for run in config.runs if run.disease_analysis]
@@ -41,6 +41,15 @@ class RunConfig(BaseModel):
41
41
  def set_score_order(cls, score_order):
42
42
  return score_order or "descending"
43
43
 
44
+ @field_validator("results_dir", mode="after")
45
+ @classmethod
46
+ def check_results_dir_exists(cls, results_dir: Path):
47
+ if not results_dir.exists():
48
+ raise FileNotFoundError(
49
+ f"The specified results directory does not exist: {results_dir}"
50
+ )
51
+ return results_dir
52
+
44
53
 
45
54
  class SinglePlotCustomisation(BaseModel):
46
55
  """
@@ -225,7 +225,9 @@ class PhenopacketTruthSet:
225
225
  pl.lit(0).cast(pl.Int64).alias("rank"),
226
226
  pl.lit(True).alias("true_positive"),
227
227
  pl.col("disease_identifier")
228
- .map_elements(lambda x: map_disease_id(x, mondo_mapping_table))
228
+ .map_elements(
229
+ lambda x: map_disease_id(x, mondo_mapping_table), return_dtype=pl.Utf8
230
+ )
229
231
  .alias("mondo_identifier"),
230
232
  ]
231
233
  )
@@ -150,7 +150,10 @@ def _get_result_type(
150
150
  case ResultType.VARIANT:
151
151
  return phenopacket_truth_set.classified_variant, _write_variant_result
152
152
  case ResultType.DISEASE:
153
- return phenopacket_truth_set.classified_disease, _write_disease_result
153
+ return (
154
+ lambda id_: phenopacket_truth_set.classified_disease(id_, mondo_mapping_table),
155
+ _write_disease_result,
156
+ )
154
157
 
155
158
 
156
159
  def create_empty_pheval_result(
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes