Research notebooks for phosphine-ligand discovery in cross-electrophile coupling. The workflow learns molecular descriptors from fingerprints, constructs candidate ligands through fragment recombination, and filters candidates using descriptor thresholds.
Workflow and reproduction guide · Descriptor data · Candidate generation notebook · MIT license
The model notebooks primarily regress molecular descriptors, such as steric and electronic features. The threshold-analysis notebooks separately use reaction-yield information to identify descriptor ranges. These are distinct prediction and selection steps; descriptor-regression R² is not a reaction-yield prediction score.
| Artifact | Available in this repository |
|---|---|
| Initial descriptor workbook | DFT_data sheet: 1,558 rows, with ID, smiles, and 190 remaining columns |
| Candidate fingerprints | 359 rows with SMILES and 1,024 Morgan fingerprint bits |
| Candidate descriptor predictions | 359 rows × 190 predicted descriptors |
| Saved single-descriptor filter | 141 candidate rows with predicted vbur_far_vtot_boltz |
These are counts of saved tables, not claims of independent experiments or validated ligand performance. See the data inventory for filenames and the results provenance before citing performance numbers.
| Stage | Entry point | Purpose |
|---|---|---|
| Fingerprints | Fingerprinting.ipynb | Structure-to-fingerprint experiments |
| Structure filtering | remove_ring.ipynb | Separate structures according to phosphorus ring membership |
| Descriptor regression | XGBoost.ipynb | Per-descriptor model fitting and evaluation |
| Model comparisons | Model/ | Decision trees, Lasso, Ridge, SVM, neural-network and Gaussian-process notebooks |
| Threshold selection | Finding_best_Threshold.ipynb | Search descriptor cutoffs using yield-labelled data |
| Candidate design | complete_implementation.ipynb | Fragmentation, recombination, fingerprints, descriptor inference, and filtering |
The notebooks preserve the original research workflow. Several expect local input files or trained models that are not included. Follow the execution order and prerequisites before running cells; there is no automatic end-to-end reproduction command.
The core dependency list is derived from notebook imports. It is not a recovered lockfile for the original experiments. Optional neural-network, Gaussian-process, and Mordred dependencies are listed separately in requirements-optional.txt.
git clone https://github.com/alphago1234/Cross-Electrophile-Coupling.git
cd Cross-Electrophile-Coupling
python3 -m venv .venv
source .venv/bin/activate
python -m pip install -r requirements.txtInspect the included candidate table without training a model:
python - <<'PY'
import pandas as pd
table = pd.read_csv("Dataset/predicted_descriptors_with_smiles.csv")
print(f"{len(table)} candidate rows; {len(table.columns) - 1} predicted descriptors")
print(table[["SMILES", "vbur_far_vtot_boltz"]].head().to_string(index=False))
PYOpen the notebook browser with jupyter lab. Resolve notebook input paths and missing artifacts before execution; some original cells write to their input filename.
The documentation inventory checks the committed tables and notebook source. The original notebooks and data are preserved. Full model training, the historical environment, and experimental reaction-yield claims have not been reproduced by this documentation update. The reproduction guide records specific missing inputs, model artifacts, and evaluation distinctions.