CoolFace
Datasetpublic

mibohl/Bulk-RNA-Seq-Benchmark

Bulk RNA-seq benchmark for foundation-model evaluation: 58 tasks (25 regression, 33 classification) across 38 datasets spanning clinical outcome prediction, diagnostics, and biological/pharmacological phenotyping. Format One Parquet file per dataset in data/. Each row is a sample; columns are: sample_id — sample accession (GSM / cell line / donor id). gene columns — the native expression matrix X (gene-symbol headers). y__<task> — one label column per task on that dataset. NaN… See the full description on the dataset page: https://huggingface.co/datasets/mibohl/Bulk-RNA-Seq-Benchmark.

sourceHugging Faceupdated 1mo agoView on Hugging Face
0likes54downloads
Dataset Card

Bulk RNA-seq benchmark for foundation-model evaluation: 58 tasks (25 regression, 33 classification) across 38 datasets spanning clinical outcome prediction, diagnostics, and biological/pharmacological phenotyping.

Format

One Parquet file per dataset in data/. Each row is a sample; columns are:

  • sample_id — sample accession (GSM / cell line / donor id).
  • gene columns — the native expression matrix X (gene-symbol headers).
  • y__<task> — one label column per task on that dataset. NaN = sample not in that task's cohort. Reproduce a task by selecting [gene cols] for rows where y__<task> is not NaN.
  • group__<task> — grouping key for tasks that use grouped cross-validation (donor / patient).

The number of usable rows in a task is the non-NaN count of its y__ column**, which is often smaller than the full cohort size

All expression is on a log1p scale and non-negative: mostly log1p-CPM; GTEx is log1p; CMP and GSE81538 have been converted to log1p from their native linear-TPM / log2 scales.

Loading

python
import pandas as pd
df = pd.read_parquet("data/CMP.parquet")
y = df["y__ic50_Bortezomib"]
mask = y.notna()
X = df.loc[mask, [c for c in df.columns if not c.startswith(("y__", "group__", "sample_id"))]]
y = y[mask]

Cross-validation splits

Most datasets have one sample per subject and can be split randomly. The following datasets contain multiple samples per patient/donor and must be split by their group__<task> column (GroupKFold / StratifiedGroupKFold), never randomly, or the same subject leaks across folds:

BeatAML, CPTAC, GSE107995, GSE156902, GSE157657, GSE193677, GSE243375, GSE278476, GSE279480, GTEx, TARGET, TCGA.

python
from sklearn.model_selection import GroupKFold
groups = df.loc[mask, "group__ajcc_stage_4"]          # e.g. TCGA patient barcode
for tr, te in GroupKFold(5).split(X, y, groups):
    ...

Task catalogue

Type A — Clinical & biological outcome prediction

Treatment response, recurrence, survival, drug sensitivity, staging, and molecular phenotypes.

Small (n ≤ 100)

DatasetTask(s) — nDescription
GSE107422systemic_recurrence (80, cls)Colorectal cancer resection; prospective systemic recurrence
GSE115525prednisolone_lc50 (73, reg)B-lineage ALL primary cells; prednisolone LC50 drug sensitivity
GSE116324bortezomib_response (44, cls)Multiple myeloma; bortezomib-induction response (≥VGPR sustained ≥1y)
GSE120622relapse (80, cls)NSCLC surgical tumor; prospective relapse
GSE154261recurrence (73, cls)T1 non-muscle-invasive bladder cancer post-reTUR; 24-month recurrence
GSE156699chemo_response (88, cls)High-grade serous ovarian cancer; platinum chemo response (PFS ≥6mo)
GSE157103hospital_free_days (66, reg)COVID-19 ICU leukocytes; hospital-free days (45-day window)
GSE157657response_group (59, cls)Blood TB; ATT treatment-response trajectory (4-class)
GSE176178bcg_response (40, cls)Stage-1 bladder cancer; durable vs non-durable BCG response
GSE198520eular_response (46, cls)RA synovium; EULAR response to anti-TNF (3-class)
GSE206505vo2max_response (30, cls)PBMC; VO2max responder vs non-responder (endurance RCT)
GSE213346disease_course (40, cls)Oral lichen planus biopsy; recalcitrant vs stable at 1 year
GSE278476vaccine_response (46, cls)PBMC MUC1-vaccine prevention trial; immune responder
GSE294705hfri (60, cls)NMIBC post-BCG; high-frequency recurrence index
GSE316750bcr (41, cls)Radical-prostatectomy tumor; biochemical recurrence
GSE54460bcr (99, cls)FFPE radical-prostatectomy; biochemical recurrence

