Skip to content
Back to skills

Featurization

ASecurity

"Choose, run, validate, and troubleshoot DeepChem featurizers for

  • 247 stars
  • 0 votes
  • 0 copies
  • 3 views
  • Added September 8, 2026
toolspythonbashnodeapi

Works with

  • cli
  • api

Security analysis

A100/100

Pro scans all 5 files and shows the line behind each finding

Scanned September 8, 2026

npx -y skills add VectorSpaceLab/AREX-Skill --skill featurization --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Featurization?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Featurization
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/vectorspacelab-featurization/badge)](https://www.skillsdirectory.com/skills/vectorspacelab-featurization)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: featurization
description: "Choose, run, validate, and troubleshoot DeepChem featurizers for
  molecules, graphs, descriptors, sequences, materials, polymers, and
  complexes."
disable-model-invocation: true
metadata:
  disco-role: operating
license: MIT
---

# DeepChem Featurization

Use this sub-skill when the user needs to select or debug `deepchem.feat` transformations before loading data into models. Route dataset loading, MolNet presets, splitting, and CSV/SDF loader mechanics to `../data-and-molnet/`; route model construction/training to `../model-training/`; route full docking pose generation to `../docking-and-structure/`.

## Quick Router

- Use `CircularFingerprint` for fixed-size ECFP/Morgan bit vectors or count vectors for classical ML, similarity, and quick baselines.
- Use `RDKitDescriptors` for interpretable 2D physicochemical descriptors; use `MordredDescriptors` only when the optional Mordred package is available and high-dimensional descriptors are desired.
- Use `MolGraphConvFeaturizer` for graph neural network inputs as `GraphData`; set `use_edges=True` when the downstream model consumes edge attributes and `use_chirality=True` when stereochemistry matters.
- Use `CoulombMatrix` or `CoulombMatrixEig` for coordinate-aware molecular representations where `max_atoms` and conformer handling are explicit.
- Use `FASTAFeaturizer` for FASTA files and biosequence extraction; use tokenizer wrappers such as `HuggingFaceFeaturizer` only when transformer tokenizers are installed and intentionally selected.
- Use material featurizers such as `ElementPropertyFingerprint`, `SineCoulombMatrix`, `CGCNNFeaturizer`, and `ElemNetFeaturizer` for composition strings or pymatgen structures.
- Use polymer, complex, and docking-adjacent featurizers only for feature extraction; route pose generation and docking workflows elsewhere.

## Minimal Patterns

```python
import deepchem as dc

smiles = ["CCO", "c1ccccc1"]
features = dc.feat.CircularFingerprint(size=1024).featurize(smiles)
print(features.shape)  # (2, 1024)
```

```python
graphs = dc.feat.MolGraphConvFeaturizer(use_edges=True).featurize(["CCO"])
graph = graphs[0]
print(graph.node_features.shape, graph.edge_index.shape, graph.edge_features.shape)
```

```python
descriptors = dc.feat.RDKitDescriptors(use_bcut2d=False).featurize(["CCO"])
print(descriptors.shape)
```

For mixed-validity batches, always inspect per-entry outputs before passing features to a model. Failed molecular featurizations usually appear as empty arrays, and heterogeneous feature shapes can force an object array.

## Validation Checklist

1. Confirm input type: SMILES/RDKit Mol for molecular featurizers, FASTA file path for `FASTAFeaturizer`, pymatgen structure or structure dict for structure featurizers, composition string for composition featurizers.
2. Print `type(feature)` and shape-like attributes for a tiny batch before scaling up.
3. Check failures: empty arrays, warnings about failed datapoints, missing optional dependency warnings, or object arrays from heterogeneous outputs.
4. Match feature family to model family: vectors for scikit-learn/dense models, `GraphData` for graph models, sequence/tokenizer outputs for sequence models, structure/composition features for materials models.
5. Keep featurizer settings identical between train/validation/test/inference.

## Bundled References

- `references/featurizer-guide.md`: selection guidance by input, task, and model family.
- `references/api-reference.md`: common signatures, output contracts, and validation snippets.
- `references/troubleshooting.md`: failure modes for invalid SMILES, optional dependencies, graph shape mismatches, Coulomb `max_atoms`, and descriptor normalization.
- `scripts/inspect_featurizer_outputs.py`: tiny CLI to inspect SMILES and optional FASTA outputs without needing dataset loaders.

## Helper Script

Run the bundled helper from this sub-skill directory or by path:

```bash
python scripts/inspect_featurizer_outputs.py --smiles CCO 'C[C@H](O)Cl' bad_smiles --featurizers circular molgraph rdkit
```

Add `--fasta path/to/file.fasta --featurizers fasta` to inspect FASTA extraction when the sequence dependency is installed.

Files in this skill

  • SKILL.md4.1 KB
  • references/api-reference.md7.5 KB
  • references/featurizer-guide.md6.3 KB
  • references/troubleshooting.md7.5 KB
  • scripts/inspect_featurizer_outputs.py9.2 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.