diff --git a/.gitignore b/.gitignore index d6e4a0c..62293e8 100644 --- a/.gitignore +++ b/.gitignore @@ -130,8 +130,7 @@ dmypy.json .scikit-mol.code-workspace.swp scikit-mol.code-workspace -notebooks/25747817 -*.ipynb + # test data tests/data/ diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 11326b6..d03dc45 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -20,4 +20,5 @@ repos: args: [ --fix ] types_or: [ python, pyi ] # Run the formatter. - - id: ruff-format \ No newline at end of file + - id: ruff-format + \ No newline at end of file diff --git a/Makefile b/Makefile index 0e7119d..5b26e8e 100644 --- a/Makefile +++ b/Makefile @@ -1,13 +1,6 @@ sync-notebooks: + uv run jupytext --set-formats docs//notebooks//ipynb,docs//notebooks//scripts//py:percent --sync docs/notebooks/*.ipynb uv run ruff format "docs/notebooks/" - uv run jupytext --sync "docs/notebooks/*.ipynb" run-notebooks: - # Execute the notebooks, gives a .nbconvert.ipynb extension - jupyter nbconvert --to notebook --execute *ipynb - # move the .nbconvert.ipynb to the original .ipynb - for file in *.nbconvert.ipynb; do - fname=${file/.nbconvert.ipynb/}; - rm $fname.ipynb - mv $file $fname.ipynb - done \ No newline at end of file + uv run jupytext --execute docs/notebooks/*ipynb \ No newline at end of file diff --git a/docs/contributing.md b/docs/contributing.md index 5095a71..45b04a4 100644 --- a/docs/contributing.md +++ b/docs/contributing.md @@ -94,11 +94,14 @@ Scikit-Learn has a check_estimator that we should strive to get to work, some cl ## Notebooks Another way of contributing is by providing notebooks with examples on how to use the project to build models together with Scikit-Learn and other tools. There are .ipynb files in the `docs/notebooks` and .py files in the `script` subfolder as the first are useful for online rendering in the documentation, whereas the latter is useful for sub version control. -If you want to create new notebook you can create .ipynb file, and then you run `make sync-notebooks` to create the corresponding .py file for the commit. + +If you want to create new notebook you can first create .ipynb file, and then you run `make sync-notebooks` to create the corresponding .py file for the commit. + +If you updated any of the existing py/ipynb files, you can run `make sync-notebooks` to update the outdated file in the pair. The .py files are used for nice diffs, and the .ipynb files are used for rendering in the documentation. `make sync-notebooks` will sync all the notebooks with the .py files in the `scripts` folder. -`make run-notebooks` will sync, run and save the notebooks, expects an ipython kernel with scikit-mol installed called Python3. +`make run-notebooks` will sync, run and save the notebooks, expects an ipython kernel with scikit-mol installed. ## Documentation diff --git a/docs/notebooks/01_basic_usage.ipynb b/docs/notebooks/01_basic_usage.ipynb index 719369c..3968cf3 100644 --- a/docs/notebooks/01_basic_usage.ipynb +++ b/docs/notebooks/01_basic_usage.ipynb @@ -25,10 +25,10 @@ "id": "2c8cad03", "metadata": { "execution": { - "iopub.execute_input": "2024-11-24T09:27:16.292725Z", - "iopub.status.busy": "2024-11-24T09:27:16.292083Z", - "iopub.status.idle": "2024-11-24T09:27:16.306663Z", - "shell.execute_reply": "2024-11-24T09:27:16.304935Z" + "iopub.execute_input": "2025-05-08T16:22:29.627872Z", + "iopub.status.busy": "2025-05-08T16:22:29.627571Z", + "iopub.status.idle": "2025-05-08T16:22:29.632065Z", + "shell.execute_reply": "2025-05-08T16:22:29.631373Z" } }, "outputs": [], @@ -42,10 +42,10 @@ "id": "8d5b2333", "metadata": { "execution": { - "iopub.execute_input": "2024-11-24T09:27:16.313611Z", - "iopub.status.busy": "2024-11-24T09:27:16.313028Z", - "iopub.status.idle": "2024-11-24T09:27:16.510254Z", - "shell.execute_reply": "2024-11-24T09:27:16.509620Z" + "iopub.execute_input": "2025-05-08T16:22:29.634712Z", + "iopub.status.busy": "2025-05-08T16:22:29.634423Z", + "iopub.status.idle": "2025-05-08T16:22:29.845389Z", + "shell.execute_reply": "2025-05-08T16:22:29.844169Z" } }, "outputs": [], @@ -78,10 +78,10 @@ "id": "0a625dda", "metadata": { "execution": { - "iopub.execute_input": "2024-11-24T09:27:16.513123Z", - "iopub.status.busy": "2024-11-24T09:27:16.512856Z", - "iopub.status.idle": "2024-11-24T09:27:17.089043Z", - "shell.execute_reply": "2024-11-24T09:27:17.088357Z" + "iopub.execute_input": "2025-05-08T16:22:29.850211Z", + "iopub.status.busy": "2025-05-08T16:22:29.848822Z", + "iopub.status.idle": "2025-05-08T16:22:30.986417Z", + "shell.execute_reply": "2025-05-08T16:22:30.984810Z" } }, "outputs": [ @@ -118,10 +118,10 @@ "id": "9a801d0f", "metadata": { "execution": { - "iopub.execute_input": "2024-11-24T09:27:17.091942Z", - "iopub.status.busy": "2024-11-24T09:27:17.091571Z", - "iopub.status.idle": "2024-11-24T09:27:17.098501Z", - "shell.execute_reply": "2024-11-24T09:27:17.097922Z" + "iopub.execute_input": "2025-05-08T16:22:30.991850Z", + "iopub.status.busy": "2025-05-08T16:22:30.990911Z", + "iopub.status.idle": "2025-05-08T16:22:31.011512Z", + "shell.execute_reply": "2025-05-08T16:22:31.010309Z" } }, "outputs": [ @@ -130,7 +130,8 @@ "text/html": [ "
MorganFingerprintTransformer(radius=3)In a Jupyter environment, please rerun this cell to show the HTML representation or trust the notebook.
MorganFingerprintTransformer(radius=3)
MorganFingerprintTransformer(radius=3)In a Jupyter environment, please rerun this cell to show the HTML representation or trust the notebook.
MorganFingerprintTransformer(radius=3)
Pipeline(steps=[('smilestomoltransformer', SmilesToMolTransformer()),\n",
+ "Pipeline(steps=[('smilestomoltransformer', SmilesToMolTransformer()),\n",
" ('standardizer', Standardizer()),\n",
" ('moleculardescriptortransformer',\n",
" MolecularDescriptorTransformer(desc_list=['MaxAbsEStateIndex',\n",
@@ -575,7 +586,7 @@
" 'BCUT2D_MRHI',\n",
" 'BCUT2D_MRLOW',\n",
" 'AvgIpc', 'BalabanJ',\n",
- " 'BertzCT', 'Chi0', ...]))])In a Jupyter environment, please rerun this cell to show the HTML representation or trust the notebook.
On GitHub, the HTML representation is unable to render, please try loading this page with nbviewer.org.Pipeline(steps=[('smilestomoltransformer', SmilesToMolTransformer()),\n",
+ " 'BertzCT', 'Chi0', ...]))])In a Jupyter environment, please rerun this cell to show the HTML representation or trust the notebook.
On GitHub, the HTML representation is unable to render, please try loading this page with nbviewer.org.Pipeline(steps=[('smilestomoltransformer', SmilesToMolTransformer()),\n",
" ('standardizer', Standardizer()),\n",
" ('moleculardescriptortransformer',\n",
" MolecularDescriptorTransformer(desc_list=['MaxAbsEStateIndex',\n",
@@ -604,7 +615,7 @@
" 'BCUT2D_MRHI',\n",
" 'BCUT2D_MRLOW',\n",
" 'AvgIpc', 'BalabanJ',\n",
- " 'BertzCT', 'Chi0', ...]))]) SmilesToMolTransformer()
Standardizer()
MolecularDescriptorTransformer(desc_list=['MaxAbsEStateIndex', 'MaxEStateIndex',\n",
+ " 'BertzCT', 'Chi0', ...]))])
SmilesToMolTransformer()
Standardizer()
MolecularDescriptorTransformer(desc_list=['MaxAbsEStateIndex', 'MaxEStateIndex',\n",
" 'MinAbsEStateIndex', 'MinEStateIndex',\n",
" 'qed', 'SPS', 'MolWt',\n",
" 'HeavyAtomMolWt', 'ExactMolWt',\n",
@@ -656,7 +667,7 @@
" 'BertzCT', 'Chi0', ...]))])"
]
},
- "execution_count": 5,
+ "execution_count": 18,
"metadata": {},
"output_type": "execute_result"
}
@@ -672,7 +683,7 @@
},
{
"cell_type": "code",
- "execution_count": 6,
+ "execution_count": 19,
"id": "2cb55603",
"metadata": {
"execution": {
@@ -687,525 +698,16 @@
"name": "stderr",
"output_type": "stream",
"text": [
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n"
- ]
- },
- {
- "name": "stderr",
- "output_type": "stream",
- "text": [
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n"
- ]
- },
- {
- "name": "stderr",
- "output_type": "stream",
- "text": [
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:32] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n"
- ]
- },
- {
- "name": "stderr",
- "output_type": "stream",
- "text": [
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n"
- ]
- },
- {
- "name": "stderr",
- "output_type": "stream",
- "text": [
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n"
- ]
- },
- {
- "name": "stderr",
- "output_type": "stream",
- "text": [
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n"
- ]
- },
- {
- "name": "stderr",
- "output_type": "stream",
- "text": [
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:33] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:34] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:34] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:34] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:34] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:34] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:34] DEPRECATION WARNING: please use MorganGenerator\n"
+ "/home/anton/projects/scikit-mol/.venv/lib/python3.12/site-packages/numpy/_core/fromnumeric.py:57: FutureWarning: 'Series.swapaxes' is deprecated and will be removed in a future version. Please use 'Series.transpose' instead.\n",
+ " return bound(*args, **kwds)\n"
]
},
{
"name": "stderr",
"output_type": "stream",
"text": [
- "[10:28:34] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:34] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:34] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:34] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:34] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:34] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:34] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:34] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:34] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:34] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:34] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:34] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:34] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:34] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:34] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:34] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:34] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:34] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:34] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:34] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:34] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:34] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:34] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:34] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:34] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:34] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:34] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:34] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:34] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:34] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:34] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:34] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:34] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:34] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:34] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:34] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:34] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:34] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:34] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:34] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:34] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:34] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:34] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:34] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:34] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:34] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:34] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:34] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:34] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:34] DEPRECATION WARNING: please use MorganGenerator\n",
- "[10:28:34] DEPRECATION WARNING: please use MorganGenerator\n"
+ "/home/anton/projects/scikit-mol/.venv/lib/python3.12/site-packages/numpy/_core/fromnumeric.py:57: FutureWarning: 'DataFrame.swapaxes' is deprecated and will be removed in a future version. Please use 'DataFrame.transpose' instead.\n",
+ " return bound(*args, **kwds)\n"
]
},
{
@@ -1519,7 +1021,7 @@
" 159 rows × 210 columns
\n", + "159 rows × 217 columns
\n", "" ], "text/plain": [ @@ -1588,10 +1090,10 @@ "157 0.0 0.0 \n", "158 0.0 0.0 \n", "\n", - "[159 rows x 210 columns]" + "[159 rows x 217 columns]" ] }, - "execution_count": 6, + "execution_count": 19, "metadata": {}, "output_type": "execute_result" } @@ -1614,7 +1116,7 @@ }, { "cell_type": "code", - "execution_count": 7, + "execution_count": 20, "id": "f56c539c", "metadata": { "execution": { @@ -1628,9 +1130,10 @@ { "data": { "text/html": [ - "Pipeline(steps=[('smilestomoltransformer', SmilesToMolTransformer()),\n",
+ "Pipeline(steps=[('smilestomoltransformer', SmilesToMolTransformer()),\n",
" ('standardizer', Standardizer()),\n",
" ('morganfingerprinttransformer',\n",
- " MorganFingerprintTransformer())])In a Jupyter environment, please rerun this cell to show the HTML representation or trust the notebook.
On GitHub, the HTML representation is unable to render, please try loading this page with nbviewer.org.Pipeline(steps=[('smilestomoltransformer', SmilesToMolTransformer()),\n",
+ " MorganFingerprintTransformer())])In a Jupyter environment, please rerun this cell to show the HTML representation or trust the notebook.
On GitHub, the HTML representation is unable to render, please try loading this page with nbviewer.org.Pipeline(steps=[('smilestomoltransformer', SmilesToMolTransformer()),\n",
" ('standardizer', Standardizer()),\n",
" ('morganfingerprinttransformer',\n",
- " MorganFingerprintTransformer())]) SmilesToMolTransformer()
Standardizer()
MorganFingerprintTransformer()
"
+ " MorganFingerprintTransformer())]) SmilesToMolTransformer()
Standardizer()
MorganFingerprintTransformer()
Pipeline(steps=[('smilestomoltransformer', SmilesToMolTransformer()),\n",
+ "Pipeline(steps=[('smilestomoltransformer', SmilesToMolTransformer()),\n",
" ('standardizer', Standardizer()),\n",
" ('moleculardescriptortransformer',\n",
" MolecularDescriptorTransformer(desc_list=['MaxAbsEStateIndex',\n",
@@ -2929,7 +2463,7 @@
" 'AvgIpc', 'BalabanJ',\n",
" 'BertzCT', 'Chi0', ...])),\n",
" ('standardscaler', StandardScaler()),\n",
- " ('randomforestregressor', RandomForestRegressor(max_depth=5))])In a Jupyter environment, please rerun this cell to show the HTML representation or trust the notebook.
On GitHub, the HTML representation is unable to render, please try loading this page with nbviewer.org.Pipeline(steps=[('smilestomoltransformer', SmilesToMolTransformer()),\n",
+ " ('randomforestregressor', RandomForestRegressor(max_depth=5))])In a Jupyter environment, please rerun this cell to show the HTML representation or trust the notebook.
On GitHub, the HTML representation is unable to render, please try loading this page with nbviewer.org.Pipeline(steps=[('smilestomoltransformer', SmilesToMolTransformer()),\n",
" ('standardizer', Standardizer()),\n",
" ('moleculardescriptortransformer',\n",
" MolecularDescriptorTransformer(desc_list=['MaxAbsEStateIndex',\n",
@@ -2959,7 +2493,7 @@
" 'AvgIpc', 'BalabanJ',\n",
" 'BertzCT', 'Chi0', ...])),\n",
" ('standardscaler', StandardScaler()),\n",
- " ('randomforestregressor', RandomForestRegressor(max_depth=5))]) SmilesToMolTransformer()
Standardizer()
MolecularDescriptorTransformer(desc_list=['MaxAbsEStateIndex', 'MaxEStateIndex',\n",
+ " ('randomforestregressor', RandomForestRegressor(max_depth=5))]) SmilesToMolTransformer()
Standardizer()
MolecularDescriptorTransformer(desc_list=['MaxAbsEStateIndex', 'MaxEStateIndex',\n",
" 'MinAbsEStateIndex', 'MinEStateIndex',\n",
" 'qed', 'SPS', 'MolWt',\n",
" 'HeavyAtomMolWt', 'ExactMolWt',\n",
@@ -2976,7 +2510,7 @@
" 'BCUT2D_CHGLO', 'BCUT2D_LOGPHI',\n",
" 'BCUT2D_LOGPLOW', 'BCUT2D_MRHI',\n",
" 'BCUT2D_MRLOW', 'AvgIpc', 'BalabanJ',\n",
- " 'BertzCT', 'Chi0', ...]) StandardScaler()
RandomForestRegressor(max_depth=5)
"
+ " 'BertzCT', 'Chi0', ...]) StandardScaler()
RandomForestRegressor(max_depth=5)
RandomForestRegressor(max_depth=5)In a Jupyter environment, please rerun this cell to show the HTML representation or trust the notebook.
RandomForestRegressor(max_depth=5)
RandomForestRegressor(max_depth=5)In a Jupyter environment, please rerun this cell to show the HTML representation or trust the notebook.
RandomForestRegressor(max_depth=5)
210 rows × 2 columns
\n", + "217 rows × 2 columns
\n", "" ], "text/plain": [ " feature importance\n", - "0 MaxAbsEStateIndex 0.002776\n", - "1 MaxEStateIndex 0.003859\n", - "2 MinAbsEStateIndex 0.006311\n", - "3 MinEStateIndex 0.004721\n", - "4 qed 0.007605\n", + "0 MaxAbsEStateIndex 0.003240\n", + "1 MaxEStateIndex 0.001821\n", + "2 MinAbsEStateIndex 0.002461\n", + "3 MinEStateIndex 0.004588\n", + "4 qed 0.009382\n", ".. ... ...\n", - "205 fr_thiazole 0.000000\n", - "206 fr_thiocyan 0.000000\n", - "207 fr_thiophene 0.000046\n", - "208 fr_unbrch_alkane 0.000000\n", - "209 fr_urea 0.000000\n", + "212 fr_thiazole 0.000000\n", + "213 fr_thiocyan 0.000000\n", + "214 fr_thiophene 0.000835\n", + "215 fr_unbrch_alkane 0.000000\n", + "216 fr_urea 0.000000\n", "\n", - "[210 rows x 2 columns]" + "[217 rows x 2 columns]" ] }, - "execution_count": 13, + "execution_count": 26, "metadata": {}, "output_type": "execute_result" } @@ -4358,7 +3246,7 @@ }, { "cell_type": "code", - "execution_count": 14, + "execution_count": 27, "id": "713d24f1", "metadata": { "execution": { @@ -4398,27 +3286,27 @@ "210 rows × 2 columns
\n", + "217 rows × 2 columns
\n", "" ], "text/plain": [ " feature importance\n", - "0 PEOE_VSA6 0.147449\n", - "1 VSA_EState5 0.087963\n", - "2 MaxAbsPartialCharge 0.057491\n", - "3 VSA_EState6 0.034922\n", - "4 SlogP_VSA6 0.028875\n", + "0 PEOE_VSA6 0.138689\n", + "1 VSA_EState5 0.062832\n", + "2 MaxAbsPartialCharge 0.052241\n", + "3 VSA_EState6 0.048135\n", + "4 SlogP_VSA6 0.027086\n", ".. ... ...\n", - "205 fr_hdrzine 0.000000\n", - "206 fr_hdrzone 0.000000\n", - "207 fr_imidazole 0.000000\n", - "208 fr_imide 0.000000\n", - "209 fr_urea 0.000000\n", + "212 fr_term_acetylene 0.000000\n", + "213 fr_thiazole 0.000000\n", + "214 fr_thiocyan 0.000000\n", + "215 fr_unbrch_alkane 0.000000\n", + "216 fr_urea 0.000000\n", "\n", - "[210 rows x 2 columns]" + "[217 rows x 2 columns]" ] }, - "execution_count": 14, + "execution_count": 27, "metadata": {}, "output_type": "execute_result" } @@ -4486,7 +3374,7 @@ }, { "cell_type": "code", - "execution_count": 15, + "execution_count": 28, "id": "4b97778f", "metadata": { "execution": { @@ -4538,7 +3426,7 @@ }, { "cell_type": "code", - "execution_count": 16, + "execution_count": 29, "id": "bf8ddaf9", "metadata": { "execution": { @@ -4920,13 +3808,13 @@ "[194 rows x 513 columns]" ] }, - "execution_count": 16, + "execution_count": 29, "metadata": {}, "output_type": "execute_result" } ], "source": [ - "file_cddd_features = Path(\"../tests/data/CDDD_SLC6A4_active_excapedb_subset.csv.gz\")\n", + "file_cddd_features = Path(\"../../tests/data/CDDD_SLC6A4_active_excapedb_subset.csv.gz\")\n", "assert file_cddd_features.is_file()\n", "df_cddd = pd.read_csv(file_cddd_features)\n", "df_cddd" @@ -4944,7 +3832,7 @@ }, { "cell_type": "code", - "execution_count": 17, + "execution_count": 30, "id": "db83be01", "metadata": { "execution": { @@ -4973,7 +3861,7 @@ }, { "cell_type": "code", - "execution_count": 18, + "execution_count": 31, "id": "dae995b7", "metadata": { "execution": { @@ -4985,7 +3873,7 @@ }, "outputs": [], "source": [ - "# The CDDD descriptors couldn't be computed for few molecules and can be removed as outcommented below. The Datafile is now prefiltered\n", + "# The CDDD descriptors couldn't be computed for few molecules and can be removed as commented out below. The Datafile is now prefiltered\n", "# target_train = data_train.loc[data_train[\"Ambit_InchiKey\"].isin(data_combined_train[\"Ambit_InchiKey\"]), column_target]\n", "# target_test = data_test.loc[data_test[\"Ambit_InchiKey\"].isin(data_combined_test[\"Ambit_InchiKey\"]), column_target]\n", "\n", @@ -5005,7 +3893,7 @@ }, { "cell_type": "code", - "execution_count": 19, + "execution_count": 32, "id": "dc6de049", "metadata": { "execution": { @@ -5019,9 +3907,10 @@ { "data": { "text/html": [ - "ColumnTransformer(transformers=[('pipeline-1',\n",
+ "ColumnTransformer(transformers=[('pipeline-1',\n",
" Pipeline(steps=[('smilestomoltransformer',\n",
" SmilesToMolTransformer()),\n",
" ('standardizer',\n",
@@ -5447,11 +4346,11 @@
" 'BalabanJ',\n",
" 'BertzCT',\n",
" 'Chi0', ...]))]),\n",
- " <sklearn.compose._column_transformer.make_column_selector object at 0x729f1412c520>),\n",
+ " <sklearn.compose._column_transformer.make_column_selector object at 0x7fb59f3aff50>),\n",
" ('pipeline-2',\n",
" Pipeline(steps=[('functiontransformer',\n",
" FunctionTransformer())]),\n",
- " <sklearn.compose._column_transformer.make_column_selector object at 0x729f1412ebf0>)])In a Jupyter environment, please rerun this cell to show the HTML representation or trust the notebook.
On GitHub, the HTML representation is unable to render, please try loading this page with nbviewer.org.ColumnTransformer(transformers=[('pipeline-1',\n",
+ " <sklearn.compose._column_transformer.make_column_selector object at 0x7fb59f3ad2b0>)])In a Jupyter environment, please rerun this cell to show the HTML representation or trust the notebook.
On GitHub, the HTML representation is unable to render, please try loading this page with nbviewer.org.ColumnTransformer(transformers=[('pipeline-1',\n",
" Pipeline(steps=[('smilestomoltransformer',\n",
" SmilesToMolTransformer()),\n",
" ('standardizer',\n",
@@ -5475,11 +4374,11 @@
" 'BalabanJ',\n",
" 'BertzCT',\n",
" 'Chi0', ...]))]),\n",
- " <sklearn.compose._column_transformer.make_column_selector object at 0x729f1412c520>),\n",
+ " <sklearn.compose._column_transformer.make_column_selector object at 0x7fb59f3aff50>),\n",
" ('pipeline-2',\n",
" Pipeline(steps=[('functiontransformer',\n",
" FunctionTransformer())]),\n",
- " <sklearn.compose._column_transformer.make_column_selector object at 0x729f1412ebf0>)]) <sklearn.compose._column_transformer.make_column_selector object at 0x729f1412c520>
SmilesToMolTransformer()
Standardizer()
MolecularDescriptorTransformer(desc_list=['MaxAbsEStateIndex', 'MaxEStateIndex',\n",
+ " <sklearn.compose._column_transformer.make_column_selector object at 0x7fb59f3ad2b0>)])
<sklearn.compose._column_transformer.make_column_selector object at 0x7fb59f3aff50>
SmilesToMolTransformer()
Standardizer()
MolecularDescriptorTransformer(desc_list=['MaxAbsEStateIndex', 'MaxEStateIndex',\n",
" 'MinAbsEStateIndex', 'MinEStateIndex',\n",
" 'qed', 'SPS', 'MolWt',\n",
" 'HeavyAtomMolWt', 'ExactMolWt',\n",
@@ -5496,7 +4395,7 @@
" 'BCUT2D_CHGLO', 'BCUT2D_LOGPHI',\n",
" 'BCUT2D_LOGPLOW', 'BCUT2D_MRHI',\n",
" 'BCUT2D_MRLOW', 'AvgIpc', 'BalabanJ',\n",
- " 'BertzCT', 'Chi0', ...]) <sklearn.compose._column_transformer.make_column_selector object at 0x729f1412ebf0>
FunctionTransformer()
"
+ " 'BertzCT', 'Chi0', ...]) <sklearn.compose._column_transformer.make_column_selector object at 0x7fb59f3ad2b0>
FunctionTransformer()
Pipeline(steps=[('columntransformer',\n",
+ "Pipeline(steps=[('columntransformer',\n",
" ColumnTransformer(transformers=[('pipeline-1',\n",
" Pipeline(steps=[('smilestomoltransformer',\n",
" SmilesToMolTransformer()),\n",
@@ -5990,13 +4900,13 @@
" 'SPS',\n",
" 'MolW...\n",
" 'Chi0', ...]))]),\n",
- " <sklearn.compose._column_transformer.make_column_selector object at 0x729f1412c520>),\n",
+ " <sklearn.compose._column_transformer.make_column_selector object at 0x7fb59f3aff50>),\n",
" ('pipeline-2',\n",
" Pipeline(steps=[('functiontransformer',\n",
" FunctionTransformer())]),\n",
- " <sklearn.compose._column_transformer.make_column_selector object at 0x729f1412ebf0>)])),\n",
+ " <sklearn.compose._column_transformer.make_column_selector object at 0x7fb59f3ad2b0>)])),\n",
" ('standardscaler', StandardScaler()),\n",
- " ('randomforestregressor', RandomForestRegressor(max_depth=5))])In a Jupyter environment, please rerun this cell to show the HTML representation or trust the notebook.
On GitHub, the HTML representation is unable to render, please try loading this page with nbviewer.org.Pipeline(steps=[('columntransformer',\n",
+ " ('randomforestregressor', RandomForestRegressor(max_depth=5))])In a Jupyter environment, please rerun this cell to show the HTML representation or trust the notebook.
On GitHub, the HTML representation is unable to render, please try loading this page with nbviewer.org.Pipeline(steps=[('columntransformer',\n",
" ColumnTransformer(transformers=[('pipeline-1',\n",
" Pipeline(steps=[('smilestomoltransformer',\n",
" SmilesToMolTransformer()),\n",
@@ -6011,13 +4921,13 @@
" 'SPS',\n",
" 'MolW...\n",
" 'Chi0', ...]))]),\n",
- " <sklearn.compose._column_transformer.make_column_selector object at 0x729f1412c520>),\n",
+ " <sklearn.compose._column_transformer.make_column_selector object at 0x7fb59f3aff50>),\n",
" ('pipeline-2',\n",
" Pipeline(steps=[('functiontransformer',\n",
" FunctionTransformer())]),\n",
- " <sklearn.compose._column_transformer.make_column_selector object at 0x729f1412ebf0>)])),\n",
+ " <sklearn.compose._column_transformer.make_column_selector object at 0x7fb59f3ad2b0>)])),\n",
" ('standardscaler', StandardScaler()),\n",
- " ('randomforestregressor', RandomForestRegressor(max_depth=5))]) ColumnTransformer(transformers=[('pipeline-1',\n",
+ " ('randomforestregressor', RandomForestRegressor(max_depth=5))]) ColumnTransformer(transformers=[('pipeline-1',\n",
" Pipeline(steps=[('smilestomoltransformer',\n",
" SmilesToMolTransformer()),\n",
" ('standardizer',\n",
@@ -6041,11 +4951,11 @@
" 'BalabanJ',\n",
" 'BertzCT',\n",
" 'Chi0', ...]))]),\n",
- " <sklearn.compose._column_transformer.make_column_selector object at 0x729f1412c520>),\n",
+ " <sklearn.compose._column_transformer.make_column_selector object at 0x7fb59f3aff50>),\n",
" ('pipeline-2',\n",
" Pipeline(steps=[('functiontransformer',\n",
" FunctionTransformer())]),\n",
- " <sklearn.compose._column_transformer.make_column_selector object at 0x729f1412ebf0>)]) <sklearn.compose._column_transformer.make_column_selector object at 0x729f1412c520>
SmilesToMolTransformer()
Standardizer()
MolecularDescriptorTransformer(desc_list=['MaxAbsEStateIndex', 'MaxEStateIndex',\n",
+ " <sklearn.compose._column_transformer.make_column_selector object at 0x7fb59f3ad2b0>)])
<sklearn.compose._column_transformer.make_column_selector object at 0x7fb59f3aff50>
SmilesToMolTransformer()
Standardizer()
MolecularDescriptorTransformer(desc_list=['MaxAbsEStateIndex', 'MaxEStateIndex',\n",
" 'MinAbsEStateIndex', 'MinEStateIndex',\n",
" 'qed', 'SPS', 'MolWt',\n",
" 'HeavyAtomMolWt', 'ExactMolWt',\n",
@@ -6062,7 +4972,7 @@
" 'BCUT2D_CHGLO', 'BCUT2D_LOGPHI',\n",
" 'BCUT2D_LOGPLOW', 'BCUT2D_MRHI',\n",
" 'BCUT2D_MRLOW', 'AvgIpc', 'BalabanJ',\n",
- " 'BertzCT', 'Chi0', ...]) <sklearn.compose._column_transformer.make_column_selector object at 0x729f1412ebf0>
FunctionTransformer()
StandardScaler()
RandomForestRegressor(max_depth=5)
"
+ " 'BertzCT', 'Chi0', ...]) <sklearn.compose._column_transformer.make_column_selector object at 0x7fb59f3ad2b0>
FunctionTransformer()
StandardScaler()
RandomForestRegressor(max_depth=5)
722 rows × 2 columns
\n", + "729 rows × 2 columns
\n", "" ], "text/plain": [ - " feature importance\n", - "0 pipeline-1__PEOE_VSA6 0.078597\n", - "1 pipeline-2__cddd_102 0.064366\n", - "2 pipeline-2__cddd_378 0.045695\n", - "3 pipeline-1__VSA_EState5 0.032759\n", - "4 pipeline-2__cddd_369 0.030738\n", - ".. ... ...\n", - "717 pipeline-1__fr_lactam 0.000000\n", - "718 pipeline-1__fr_NH2 0.000000\n", - "719 pipeline-1__SMR_VSA2 0.000000\n", - "720 pipeline-1__fr_Imine 0.000000\n", - "721 pipeline-1__fr_phos_acid 0.000000\n", - "\n", - "[722 rows x 2 columns]" + " feature importance\n", + "0 pipeline-1__PEOE_VSA6 0.077408\n", + "1 pipeline-2__cddd_102 0.069598\n", + "2 pipeline-2__cddd_369 0.051396\n", + "3 pipeline-2__cddd_378 0.044292\n", + "4 pipeline-2__cddd_372 0.030435\n", + ".. ... ...\n", + "724 pipeline-1__PEOE_VSA3 0.000000\n", + "725 pipeline-1__Ipc 0.000000\n", + "726 pipeline-1__SMR_VSA8 0.000000\n", + "727 pipeline-2__cddd_461 0.000000\n", + "728 pipeline-1__NumRadicalElectrons 0.000000\n", + "\n", + "[729 rows x 2 columns]" ] }, - "execution_count": 23, + "execution_count": 36, "metadata": {}, "output_type": "execute_result" } @@ -7011,7 +5285,7 @@ }, { "cell_type": "code", - "execution_count": 24, + "execution_count": 37, "id": "9dbd2a9e", "metadata": { "execution": { @@ -7029,9 +5303,9 @@ "The 5 most important features are:\n", "pipeline-1__PEOE_VSA6\n", "pipeline-2__cddd_102\n", + "pipeline-2__cddd_369\n", "pipeline-2__cddd_378\n", - "pipeline-1__VSA_EState5\n", - "pipeline-2__cddd_369\n" + "pipeline-2__cddd_372\n" ] } ], @@ -7054,8 +5328,11 @@ } ], "metadata": { + "jupytext": { + "formats": "docs//notebooks//ipynb,docs//notebooks//scripts//py:percent" + }, "kernelspec": { - "display_name": "scikit-mol", + "display_name": ".venv", "language": "python", "name": "python3" }, @@ -7069,7 +5346,7 @@ "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", - "version": "3.10.12" + "version": "3.12.6" } }, "nbformat": 4, diff --git a/docs/notebooks/11_safe_inference.ipynb b/docs/notebooks/11_safe_inference.ipynb index 1c67167..126086e 100644 --- a/docs/notebooks/11_safe_inference.ipynb +++ b/docs/notebooks/11_safe_inference.ipynb @@ -9,14 +9,14 @@ "\n", "I think everyone which have worked with SMILES and RDKit sooner or later come across a SMILES that doesn't parse. It can happen if the SMILES was produced with a different toolkit that are less strict with e.g. valence rules, or maybe a characher was missing in the copying from the email. During curation of the dataset for training models, these SMILES need to be identfied and eventually fixed or removed. But what happens when we are finished with our modelling? What kind of molecules and SMILES will a user of the model send for the model in the future when it's in deployment. What kind of SMILES will a generative model create that we need to predict? We don't know and we won't know. So it's kind of crucial to be able to handle these situations. Scikit-Learn models usually simply explodes the entire batch that are being predicted. This is where safe_inference_mode was introduced in Scikit-Mol. With the introduction all transformers got a safe inference mode, where they handle invalid input. How they handle it depends a bit on the transformer, so we will go through the different usual steps and see how things have changed with the introduction of the safe inference mode.\n", "\n", - "NOTE! In the following demonstration I switch on the safe inference mode individually for demonstration purposes. I would not recommend to do that while building and training models, instead I would switch it on _after_ training and evaluation (more on that later). Otherwise there's a risk to train on the 2% of a dataset that didn't fail....\n", + "NOTE! In the following demonstration I switch on the safe inference mode individually for demonstration purposes. I would not recommend to do that while building and training models, instead I would switch it on _after_ training and evaluation (more on that later). Otherwise, there's a risk to train on the 2% of a dataset that didn't fail....\n", "\n", "First some imports and test SMILES and molecules." ] }, { "cell_type": "code", - "execution_count": 1, + "execution_count": 10, "id": "ac780f4c", "metadata": { "execution": { @@ -30,16 +30,16 @@ { "data": { "text/plain": [ - "array([[Pipeline(steps=[('fp', MorganFingerprintTransformer()),\n",
- " ('rf', RandomForestRegressor(n_jobs=-1, random_state=61453))])In a Jupyter environment, please rerun this cell to show the HTML representation or trust the notebook. Pipeline(steps=[('fp', MorganFingerprintTransformer()),\n",
- " ('rf', RandomForestRegressor(n_jobs=-1, random_state=61453))])MorganFingerprintTransformer()
RandomForestRegressor(n_jobs=-1, random_state=61453)
| \n", - " | Predicted pIC50 | \n", - "k-NN Score | \n", - "k-NN Status | \n", - "Leverage Score | \n", - "Leverage Status | \n", - "
|---|---|---|---|---|---|
| Drug | \n", - "\n", - " | \n", - " | \n", - " | \n", - " | \n", - " |
| Aspirin | \n", - "5.90 | \n", - "0.719194 | \n", - "Outside | \n", - "0.020058 | \n", - "Inside | \n", - "
| Viagra | \n", - "9.05 | \n", - "0.786921 | \n", - "Outside | \n", - "0.050743 | \n", - "Inside | \n", - "
| Heroin | \n", - "6.45 | \n", - "0.812649 | \n", - "Outside | \n", - "0.021588 | \n", - "Inside | \n", - "