Medium (n > 100)

DatasetTask(s) — nDescription
BeatAMLauc_Bortezomib (461, reg), auc_Dasatinib (491, reg), auc_Doramapimod (452, reg), auc_Gilteritinib (277, reg), auc_Midostaurin (461, reg), auc_Panobinostat (285, reg), auc_Quizartinib (459, reg), auc_Sorafenib (492, reg), auc_Trametinib (482, reg), auc_Venetoclax (365, reg)AML patient-derived ex-vivo drug sensitivity (AUC) for 10 targeted agents
CMPic50_Bortezomib (1195, reg), ic50_Doxorubicin (1179, reg), ic50_Erlotinib (1202, reg), ic50_Gemcitabine (1187, reg), ic50_Olaparib (1194, reg), ic50_Oxaliplatin (1179, reg), ic50_Paclitaxel (1196, reg), ic50_Rapamycin (1199, reg), ic50_Ruxolitinib (1177, reg), ic50_Vorinostat (1193, reg)Pan-cancer cell lines (Cell Model Passports expression); IC50 drug sensitivity for 10 drugs with diverse MoAs
GSE109142week4_remission (198, cls)Pediatric ulcerative colitis (PROTECT); week-4 clinical remission
GSE112927graft_loss (235, cls)Pre-transplant blood; death-censored kidney allograft loss
GSE163882pcr (217, cls)Breast cancer pre-treatment biopsy; pCR to neoadjuvant chemotherapy
GSE185263mortality (345, cls)Early-sepsis whole blood; in-hospital mortality
GSE193677historemiss (1301, cls)Adult IBD biopsy (MSCCR); histological remission
GSE243375pcr (242, cls)HER2+ breast neoadjuvant T-DM1+pertuzumab; pathological complete response
GSE51799cag_repeats (124, reg)Huntington's disease blood; CAG-repeat length (severity) + mutation-carrier status
GSE93624complicated_progression (245, cls)Pediatric Crohn's (RISK) ileal biopsy; 3-year complicated (B2/B3) progression
GSE175718rejection_type (234, cls)Blood; kidney-transplant rejection type — ABMR / TCMR / polyoma / control (4-class)
GSE107995tb_group (414, cls)Whole-blood tuberculosis, future state — Active-TB / LTBI / Control / progressor (4-class)

Type B — Diagnostic prediction

Disease / infection presence or class predicted from the transcriptome (often a surrogate tissue such as blood or platelets).

DatasetTask(s) — nDescription
CPTACajcc_stage_4 (2464, cls)AJCC pathological stage (I–IV) from tumor RNA-seq
GSE156902group (642, cls)Tumor-educated platelets; GBM / brain-metastasis / MS / control (4-class)
GSE234297als_diagnosis (144, cls)Whole blood; ALS vs healthy diagnosis
GSE234587parasitemia (33, cls)Whole blood (Ugandan pregnant women); malaria parasitemia +/−
GSE279480cmv_status (255, cls)Whole blood; CMV serostatus positive / negative
GSE51799carrier_status (124, cls)Huntington's disease blood; CAG-repeat length (severity) + mutation-carrier status
GSE68086cancer_type (246, cls)Tumor-educated platelets; 7-class pan-cancer type vs healthy
GTExtelomere_length (3940, reg)Telomere length
TARGETinss_stage (158, cls)Pediatric neuroblastoma; INSS stage from tumor RNA-seq
TCGAajcc_stage_4 (5206, cls)Pan-cancer (33 types); AJCC pathological stage from tumor RNA-seq
GSE81538ki67 (405, reg)SCAN-B breast cancer; Ki67 proliferation index (continuous)