{ "cells": [ { "cell_type": "markdown", "source": [ "# spDDB's Domain Detection evaluation metrics - DLPFC 151508" ], "metadata": { "id": "yWQeU7ibDwEz" }, "id": "yWQeU7ibDwEz" }, { "cell_type": "code", "source": [ "!git clone https://github.com/Zafar-Lab/spDDB.git\n", "%cd spDDB/Experiments/_Domain_Detection_Metrics_Calculation/" ], "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "2FRJ6L-HuQ6D", "outputId": "ed5393ee-ca7d-4907-cdcd-75f642daf8ca" }, "id": "2FRJ6L-HuQ6D", "execution_count": 1, "outputs": [ { "output_type": "stream", "name": "stdout", "text": [ "fatal: destination path 'spDDB' already exists and is not an empty directory.\n", "/content/spDDB/Experiments/_Domain_Detection_Metrics_Calculation\n" ] } ] }, { "cell_type": "code", "source": [ "!pip install scanpy\n", "!pip install squidpy" ], "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "whyxAzHVuWl5", "outputId": "3b9888fd-b325-4fef-b1e4-a005d91bb71a" }, "id": "whyxAzHVuWl5", "execution_count": 2, "outputs": [ { "output_type": "stream", "name": "stdout", "text": [ "Requirement already satisfied: scanpy in /usr/local/lib/python3.12/dist-packages (1.12.1)\n", "Requirement already satisfied: anndata>=0.10.8 in /usr/local/lib/python3.12/dist-packages (from scanpy) (0.12.16)\n", "Requirement already satisfied: certifi in /usr/local/lib/python3.12/dist-packages (from scanpy) (2026.5.20)\n", "Requirement already satisfied: fast-array-utils>=1.4 in /usr/local/lib/python3.12/dist-packages (from fast-array-utils[accel,sparse]>=1.4->scanpy) (1.4.1)\n", "Requirement already satisfied: h5py>=3.11 in /usr/local/lib/python3.12/dist-packages (from scanpy) (3.16.0)\n", "Requirement already satisfied: joblib in /usr/local/lib/python3.12/dist-packages (from scanpy) (1.5.3)\n", "Requirement already satisfied: legacy-api-wrap>=1.5 in /usr/local/lib/python3.12/dist-packages (from scanpy) (1.5)\n", "Requirement already satisfied: matplotlib>=3.9 in /usr/local/lib/python3.12/dist-packages (from scanpy) (3.10.0)\n", "Requirement already satisfied: natsort in /usr/local/lib/python3.12/dist-packages (from scanpy) (8.4.0)\n", "Requirement already satisfied: networkx>=2.8.8 in /usr/local/lib/python3.12/dist-packages (from scanpy) (3.6.1)\n", "Requirement already satisfied: numba>=0.60 in /usr/local/lib/python3.12/dist-packages (from scanpy) (0.60.0)\n", "Requirement already satisfied: numpy>=2 in /usr/local/lib/python3.12/dist-packages (from scanpy) (2.0.2)\n", "Requirement already satisfied: packaging>=25 in /usr/local/lib/python3.12/dist-packages (from scanpy) (26.2)\n", "Requirement already satisfied: pandas>=2.3 in /usr/local/lib/python3.12/dist-packages (from scanpy) (2.3.3)\n", "Requirement already satisfied: patsy in /usr/local/lib/python3.12/dist-packages (from scanpy) (1.0.2)\n", "Requirement already satisfied: pynndescent>=0.5.13 in /usr/local/lib/python3.12/dist-packages (from scanpy) (0.6.0)\n", "Requirement already satisfied: scikit-learn>=1.6 in /usr/local/lib/python3.12/dist-packages (from scanpy) (1.6.1)\n", "Requirement already satisfied: scipy>=1.13 in /usr/local/lib/python3.12/dist-packages (from scanpy) (1.16.3)\n", "Requirement already satisfied: seaborn>=0.13.2 in /usr/local/lib/python3.12/dist-packages (from scanpy) (0.13.2)\n", "Requirement already satisfied: session-info2 in /usr/local/lib/python3.12/dist-packages (from scanpy) (0.4.1)\n", "Requirement already satisfied: statsmodels>=0.14.5 in /usr/local/lib/python3.12/dist-packages (from scanpy) (0.14.6)\n", "Requirement already satisfied: tqdm in /usr/local/lib/python3.12/dist-packages (from scanpy) (4.67.3)\n", "Requirement already satisfied: typing-extensions in /usr/local/lib/python3.12/dist-packages (from scanpy) (4.15.0)\n", "Requirement already satisfied: umap-learn>=0.5.12 in /usr/local/lib/python3.12/dist-packages (from scanpy) (0.5.12)\n", "Requirement already satisfied: array-api-compat>=1.7.1 in /usr/local/lib/python3.12/dist-packages (from anndata>=0.10.8->scanpy) (1.15.0)\n", "Requirement already satisfied: scverse-misc>=0.0.3 in /usr/local/lib/python3.12/dist-packages (from anndata>=0.10.8->scanpy) (0.0.7)\n", "Requirement already satisfied: zarr!=3.0.*,>=2.18.7 in /usr/local/lib/python3.12/dist-packages (from anndata>=0.10.8->scanpy) (3.2.1)\n", "Requirement already satisfied: contourpy>=1.0.1 in /usr/local/lib/python3.12/dist-packages (from matplotlib>=3.9->scanpy) (1.3.3)\n", "Requirement already satisfied: cycler>=0.10 in /usr/local/lib/python3.12/dist-packages (from matplotlib>=3.9->scanpy) (0.12.1)\n", "Requirement already satisfied: fonttools>=4.22.0 in /usr/local/lib/python3.12/dist-packages (from matplotlib>=3.9->scanpy) (4.63.0)\n", "Requirement already satisfied: kiwisolver>=1.3.1 in /usr/local/lib/python3.12/dist-packages (from matplotlib>=3.9->scanpy) (1.5.0)\n", "Requirement already satisfied: pillow>=8 in /usr/local/lib/python3.12/dist-packages (from matplotlib>=3.9->scanpy) (11.3.0)\n", "Requirement already satisfied: pyparsing>=2.3.1 in /usr/local/lib/python3.12/dist-packages (from matplotlib>=3.9->scanpy) (3.3.2)\n", "Requirement already satisfied: python-dateutil>=2.7 in /usr/local/lib/python3.12/dist-packages (from matplotlib>=3.9->scanpy) (2.9.0.post0)\n", "Requirement already satisfied: llvmlite<0.44,>=0.43.0dev0 in /usr/local/lib/python3.12/dist-packages (from numba>=0.60->scanpy) (0.43.0)\n", "Requirement already satisfied: pytz>=2020.1 in /usr/local/lib/python3.12/dist-packages (from pandas>=2.3->scanpy) (2025.2)\n", "Requirement already satisfied: tzdata>=2022.7 in /usr/local/lib/python3.12/dist-packages (from pandas>=2.3->scanpy) (2026.2)\n", "Requirement already satisfied: threadpoolctl>=3.1.0 in /usr/local/lib/python3.12/dist-packages (from scikit-learn>=1.6->scanpy) (3.6.0)\n", "Requirement already satisfied: six>=1.5 in /usr/local/lib/python3.12/dist-packages (from python-dateutil>=2.7->matplotlib>=3.9->scanpy) (1.17.0)\n", "Requirement already satisfied: donfig>=0.8 in /usr/local/lib/python3.12/dist-packages (from zarr!=3.0.*,>=2.18.7->anndata>=0.10.8->scanpy) (0.8.1.post1)\n", "Requirement already satisfied: google-crc32c>=1.5 in /usr/local/lib/python3.12/dist-packages (from zarr!=3.0.*,>=2.18.7->anndata>=0.10.8->scanpy) (1.8.0)\n", "Requirement already satisfied: numcodecs>=0.14 in /usr/local/lib/python3.12/dist-packages (from zarr!=3.0.*,>=2.18.7->anndata>=0.10.8->scanpy) (0.16.5)\n", "Requirement already satisfied: pyyaml in /usr/local/lib/python3.12/dist-packages (from donfig>=0.8->zarr!=3.0.*,>=2.18.7->anndata>=0.10.8->scanpy) (6.0.3)\n", "Requirement already satisfied: squidpy in /usr/local/lib/python3.12/dist-packages (1.8.1)\n", "Requirement already satisfied: aiohttp>=3.8.1 in /usr/local/lib/python3.12/dist-packages (from squidpy) (3.14.0)\n", "Requirement already satisfied: anndata>=0.9 in /usr/local/lib/python3.12/dist-packages (from squidpy) (0.12.16)\n", "Requirement already satisfied: cycler>=0.11 in /usr/local/lib/python3.12/dist-packages (from squidpy) (0.12.1)\n", "Requirement already satisfied: dask-image>=0.5 in /usr/local/lib/python3.12/dist-packages (from squidpy) (2026.5.0)\n", "Requirement already satisfied: dask>=2021.2 in /usr/local/lib/python3.12/dist-packages (from dask[array]>=2021.2->squidpy) (2026.1.1)\n", "Requirement already satisfied: docrep>=0.3.1 in /usr/local/lib/python3.12/dist-packages (from squidpy) (0.3.2)\n", "Requirement already satisfied: fast-array-utils in /usr/local/lib/python3.12/dist-packages (from squidpy) (1.4.1)\n", "Requirement already satisfied: fsspec>=2021.11 in /usr/local/lib/python3.12/dist-packages (from squidpy) (2025.3.0)\n", "Requirement already satisfied: imagecodecs<2026,>=2025.8.2 in /usr/local/lib/python3.12/dist-packages (from squidpy) (2025.11.11)\n", "Requirement already satisfied: matplotlib-scalebar>=0.8 in /usr/local/lib/python3.12/dist-packages (from squidpy) (0.9.0)\n", "Requirement already satisfied: matplotlib>=3.3 in /usr/local/lib/python3.12/dist-packages (from squidpy) (3.10.0)\n", "Requirement already satisfied: networkx>=2.6 in /usr/local/lib/python3.12/dist-packages (from squidpy) (3.6.1)\n", "Requirement already satisfied: numba>=0.56.4 in /usr/local/lib/python3.12/dist-packages (from squidpy) (0.60.0)\n", "Requirement already satisfied: numpy>=1.23 in /usr/local/lib/python3.12/dist-packages (from squidpy) (2.0.2)\n", "Requirement already satisfied: omnipath>=1.0.7 in /usr/local/lib/python3.12/dist-packages (from squidpy) (1.0.12)\n", "Requirement already satisfied: pandas>=2.1 in /usr/local/lib/python3.12/dist-packages (from squidpy) (2.3.3)\n", "Requirement already satisfied: pillow>=8 in /usr/local/lib/python3.12/dist-packages (from squidpy) (11.3.0)\n", "Requirement already satisfied: pooch>=1.6 in /usr/local/lib/python3.12/dist-packages (from squidpy) (1.9.0)\n", "Requirement already satisfied: pyyaml>=6 in /usr/local/lib/python3.12/dist-packages (from squidpy) (6.0.3)\n", "Requirement already satisfied: scanpy>=1.9.3 in /usr/local/lib/python3.12/dist-packages (from squidpy) (1.12.1)\n", "Requirement already satisfied: scikit-image>=0.25 in /usr/local/lib/python3.12/dist-packages (from squidpy) (0.25.2)\n", "Requirement already satisfied: scikit-learn>=0.24 in /usr/local/lib/python3.12/dist-packages (from squidpy) (1.6.1)\n", "Requirement already satisfied: spatialdata-plot in /usr/local/lib/python3.12/dist-packages (from squidpy) (0.4.0)\n", "Requirement already satisfied: spatialdata>=0.7.1 in /usr/local/lib/python3.12/dist-packages (from squidpy) (0.7.3)\n", "Requirement already satisfied: statsmodels>=0.12 in /usr/local/lib/python3.12/dist-packages (from squidpy) (0.14.6)\n", "Requirement already satisfied: tifffile!=2022.4.22 in /usr/local/lib/python3.12/dist-packages (from squidpy) (2026.4.11)\n", "Requirement already satisfied: tqdm>=4.50.2 in /usr/local/lib/python3.12/dist-packages (from squidpy) (4.67.3)\n", "Requirement already satisfied: validators>=0.18.2 in /usr/local/lib/python3.12/dist-packages (from squidpy) (0.35.0)\n", "Requirement already satisfied: xarray>=2024.10 in /usr/local/lib/python3.12/dist-packages (from squidpy) (2025.12.0)\n", "Requirement already satisfied: zarr>=3 in /usr/local/lib/python3.12/dist-packages (from squidpy) (3.2.1)\n", "Requirement already satisfied: aiohappyeyeballs>=2.5.0 in /usr/local/lib/python3.12/dist-packages (from aiohttp>=3.8.1->squidpy) (2.6.2)\n", "Requirement already satisfied: aiosignal>=1.4.0 in /usr/local/lib/python3.12/dist-packages (from aiohttp>=3.8.1->squidpy) (1.4.0)\n", "Requirement already satisfied: attrs>=17.3.0 in /usr/local/lib/python3.12/dist-packages (from aiohttp>=3.8.1->squidpy) (26.1.0)\n", "Requirement already satisfied: frozenlist>=1.1.1 in /usr/local/lib/python3.12/dist-packages (from aiohttp>=3.8.1->squidpy) (1.8.0)\n", "Requirement already satisfied: multidict<7.0,>=4.5 in /usr/local/lib/python3.12/dist-packages (from aiohttp>=3.8.1->squidpy) (6.7.1)\n", "Requirement already satisfied: propcache>=0.2.0 in /usr/local/lib/python3.12/dist-packages (from aiohttp>=3.8.1->squidpy) (0.5.2)\n", "Requirement already satisfied: typing_extensions>=4.4 in /usr/local/lib/python3.12/dist-packages (from aiohttp>=3.8.1->squidpy) (4.15.0)\n", "Requirement already satisfied: yarl<2.0,>=1.17.0 in /usr/local/lib/python3.12/dist-packages (from aiohttp>=3.8.1->squidpy) (1.24.2)\n", "Requirement already satisfied: array-api-compat>=1.7.1 in /usr/local/lib/python3.12/dist-packages (from anndata>=0.9->squidpy) (1.15.0)\n", "Requirement already satisfied: h5py>=3.8 in /usr/local/lib/python3.12/dist-packages (from anndata>=0.9->squidpy) (3.16.0)\n", "Requirement already satisfied: legacy-api-wrap in /usr/local/lib/python3.12/dist-packages (from anndata>=0.9->squidpy) (1.5)\n", "Requirement already satisfied: natsort in /usr/local/lib/python3.12/dist-packages (from anndata>=0.9->squidpy) (8.4.0)\n", "Requirement already satisfied: packaging>=24.2 in /usr/local/lib/python3.12/dist-packages (from anndata>=0.9->squidpy) (26.2)\n", "Requirement already satisfied: scipy!=1.17.0,>=1.12 in /usr/local/lib/python3.12/dist-packages (from anndata>=0.9->squidpy) (1.16.3)\n", "Requirement already satisfied: scverse-misc>=0.0.3 in /usr/local/lib/python3.12/dist-packages (from anndata>=0.9->squidpy) (0.0.7)\n", "Requirement already satisfied: click>=8.1 in /usr/local/lib/python3.12/dist-packages (from dask>=2021.2->dask[array]>=2021.2->squidpy) (8.4.1)\n", "Requirement already satisfied: cloudpickle>=3.0.0 in /usr/local/lib/python3.12/dist-packages (from dask>=2021.2->dask[array]>=2021.2->squidpy) (3.1.2)\n", "Requirement already satisfied: partd>=1.4.0 in /usr/local/lib/python3.12/dist-packages (from dask>=2021.2->dask[array]>=2021.2->squidpy) (1.4.2)\n", "Requirement already satisfied: toolz>=0.12.0 in /usr/local/lib/python3.12/dist-packages (from dask>=2021.2->dask[array]>=2021.2->squidpy) (0.12.1)\n", "Requirement already satisfied: pims>=0.4.1 in /usr/local/lib/python3.12/dist-packages (from dask-image>=0.5->squidpy) (0.7)\n", "Requirement already satisfied: six in /usr/local/lib/python3.12/dist-packages (from docrep>=0.3.1->squidpy) (1.17.0)\n", "Requirement already satisfied: contourpy>=1.0.1 in /usr/local/lib/python3.12/dist-packages (from matplotlib>=3.3->squidpy) (1.3.3)\n", "Requirement already satisfied: fonttools>=4.22.0 in /usr/local/lib/python3.12/dist-packages (from matplotlib>=3.3->squidpy) (4.63.0)\n", "Requirement already satisfied: kiwisolver>=1.3.1 in /usr/local/lib/python3.12/dist-packages (from matplotlib>=3.3->squidpy) (1.5.0)\n", "Requirement already satisfied: pyparsing>=2.3.1 in /usr/local/lib/python3.12/dist-packages (from matplotlib>=3.3->squidpy) (3.3.2)\n", "Requirement already satisfied: python-dateutil>=2.7 in /usr/local/lib/python3.12/dist-packages (from matplotlib>=3.3->squidpy) (2.9.0.post0)\n", "Requirement already satisfied: llvmlite<0.44,>=0.43.0dev0 in /usr/local/lib/python3.12/dist-packages (from numba>=0.56.4->squidpy) (0.43.0)\n", "Requirement already satisfied: inflect>=4.1.0 in /usr/local/lib/python3.12/dist-packages (from omnipath>=1.0.7->squidpy) (7.5.0)\n", "Requirement already satisfied: requests>=2.24.0 in /usr/local/lib/python3.12/dist-packages (from omnipath>=1.0.7->squidpy) (2.32.4)\n", "Requirement already satisfied: urllib3>=1.26.0 in /usr/local/lib/python3.12/dist-packages (from omnipath>=1.0.7->squidpy) (2.5.0)\n", "Requirement already satisfied: wrapt>=1.12.0 in /usr/local/lib/python3.12/dist-packages (from omnipath>=1.0.7->squidpy) (1.17.3)\n", "Requirement already satisfied: pytz>=2020.1 in /usr/local/lib/python3.12/dist-packages (from pandas>=2.1->squidpy) (2025.2)\n", "Requirement already satisfied: tzdata>=2022.7 in /usr/local/lib/python3.12/dist-packages (from pandas>=2.1->squidpy) (2026.2)\n", "Requirement already satisfied: platformdirs>=2.5.0 in /usr/local/lib/python3.12/dist-packages (from pooch>=1.6->squidpy) (4.10.0)\n", "Requirement already satisfied: certifi in /usr/local/lib/python3.12/dist-packages (from scanpy>=1.9.3->squidpy) (2026.5.20)\n", "Requirement already satisfied: joblib in /usr/local/lib/python3.12/dist-packages (from scanpy>=1.9.3->squidpy) (1.5.3)\n", "Requirement already satisfied: patsy in /usr/local/lib/python3.12/dist-packages (from scanpy>=1.9.3->squidpy) (1.0.2)\n", "Requirement already satisfied: pynndescent>=0.5.13 in /usr/local/lib/python3.12/dist-packages (from scanpy>=1.9.3->squidpy) (0.6.0)\n", "Requirement already satisfied: seaborn>=0.13.2 in /usr/local/lib/python3.12/dist-packages (from scanpy>=1.9.3->squidpy) (0.13.2)\n", "Requirement already satisfied: session-info2 in /usr/local/lib/python3.12/dist-packages (from scanpy>=1.9.3->squidpy) (0.4.1)\n", "Requirement already satisfied: umap-learn>=0.5.12 in /usr/local/lib/python3.12/dist-packages (from scanpy>=1.9.3->squidpy) (0.5.12)\n", "Requirement already satisfied: imageio!=2.35.0,>=2.33 in /usr/local/lib/python3.12/dist-packages (from scikit-image>=0.25->squidpy) (2.37.3)\n", "Requirement already satisfied: lazy-loader>=0.4 in /usr/local/lib/python3.12/dist-packages (from scikit-image>=0.25->squidpy) (0.5)\n", "Requirement already satisfied: threadpoolctl>=3.1.0 in /usr/local/lib/python3.12/dist-packages (from scikit-learn>=0.24->squidpy) (3.6.0)\n", "Requirement already satisfied: annsel>=0.1.2 in /usr/local/lib/python3.12/dist-packages (from spatialdata>=0.7.1->squidpy) (0.1.2)\n", "Requirement already satisfied: datashader in /usr/local/lib/python3.12/dist-packages (from spatialdata>=0.7.1->squidpy) (0.19.1)\n", "Requirement already satisfied: distributed<2026.1.2 in /usr/local/lib/python3.12/dist-packages (from spatialdata>=0.7.1->squidpy) (2026.1.1)\n", "Requirement already satisfied: geopandas>=0.14 in /usr/local/lib/python3.12/dist-packages (from spatialdata>=0.7.1->squidpy) (1.1.3)\n", "Requirement already satisfied: multiscale-spatial-image==2.0.3 in /usr/local/lib/python3.12/dist-packages (from spatialdata>=0.7.1->squidpy) (2.0.3)\n", "Requirement already satisfied: ome-zarr>=0.14.0 in /usr/local/lib/python3.12/dist-packages (from spatialdata>=0.7.1->squidpy) (0.15.0)\n", "Requirement already satisfied: pyarrow in /usr/local/lib/python3.12/dist-packages (from spatialdata>=0.7.1->squidpy) (18.1.0)\n", "Requirement already satisfied: rich in /usr/local/lib/python3.12/dist-packages (from spatialdata>=0.7.1->squidpy) (13.9.4)\n", "Requirement already satisfied: setuptools in /usr/local/lib/python3.12/dist-packages (from spatialdata>=0.7.1->squidpy) (75.2.0)\n", "Requirement already satisfied: shapely>=2.0.1 in /usr/local/lib/python3.12/dist-packages (from spatialdata>=0.7.1->squidpy) (2.1.2)\n", "Requirement already satisfied: spatial-image>=1.2.3 in /usr/local/lib/python3.12/dist-packages (from spatialdata>=0.7.1->squidpy) (1.2.3)\n", "Requirement already satisfied: universal-pathlib>=0.2.6 in /usr/local/lib/python3.12/dist-packages (from spatialdata>=0.7.1->squidpy) (0.3.10)\n", "Requirement already satisfied: xarray-spatial>=0.3.5 in /usr/local/lib/python3.12/dist-packages (from spatialdata>=0.7.1->squidpy) (0.10.5)\n", "Requirement already satisfied: xarray-dataclass>=3.0.0 in /usr/local/lib/python3.12/dist-packages (from multiscale-spatial-image==2.0.3->spatialdata>=0.7.1->squidpy) (3.0.0)\n", "Requirement already satisfied: donfig>=0.8 in /usr/local/lib/python3.12/dist-packages (from zarr>=3->squidpy) (0.8.1.post1)\n", "Requirement already satisfied: google-crc32c>=1.5 in /usr/local/lib/python3.12/dist-packages (from zarr>=3->squidpy) (1.8.0)\n", "Requirement already satisfied: numcodecs>=0.14 in /usr/local/lib/python3.12/dist-packages (from zarr>=3->squidpy) (0.16.5)\n", "Requirement already satisfied: more-itertools>=10.7 in /usr/local/lib/python3.12/dist-packages (from annsel>=0.1.2->spatialdata>=0.7.1->squidpy) (10.8.0)\n", "Requirement already satisfied: narwhals>=2.14 in /usr/local/lib/python3.12/dist-packages (from narwhals[pandas]>=2.14->annsel>=0.1.2->spatialdata>=0.7.1->squidpy) (2.22.0)\n", "Requirement already satisfied: jinja2>=2.10.3 in /usr/local/lib/python3.12/dist-packages (from distributed<2026.1.2->spatialdata>=0.7.1->squidpy) (3.1.6)\n", "Requirement already satisfied: locket>=1.0.0 in /usr/local/lib/python3.12/dist-packages (from distributed<2026.1.2->spatialdata>=0.7.1->squidpy) (1.0.0)\n", "Requirement already satisfied: msgpack>=1.0.2 in /usr/local/lib/python3.12/dist-packages (from distributed<2026.1.2->spatialdata>=0.7.1->squidpy) (1.1.2)\n", "Requirement already satisfied: psutil>=5.8.0 in /usr/local/lib/python3.12/dist-packages (from distributed<2026.1.2->spatialdata>=0.7.1->squidpy) (5.9.5)\n", "Requirement already satisfied: sortedcontainers>=2.0.5 in /usr/local/lib/python3.12/dist-packages (from distributed<2026.1.2->spatialdata>=0.7.1->squidpy) (2.4.0)\n", "Requirement already satisfied: tblib!=3.2.0,!=3.2.1,>=1.6.0 in /usr/local/lib/python3.12/dist-packages (from distributed<2026.1.2->spatialdata>=0.7.1->squidpy) (3.2.2)\n", "Requirement already satisfied: tornado>=6.2.0 in /usr/local/lib/python3.12/dist-packages (from distributed<2026.1.2->spatialdata>=0.7.1->squidpy) (6.5.1)\n", "Requirement already satisfied: zict>=3.0.0 in /usr/local/lib/python3.12/dist-packages (from distributed<2026.1.2->spatialdata>=0.7.1->squidpy) (3.0.0)\n", "Requirement already satisfied: pyogrio>=0.7.2 in /usr/local/lib/python3.12/dist-packages (from geopandas>=0.14->spatialdata>=0.7.1->squidpy) (0.12.1)\n", "Requirement already satisfied: pyproj>=3.5.0 in /usr/local/lib/python3.12/dist-packages (from geopandas>=0.14->spatialdata>=0.7.1->squidpy) (3.7.2)\n", "Requirement already satisfied: typeguard>=4.0.1 in /usr/local/lib/python3.12/dist-packages (from inflect>=4.1.0->omnipath>=1.0.7->squidpy) (4.5.2)\n", "Requirement already satisfied: rangehttpserver in /usr/local/lib/python3.12/dist-packages (from ome-zarr>=0.14.0->spatialdata>=0.7.1->squidpy) (1.4.0)\n", "Requirement already satisfied: Deprecated in /usr/local/lib/python3.12/dist-packages (from ome-zarr>=0.14.0->spatialdata>=0.7.1->squidpy) (1.3.1)\n", "Requirement already satisfied: slicerator>=0.9.8 in /usr/local/lib/python3.12/dist-packages (from pims>=0.4.1->dask-image>=0.5->squidpy) (1.1.0)\n", "Requirement already satisfied: charset_normalizer<4,>=2 in /usr/local/lib/python3.12/dist-packages (from requests>=2.24.0->omnipath>=1.0.7->squidpy) (3.4.7)\n", "Requirement already satisfied: idna<4,>=2.5 in /usr/local/lib/python3.12/dist-packages (from requests>=2.24.0->omnipath>=1.0.7->squidpy) (3.18)\n", "Requirement already satisfied: pathlib-abc<0.6.0,>=0.5.1 in /usr/local/lib/python3.12/dist-packages (from universal-pathlib>=0.2.6->spatialdata>=0.7.1->squidpy) (0.5.2)\n", "Requirement already satisfied: zstandard in /usr/local/lib/python3.12/dist-packages (from xarray-spatial>=0.3.5->spatialdata>=0.7.1->squidpy) (0.25.0)\n", "Requirement already satisfied: colorcet in /usr/local/lib/python3.12/dist-packages (from datashader->spatialdata>=0.7.1->squidpy) (3.2.1)\n", "Requirement already satisfied: multipledispatch in /usr/local/lib/python3.12/dist-packages (from datashader->spatialdata>=0.7.1->squidpy) (1.0.0)\n", "Requirement already satisfied: param in /usr/local/lib/python3.12/dist-packages (from datashader->spatialdata>=0.7.1->squidpy) (2.4.0)\n", "Requirement already satisfied: pyct in /usr/local/lib/python3.12/dist-packages (from datashader->spatialdata>=0.7.1->squidpy) (0.6.0)\n", "Requirement already satisfied: s3fs in /usr/local/lib/python3.12/dist-packages (from fsspec[http,s3]->spatialdata>=0.7.1->squidpy) (2025.3.0)\n", "Requirement already satisfied: markdown-it-py>=2.2.0 in /usr/local/lib/python3.12/dist-packages (from rich->spatialdata>=0.7.1->squidpy) (4.2.0)\n", "Requirement already satisfied: pygments<3.0.0,>=2.13.0 in /usr/local/lib/python3.12/dist-packages (from rich->spatialdata>=0.7.1->squidpy) (2.20.0)\n", "Requirement already satisfied: MarkupSafe>=2.0 in /usr/local/lib/python3.12/dist-packages (from jinja2>=2.10.3->distributed<2026.1.2->spatialdata>=0.7.1->squidpy) (3.0.3)\n", "Requirement already satisfied: mdurl~=0.1 in /usr/local/lib/python3.12/dist-packages (from markdown-it-py>=2.2.0->rich->spatialdata>=0.7.1->squidpy) (0.1.2)\n", "Requirement already satisfied: aiobotocore<3.0.0,>=2.5.4 in /usr/local/lib/python3.12/dist-packages (from s3fs->fsspec[http,s3]->spatialdata>=0.7.1->squidpy) (2.26.0)\n", "Requirement already satisfied: aioitertools<1.0.0,>=0.5.1 in /usr/local/lib/python3.12/dist-packages (from aiobotocore<3.0.0,>=2.5.4->s3fs->fsspec[http,s3]->spatialdata>=0.7.1->squidpy) (0.13.0)\n", "Requirement already satisfied: botocore<1.41.6,>=1.41.0 in /usr/local/lib/python3.12/dist-packages (from aiobotocore<3.0.0,>=2.5.4->s3fs->fsspec[http,s3]->spatialdata>=0.7.1->squidpy) (1.41.5)\n", "Requirement already satisfied: jmespath<2.0.0,>=0.7.1 in /usr/local/lib/python3.12/dist-packages (from aiobotocore<3.0.0,>=2.5.4->s3fs->fsspec[http,s3]->spatialdata>=0.7.1->squidpy) (1.1.0)\n" ] } ] }, { "cell_type": "code", "execution_count": 3, "id": "53583cb1", "metadata": { "id": "53583cb1" }, "outputs": [], "source": [ "from Metrics import *" ] }, { "cell_type": "code", "source": [ "from google.colab import drive\n", "drive.mount('/content/drive')" ], "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "obxLnOp46H-g", "outputId": "62e1627d-ee4f-4115-ecfd-cd7824a63427" }, "id": "obxLnOp46H-g", "execution_count": 4, "outputs": [ { "output_type": "stream", "name": "stdout", "text": [ "Drive already mounted at /content/drive; to attempt to forcibly remount, call drive.mount(\"/content/drive\", force_remount=True).\n" ] } ] }, { "cell_type": "code", "execution_count": 5, "id": "17cf11d7", "metadata": { "id": "17cf11d7" }, "outputs": [], "source": [ "dataset_dict = {\"DLPFC151508\":{\n", " \"st_path\": f\"/content/drive/MyDrive/Benchmarking_Shared/spDDB_tutorials/1_data/ST.h5ad\",\n", " \"gnd_path\": f\"/content/drive/MyDrive/Benchmarking_Shared/spDDB_tutorials/1_data/metadata.tsv\"}\n", " }\n", "method_dict = {\"DLPFC151508\":{\"SCANIT\":\"/content/drive/MyDrive/Benchmarking_Shared/spDDB_tutorials/7_data/151508/output_SCANIT_151508.csv\"}}\n" ] }, { "cell_type": "code", "execution_count": 6, "id": "6bfff135", "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "6bfff135", "outputId": "f6887234-28a4-4397-aebb-b7ae48372e8b" }, "outputs": [ { "output_type": "stream", "name": "stdout", "text": [ "saving to /content/drive/MyDrive/Benchmarking_Shared/spDDB_tutorials/7_data/outputs\n" ] }, { "output_type": "stream", "name": "stderr", "text": [ "/usr/local/lib/python3.12/dist-packages/anndata/_core/anndata.py:1884: UserWarning: Variable names are not unique. To make them unique, call `.var_names_make_unique`.\n", " utils.warn_names_duplicates(\"var\")\n" ] }, { "output_type": "stream", "name": "stdout", "text": [ "Running on DLPFC151508_SCANIT\n", "Saved ARI results to /content/drive/MyDrive/Benchmarking_Shared/spDDB_tutorials/7_data/outputs/ARI_results.csv\n", "Saved NMI results to /content/drive/MyDrive/Benchmarking_Shared/spDDB_tutorials/7_data/outputs/NMI_results.csv\n", "Saved CHAOS results to /content/drive/MyDrive/Benchmarking_Shared/spDDB_tutorials/7_data/outputs/CHAOS_results.csv\n", "Saved PAS results to /content/drive/MyDrive/Benchmarking_Shared/spDDB_tutorials/7_data/outputs/PAS_results.csv\n", "Saved ASW results to /content/drive/MyDrive/Benchmarking_Shared/spDDB_tutorials/7_data/outputs/ASW_results.csv\n", "Saved HOM results to /content/drive/MyDrive/Benchmarking_Shared/spDDB_tutorials/7_data/outputs/HOM_results.csv\n", "Saved COM results to /content/drive/MyDrive/Benchmarking_Shared/spDDB_tutorials/7_data/outputs/COM_results.csv\n" ] } ], "source": [ "'''\n", "output is a new csv file of all methods and datasets for each metric, with the queried values populated.\n", "Old files of the same name will be overwritten.\n", "To compute for multiple methods and datasets, each new method and dataset can be added in the below dictionaries and queried in the function.\n", "'''\n", "output_path = \"/content/drive/MyDrive/Benchmarking_Shared/spDDB_tutorials/7_data/outputs\"\n", "compute_metrics([\"DLPFC151508\"], dataset_dict, [\"SCANIT\"], method_dict, error_log_file= output_path + \"error_log.txt\", output_dir= output_path, metric_names=\"all\")" ] }, { "cell_type": "code", "execution_count": 7, "id": "ced2dfef", "metadata": { "id": "ced2dfef", "outputId": "b6c2d639-ae5f-4b9e-8814-81c51ccbd86b", "colab": { "base_uri": "https://localhost:8080/" } }, "outputs": [ { "output_type": "stream", "name": "stdout", "text": [ "Saved ARI results to /content/drive/MyDrive/Benchmarking_Shared/spDDB_tutorials/7_data/outputs/ARI_results.csv\n", "Saved NMI results to /content/drive/MyDrive/Benchmarking_Shared/spDDB_tutorials/7_data/outputs/NMI_results.csv\n", "Saved CHAOS results to /content/drive/MyDrive/Benchmarking_Shared/spDDB_tutorials/7_data/outputs/CHAOS_results.csv\n", "Saved PAS results to /content/drive/MyDrive/Benchmarking_Shared/spDDB_tutorials/7_data/outputs/PAS_results.csv\n", "Saved ASW results to /content/drive/MyDrive/Benchmarking_Shared/spDDB_tutorials/7_data/outputs/ASW_results.csv\n", "Saved HOM results to /content/drive/MyDrive/Benchmarking_Shared/spDDB_tutorials/7_data/outputs/HOM_results.csv\n", "Saved COM results to /content/drive/MyDrive/Benchmarking_Shared/spDDB_tutorials/7_data/outputs/COM_results.csv\n" ] } ], "source": [ "'''\n", "This function is used to update values in the previously created metrics csv files for new methods and datasets.\n", "'''\n", "update_metrics([\"DLPFC151508\"], dataset_dict,[\"SCANIT\"], method_dict, error_log_file= output_path + \"error_log.txt\", output_dir= output_path, metric_names=\"all\")" ] } ], "metadata": { "kernelspec": { "display_name": "Python 3 (ipykernel)", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.12.2" }, "colab": { "provenance": [] } }, "nbformat": 4, "nbformat_minor": 5 }