skills/exploratory-data-analysis/references/chemistry_molecular_formats.md
Reviewed: 2026-07-23 Executable scope: No chemistry-native format has a bundled parser. This file is a reference-only routing guide, not a support claim.
| Format family | Bundled chemistry inspection | Required approach |
|---|---|---|
| PDB, PDBx/mmCIF/CIF | No | Dictionary/version-aware structural tooling |
| Molfile/SDF, SMILES, XYZ | No | Chemistry-aware parser with explicit sanitization policy |
| DCD/XTC/TRR and topology files | No | Topology-aware trajectory tooling |
| Gaussian/QM outputs, cube grids | No | Program/version-aware parser |
| Pickle/joblib/dill molecule/model files | Never | Obtain a non-executable interchange export |
| Genuine CSV/TSV/JSON/NPY/NPZ/HDF5 exports | General inspector only | Apply the exact general-format capability; no chemical semantics are inferred |
The .cif, .log, .out, .raw, and .dat suffixes are ambiguous. The
capability manifest reports reference-only status and does not sniff content or
guess a producer.
wwPDB states that PDBx/mmCIF is its official working and archive format. Legacy PDB format 3.30 remains distributed where representable but has field and size limitations.
Use a pinned parser such as Gemmi, Biopython's Bio.PDB, or official wwPDB
validation services/tools in a separately reviewed environment. Confirm:
Do not interpret a low B factor, occupancy, model score, or missing atom as a quality verdict without experimental context. Do not claim binding, stability, function, or causality from a coordinate inventory.
Molfile/SDF records can represent atoms, bonds, coordinates, charges, stereochemistry, query features, and arbitrary property blocks. SMILES is a line notation whose interpretation depends on aromaticity, valence, stereochemistry, isotope, charge, and sanitization rules.
Before EDA:
Descriptor distributions are conditional on these choices. Do not automatically neutralize, desalinate, canonicalize, deduplicate, generate conformers, or discard parser failures.
XYZ commonly starts each frame with atom count and a comment line, followed by element and Cartesian coordinates. Variants can contain trajectories, additional columns, or nonstandard units. Confirm:
The generic tabular scanner is not an XYZ parser.
DCD, XTC, TRR, NetCDF trajectories, and related files usually need a matching topology and sometimes unit-cell/time metadata. A suffix does not supply these. With MDAnalysis/MDTraj or another pinned reader, inspect:
Frames are temporally dependent. Do not treat frames as independent replicates or split adjacent frames randomly across train/test.
.log/.out files are program- and version-specific; use cclib or a
producer-specific parser only after confirming the producer. Check:
Cube and similar volumetric grids require origin, axis vectors, shape, units, orbital/density identity, and integration conventions. Bound grid reads and do not eagerly load an unverified declared shape.
If the file is genuinely .npy, .npz, .h5, .hdf5, .csv, .tsv, or
strict .json, the general inspector can report container structure and
aggregate numeric properties. It cannot infer:
HDF5 object names/attributes are redacted, external/soft links are not followed, and dataset values are not read. NumPy object arrays are rejected. Pickled models or RDKit objects are never deserialized.
Pin and validate tooling per project rather than treating this list as bundled support:
Check each parser's current format table and release notes. Never pass untrusted property text to shell commands or dynamic evaluation.
All links accessed 2026-07-23.