pyhealth
Builds and validates PyHealth clinical machine-learning pipelines for EHR, signals, imaging, and medical codes.
Skill by K-Dense-AI
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/k-dense-ai-pyhealth
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
- Runs as
- Python package
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/pyhealth
What's inside
- Skill name
pyhealth- Description
- Builds and validates PyHealth clinical machine-learning pipelines for EHR, signals, imaging, and medical codes. Use for PyHealth dataset loading, MIMIC-III/IV, eICU or OMOP prediction tasks, patient-level evaluation, mortality/readmission/length-of-stay modeling, medication recommendation, sleep staging, Trainer checkpoints, and ICD/ATC/NDC/RxNorm mapping.
- License
- MIT
- Compatibility
- Requires Python 3.12 or 3.13 and PyHealth 2.0.2 (Torch 2.7.1). Network access is needed for installation, public datasets and uncached medical-code resources. Restricted clinical datasets require authorized local access.
- Metadata
- version: 1.3 · skill-author: K-Dense Inc. · last-reviewed: 2026-09-30
- Instructions
- 134 lines in SKILL.md · view on GitHub
Before installing
- Ships executable scripts
Files (8)
- SKILL.md
- starter_pipeline.py · assets/
- datasets.md · references/
- examples.md · references/
- installation.md · references/
- medcode.md · references/
- models.md · references/
- tasks.md · references/
SKILL.md (first lines)
# PyHealth
Targets **PyHealth 2.0.2**, verified against its released wheel, current official
documentation, and CPU execution on Python 3.12/Torch 2.7.1. PyHealth's pipeline is
`Dataset -> Task -> Model -> Trainer -> Metrics`; its 1.x and 2.x interfaces differ.
Do not combine legacy `Visit` examples with the 2.x event/processor API.
## When to use
Use for clinical prediction with PyHealth, including EHR sequences, physiological
signals, imaging tasks, or medical-code lookup. Establish the cohort, prediction
time, observation window, outcome horizon, and unit of evaluation before modeling.
For general tabular learning without a PyHealth dataset/task, this skill is optional.
## Install and smoke-test
```bash
uv run --no-project --isolated --python 3.12 --with pyhealth==2.0.2 python assets/starter_pipeline.py --demo --epochs 1
```
Run that command from the skill directory, or use the absolute path to the asset.
It trains on invented in-memory records and exercises patient splitting, metrics,
and best-checkpoint restoration. It provides no evidence of clinical performance.
See [installation](references/installation.md) for project setup and device options.
## Workflow
1. **Inspect the installed version and dataset configuration.** Both MIMIC-III and
MIMIC-IV use lowercase table selectors in 2.0.2. MIMIC-III files remain uppercase.
2. **Check task semantics and required tables.** `MortalityPredictionMIMIC3` predicts
death in the *next admission*, excludes the last admission, and requires diagnoses,
procedures and prescriptions in the current admission. It is not a current-stay
early-warning model. Missing/invalid next-admission mortality flags are assigned
zero upstream; audit this before using real data.
3. **Create supervised samples.** `base.set_task(task)` returns a processed dataset
with input/output schemas. Inspect raw task output as well as processed samples.
4. **Partition by patient and verify overlap, class counts and observation windows.**
`split_by_patient(..., seed=42)` is random, not chronological or stratified.
It does not prevent within-visit temporal leakage or preprocessing leakage.
5. **Choose a schema-compatible model and run one batch before training.** Construct
it from the training sample dataset. Transformer uses `embedding_dim`, not
`hidden_dim`; arguments are model-specific.
6. **Declare validation metrics and the exact monitor.** Supply `metrics=[...]` to
`Trainer`; the monitor must be a returned key. An absent key raises an error.
Use `monitor_criterion="min"` for loss, `"max"` for AUC/accuracy.
7. **Evaluate the held-out test set once the model choice is fixed.** Report prevalence,
patient counts, discrimination, calibration, threshold policy and uncertainty as
appropriate. PR-AUC's no-skill reference depends on prevalence, not a universal 0.5.
## MIMIC-III prototype
This is the 2.0.2 interface shape; the starter adds partition and label checks.
Use a local authorized root for real data. The public bucket is synthetic data.
```python
from pyhealth.datasets import MIMIC3Dataset, get_dataloader, split_by_patient
from pyhealth.tasks import MortalityPredictionMIMIC3
from pyhealth.models import Transformer
from pyhealth.trainer import Trainer
base = MIMIC3Dataset(
root="https://storage.googleapis.com/pyhealth/Synthetic_MIMIC-III/",
tables=["diagnoses_icd", "procedures_icd", "prescriptions"],
cache_dir="./cache/mimic3", num_workers=1, dev=True,
)
samples = base.set_task(MortalityPredictionMIMIC3())
train, val, test = split_by_patient(samples, [0.6, 0.2, 0.2], seed=42)
loaders = [get_dataloader(part, batch_size=16, shuffle=(i == 0))
for i, part in enumerate((train, val, test))]
model = Transformer(dataset=train, embedding_dim=8)
trainer = Trainer(model=model, metrics=["accuracy"], device="cpu")
trainer.train(train_dataloader=loaders[0], val_dataloader=loaders[1],
epochs=1, monitor="accuracy", monitor_criterion="max")
print(trainer.evaluate(loaders[2]))
```
The public synthetic task with `dev=True` (up to 1000 patients) produced only
20 samples (18 negative, 2 positive) in the review run. Accuracy here checks execution only; random splits can lack a
class, so this is unsuitable for reliable AUC estimation.
`set_task` fits processors before this split. This prototype therefore learns its
vocabulary from the whole cohort. For strict held-out evaluation, partition raw
patients first, fit processors on training samples only, then reuse them for
validation/test; see [examples](references/examples.md). Learned adjacency matrices
(e.g. GAMENet) must also use training records only.
## Critical API and scientific checks
- **MIMIC-IV:** `MIMIC4Dataset(ehr_root=..., ehr_tables=[...])`; the simpler
`MIMIC4EHRDataset(root=..., tables=[...])` is also available. The root contains both
`hosp/` and `icu/`, not just `hosp/`.
- **Caches exist by default.** `cache_dir=None` selects the user cache directory;
a supplied path selects its root. Cache identity does not hash raw file contents
or custom task source. Use a fresh cache root after changing data/config/task code.
- **Patient access:** `patient.get_events(event_type=..., filters=[(...)])`, not
`patient.visits` or `visit.get_code_list(...)`.
- **Patient independence:** visit-level random splitting can put one patient's
admissions in multiple partitions. Choose the split to match the deployment claim.
- **Outcome availability:** discharge diagnoses and notes are unavailable for many
early prediction times. Feature timestamps and recording/store times both matter.
- **Clinical interpretation:** attention weights and DDI penalties are modeling tools;
they do not establish causal explanation, prescribing safety or deployment readiness.
- **Network resources:** medical-code tables download on first use and are cached.
Mapping may be one-to-many or empty; retain coding-system version and provenance.
## Reference files
| Need | Read |
|---|---|
| Dependencies, devices, restricted data and caches | [installation](references/installation.md) |
| Dataset classes, constructors, event access and splitting | [datasets](references/datasets.md) |
| Task schemas, label semantics and custom tasks | [tasks](references/tasks.md) |
| Model compatibility and training contracts | [models](references/models.md) |
| Code lookup, mappings and tokenizer shapes | [medical codes](references/medcode.md) |
| Adaptable recipes and train-only preprocessing | [examples](references/examples.md) |
## Citing Scientific Agent Skills
This skill is part of Scientific Agent Skills by K-Dense. If it materially contributed to aFrom K-Dense-AI/scientific-agent-skills, MIT.
More from K-Dense-AI/scientific-agent-skills
- 0.699score
13c-metabolic-flux
K-Dense-AI
Estimates intracellular metabolic fluxes from steady-state carbon-13 isotope-tracing measurements using validated atom maps, mfapy isotope simulation…
SkillAFreshness: A★ 54.4KClaude Code +9 - 0.699score
adaptyv
K-Dense-AI
Uses the Adaptyv Bio Foundry API and Python SDK to design protein characterization experiments, estimate costs, submit sequences, monitor laboratory progress…
SkillAFreshness: A★ 54.4KClaude Code +9 - 0.699score
exploratory-data-analysis
K-Dense-AI
Performs bounded, local exploratory analysis of explicitly supported scientific files.
SkillAFreshness: A★ 54.4KClaude Code +9 - 0.699score
openpiv
K-Dense-AI
Performs Particle Image Velocimetry (PIV) analysis with OpenPIV.
SkillAFreshness: A★ 54.4KClaude Code +9 - 0.699score
citation-management
K-Dense-AI
Comprehensive citation management for academic research.
SkillAFreshness: A★ 54.4KClaude Code - 0.699score
parallel-web
K-Dense-AI
Uses Parallel CLI for web search, URL extraction, deep research, structured data enrichment, entity discovery, and recurring web monitoring.
SkillAFreshness: A★ 54.4KClaude Code +9 - 0.699score
scientific-schematics
K-Dense-AI
Generates scientific diagram drafts using Nano Banana 2 AI with smart iterative refinement.
SkillAFreshness: A★ 54.4KClaude Code +9 - 0.699score
glycoengineering
K-Dense-AI
Analyzes and engineers protein glycosylation by scanning canonical N-glycosylation sequons, describing S/T-rich regions, checking curated glycan evidence, and…
SkillAFreshness: A★ 54.4KClaude Code +9 - 0.699score
venue-templates
K-Dense-AI
Prepares journal manuscripts, conference papers, research posters, and grant documents using venue-specific formatting guidance and bundled LaTeX scaffolds.
SkillAFreshness: A★ 54.4KClaude Code +9 - 0.699score
uncertainty-and-units
K-Dense-AI
Tracks physical units and propagates measurement uncertainty in scientific calculations using pint and uncertainties.
SkillAFreshness: A★ 54.4KClaude Code +9 - 0.699score
ginkgo-cloud-lab
K-Dense-AI
Guides protocol selection, input preparation, pricing checks, and browser ordering on Ginkgo Bioworks Cloud Lab (cloud.ginkgo.bio).
SkillAFreshness: A★ 54.4KClaude Code +9 - 0.699score
alphagenome
K-Dense-AI
Looks up precomputed AlphaGenome Atlas effects for any GRCh38 single-nucleotide variant (AVI score with Phred and 18 SHAP feature attributions, plus raw and…
SkillAFreshness: A★ 54.4KClaude Code +9
Signals
- Stars
- 54,411
- Forks
- 4,797
- Open issues
- 8
- Last commit (this folder)
- Oct 1, 2026 (27 days ago)
- Last release
- Oct 1, 2026 (27 days ago)
From GitHub (fetched Oct 24, 2026).
Details
- Version
- 1.3
- License
- MIT
- Website
- arxiv.org/abs/2609.00065
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from K-Dense-AI
- 0.699score
exploratory-data-analysis
K-Dense-AI
Performs bounded, local exploratory analysis of explicitly supported scientific files.
SkillAFreshness: A★ 54.4KClaude Code +9 - 0.699score
citation-management
K-Dense-AI
Comprehensive citation management for academic research.
SkillAFreshness: A★ 54.4KClaude Code - 0.699score
glycoengineering
K-Dense-AI
Analyzes and engineers protein glycosylation by scanning canonical N-glycosylation sequons, describing S/T-rich regions, checking curated glycan evidence, and…
SkillAFreshness: A★ 54.4KClaude Code +9 - 0.699score
openpiv
K-Dense-AI
Performs Particle Image Velocimetry (PIV) analysis with OpenPIV.
SkillAFreshness: A★ 54.4KClaude Code +9 - 0.699score
ginkgo-cloud-lab
K-Dense-AI
Guides protocol selection, input preparation, pricing checks, and browser ordering on Ginkgo Bioworks Cloud Lab (cloud.ginkgo.bio).
SkillAFreshness: A★ 54.4KClaude Code +9 - 0.699score
parallel-web
K-Dense-AI
Uses Parallel CLI for web search, URL extraction, deep research, structured data enrichment, entity discovery, and recurring web monitoring.
SkillAFreshness: A★ 54.4KClaude Code +9
Cite this page
pyhealth skill. Agent Mart. https://agentmart.dev/skills/k-dense-ai-pyhealth (last updated 2026-10-24)