prima·bench
Repo ↗

Fitness & dosage · gene eval

dosage_phaplo

DECIPHER (Collins 2022 rCNV map) haploinsufficiency-probability regression: predict `pHaplo` = P(haploinsufficient) in [0, 1] per gene for ~17.7k GENCODE-v49 genes (dense; ~90% of protein-coding). One scalar per gene, paired by `gene_id`; scored primarily with Spearman rank correlation. Paralog/family-aware split (Ensembl Compara). A dense continuous complement to the sparse curated ClinGen eval — and a *predicted* score, so not to be used as an input for ClinGen HI.

Fitness & dosage Scalar regression gene_regression
01

Spec

TargetDECIPHER (Collins 2022 rCNV map) haploinsufficiency-probability regression: predict `pHaplo` = P(haploinsufficient) in [0, 1] per gene for ~17.7k GENCODE-v49 genes (dense; ~90% of protein-coding). One scalar per gene, paired by `gene_id`; scored primarily with Spearman rank correlation. Paralog/family-aware split (Ensembl Compara). A dense continuous complement to the sparse curated ClinGen eval — and a *predicted* score, so not to be used as an input for ClinGen HI.
AxisFitness & dosage — Essentiality, constraint, and dosage sensitivity.
Shape Scalar regression · metric family: correlation
Taskgene_regression / gene_regression
Datasetcollins_2022_cell/dosage_phaplo@0.0.1
Publicationcollins_2022_cell
Metrics
  • gene_reg_spearman
  • gene_reg_pearson
  • gene_reg_mse
  • gene_reg_rmse
  • gene_reg_r2
Temporal discoveryno — held-out genes
License Declared per SPDX in the dataset's recipe README ↗ (commercial-use gated by CI).
References

IO contract

pairing_key
gene_id
required_metadata
gene_id
target_kind
gene_score
02

What the prediction looks like

This eval has the scalar regression shape. The figure is seeded to it — drag the control to watch the score respond.

Shape 2scalar score · regressionSpearman ρ

One number per gene — does your ranking match the truth?

Used by essentiality (DepMap) · constraint (LOEUF) · dosage (pHaplo / pTriplo / HIPred)

0.000.250.500.751.0Collins pHaplo · → more haploinsufficientOR4F5ABCA4SCN1AMECP2NSD1SOX9● true score (above)○ prediction (below)
true score model predictiononly the rank order is scored — not the absolute value
Spearman ρ0.94
Genes shown6
Full eval17–18k genes

Each gene has one continuous truth value; the metric is Spearman ρ — pure rank agreement, so a model with the ordering right scores well even when its absolute numbers drift. Short vertical connectors mean the ranking held; long slants are rank errors.

03

Run it

Fetch the censored splits, predict, score — task and dataset filled in.

import prima_bench as pb

# Downloads on demand into the local cache; returns local Paths.
train_path, test_path = pb.fetch_data(task="gene_regression", dataset="collins_2022_cell/dosage_phaplo@0.0.1")
train = pb.load(train_path, task="gene_regression", split="train", dataset="collins_2022_cell/dosage_phaplo@0.0.1")
test = pb.load(test_path, task="gene_regression", split="test", dataset="collins_2022_cell/dosage_phaplo@0.0.1")

# Your model produces predictions aligned to the eval input.
predictions = my_model(test)

# Score against the censored solution over this task's metric panel:
#   gene_reg_spearman, gene_reg_pearson, gene_reg_mse, gene_reg_rmse, gene_reg_r2
run = pb.Evaluation(task="gene_regression", dataset="collins_2022_cell/dosage_phaplo@0.0.1")
run.update(predictions=predictions)   # one-shot; or stream shard-by-shard
result = run.compute()                # -> EvalResult
print(result)
04

Results

Awaiting scored models — the row scaffold is live; numbers land with results.json.

Awaiting results · prima-bench

dosage_phaplo · leaderboard

1 evals · 1 datasets · no models scored yet

Evals
1
graded
Datasets
1
sources
Models
pending
Best score
pending
No results.json wired up yet. The eval scaffold below is live; drop a document matching src/data/results.schema.md at src/data/results.json (or pass a results prop) and every bar fills in. Each track's tick marks the chance baseline.

Gene Regression

1
EvalScoreawaiting
dosage_phaplocollins_2022_cell/dosage_phaplo@0.0.1
spearman
Scored with prima-bench · fill = metric value · tick = chance baseline · higher is better unless a metric is marked ↓.