This directory contains the sequential data-preparation pipeline.
Before running the pipeline:
- unpack the gzipped source files in datasets
- activate the
mqn-searchconda environment - ensure
build/bin/mqn_newexists and is executable
Typical sequence:
gunzip datasets/ZINC_ChEMBL34_hi_conf_1M.smi.gz
gunzip datasets/145-ChEMBL34_top-sellers_23_FINAL.csv.gz
conda activate mqn-search
bash scripts/prepare_data/1_add_MQN2file.sh
python scripts/prepare_data/2_extract_BIN.py
python scripts/prepare_data/3_remove_drugs.py
python scripts/prepare_data/2b_make_bins.py
python scripts/prepare_data/3b_csv2mhfp-parquet_good-MHFP.py
python scripts/prepare_data/04_good_make_LSHFs_and_IDX.py
python scripts/prepare_data/5_mhfpVS.pyActive scripts:
1_add_MQN2file.shRuns the compiled MQN binary on the raw SMILES input and writes a CSV withSMILES,ID, andMQN.2_extract_BIN.pyExtracts the MQN sum into aBINcolumn.3_remove_drugs.pyReplaces overlapping rows with the curated query-drug entries.2b_make_bins.pySplits the merged CSV into per-bin CSV files underdatasets/BINS/.3b_csv2mhfp-parquet_good-MHFP.pyRecomputes MHFP for the merged CSV and writes parquet chunks.04_good_make_LSHFs_and_IDX.pyBuilds one LSH forest and one IDX parquet per bin.5_mhfpVS.pyPerforms exact MHFP virtual screening to generate truth files indatasets/VS_MHFP/.
The scripts are intended to be run locally against unpacked files in datasets/.
Expected generated outputs:
datasets/ZINC_ChEMBL34_hi_conf_1M_MQN.csvdatasets/ZINC_ChEMBL34_hi_conf_1M_MQN_BIN.csvdatasets/ZINC_ChEMBL34_hi_conf_1M_145-drugs_MQN_BIN.csvdatasets/BINS/datasets/ZINC_ChEMBL34_hi_conf_1M_MQN_MHFP512_chunk_*.parquetdatasets/LSHF/datasets/IDX/datasets/VS_MHFP/datasets/LOGS/