##### Perturbation modeling

Cross-study drug-perturbation transcriptomics on Tahoe-100M + LINCS
Level 2 (and appended DRUG-seq): harmonize compounds and gene symbols
into a "MappedCollection", train a modlyn linear classifier, then
enrich and interpret top genes per perturbation.

A key pattern: **append a new study to an existing collection and
retrain**. After Tahoe + LINCS were harmonized, DRUG-seq was aligned
to the same perturbation label and gene panel, versioned into the
collection, and the modlyn classifier was retrained on the expanded
"MappedCollection" — without rebuilding the upstream pipeline.

**Instance:** laminlabs/sc-demo

#### Modeling & interpretation

Retrain on the updated collection after each append so new compounds
and cells enter the feature-selection model.

| --- | --- | --- |
| Step | Transform | Outputs |
| =================================== | =================================== | =================================== |
| Train / retrain SimpleLogReg | train_feature_selection_model.py | weights · train summary |
| (modlyn) |
| --- | --- | --- |
| Gene-module enrichment | perform_enrichment_analysis.ipynb | top genes · enrichment · top |
| terms |
| --- | --- | --- |
| Interpretation report (agent) | create_report.py · agent run | report |
| --- | --- | --- |