CoolFace
Datasetpublic

nico8771/qm9_clean

nico8771/qm9_clean — cleaned QM9 Each row is saved as a neutrally charged molecule using canonical SMILES plus the EDM-six DFT targets. Source: torch_molecule QM9 (HuggingFace mirror). Code: https://github.com/Nico-Conti/flow-matching-molecules (dataset/). Schema column type description smiles string canonical, kekulizable, single-fragment SMILES (post-sanitize) y list[float] DFT targets, columns = mu, alpha, homo, lumo, gap, cv… See the full description on the dataset page: https://huggingface.co/datasets/nico8771/qm9_clean.

sourceHugging Faceotherupdated 3mo agoView on Hugging Face
0likes54downloads
Dataset Card

nico8771/qm9_clean — cleaned QM9

Each row is saved as a neutrally charged molecule using canonical SMILES plus the EDM-six DFT targets.

Source: torch_molecule QM9 (HuggingFace mirror). Code: <https://github.com/Nico-Conti/flow-matching-molecules> (dataset/).

Schema

columntypedescription
smilesstringcanonical, kekulizable, single-fragment SMILES (post-sanitize)
ylist[float]DFT targets, columns = mu, alpha, homo, lumo, gap, cv

Units (as stored — raw QM9)

targetunit
muDebye
alphaBohr³
homoHartree
lumoHartree
gapHartree
cvcal·mol⁻¹·K⁻¹

Energy targets (homo, lumo, gap) are in Hartree; multiply by 27.2113 for eV (matches FreeGress/DiGress reported MAE). load_qm9(to_ev=True) does this conversion at load time.

Pipeline

  1. 1.Parse with RDKit; unparseable dropped.
  2. 2.Standardize — remove stereochemistry, sanitize (QM9 is neutral).
  3. 3.Kekulize over atom vocab (C, N, O, F); atoms outside the vocab dropped.
  4. 4.Round-trip check — smiles -> (X, E) -> mol -> smiles.

Bonds use 4 classes (none / single / double / triple). The six DFT properties are shipped with QM9 and are not RDKit-recomputable.

Drop / keep counts (this build)

outcomecount
drop_vocab1,845
kept132,040

Kept: 132,040 molecules.