diff --git a/CHANGELOG.md b/CHANGELOG.md index 7ce4970a..1d5c32dc 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -11,13 +11,14 @@ pipeline development was moved to nf-core and NBIS. The pipeline has undergone several iterations regarding its functionality and content; there are a significant number of changes, of which not all are listed here. In summary, the pipeline contains best-practice processing and analyses of pre- and post-Space -Ranger-processed data, including quality controls, normalisation, dimensionality +Ranger-processed data, including quality controls, normalization, dimensionality reduction, clustering, differential expression testing as well as output files compatible with further downstream analyses and/or exploration in _e.g._ [TissUUmaps](https://tissuumaps.github.io/) or bespoke user code. ### `Added` +- Separate reports into separate scripts [[#137](https://github.com/nf-core/spatialvi/pull/137)] - Use topic channels for software versions [[#133](https://github.com/nf-core/spatialvi/pull/133)] - Make the main spatial Docker image work with Seqera Containers [[#127](https://github.com/nf-core/spatialvi/pull/127)] - Fix 'dir' handling for cloud file systems [[#122](https://github.com/nf-core/spatialvi/pull/122)] diff --git a/README.md b/README.md index 764ba2f6..ce177809 100644 --- a/README.md +++ b/README.md @@ -33,7 +33,7 @@ the following steps: 0. Raw data processing with Space Ranger (optional) 1. Quality controls and filtering -2. Normalisation +2. Normalization 3. Dimensionality reduction and clustering 4. Differential gene expression testing diff --git a/bin/clustering.qmd b/bin/clustering.qmd deleted file mode 100644 index cebf2b64..00000000 --- a/bin/clustering.qmd +++ /dev/null @@ -1,163 +0,0 @@ ---- -title: "Dimensionality reduction and clustering" -format: - nf-core-html: default -jupyter: python3 ---- - -```{python} -#| tags: [parameters] -#| echo: false -input_sdata = "sdata_filtered.zarr" # Input: SpatialData file -cluster_resolution = 1 # Resolution for Leiden clustering -n_hvgs = 2000 # Number of HVGs to use for analyses -artifact_dir = "artifacts" # Output directory -output_adata = "adata_processed.h5ad" # Output: AnnData file -output_sdata = "sdata_processed.zarr" # Output: SpatialData file -``` - -The data has already been filtered in the _quality controls_ reports and is -saved in the SpatialData format: - -```{python} -#| warning: false -import spatialdata -import os -import scanpy as sc -import numpy as np -import pandas as pd -from spatialdata_io.experimental import to_legacy_anndata -from anndata import AnnData -from umap import UMAP -from matplotlib import pyplot as plt -import seaborn as sns -import leidenalg -from IPython.display import display, Markdown -``` - -```{python} -# Keep only alphanumeric characters, underscores, and hyphens in the sample ID -sample_id = "".join( - filter(lambda x: x.isalnum() or x in ["_", "-"], meta["id"]) -) - -sdata = spatialdata.read_zarr(input_sdata, ["images", "tables", "shapes"]) -adata = to_legacy_anndata( - sdata, - coordinate_system=f"{sample_id}_downscaled_hires", - table_name=f"{sample_id}_table", - include_images=True -) - -print("Content of the SpatialData table object:") -print(adata) -``` - -# Normalization - -Before we can continue working on the data it needs to be normalized. We here -use the built-in `normalize_total` method from [Scanpy](https://scanpy.readthedocs.io/en/stable/) -followed by a log-transformation. - -```{python} -sc.pp.normalize_total(adata, inplace=True) -sc.pp.log1p(adata) -``` - -# Feature selection - -Not all features (genes, in this case) are informative, and selecting for a -subset of the total features is commonly done prior to clustering. By selecting -the most variable genes in a dataset we can capture those most important in -regards to yielding a good separation of clusters. - -```{python} -# layout-nrow: 1 -# Find top HVGs and print results -sc.pp.highly_variable_genes(adata, flavor="seurat", n_top_genes=n_hvgs) -var_genes_all = adata.var.highly_variable -print("Extracted highly variable genes: %d"%sum(var_genes_all)) - -# Plot the HVGs -plt.rcParams["figure.figsize"] = (4.5, 4.5) -sc.pl.highly_variable_genes(adata) -``` - -# Clustering - -To uncover the underlying structure of the transcriptional landscape, we perform -manifold embedding and clustering based on transcriptional similarity. Principal -Component Analysis (PCA) is applied to reduce dimensionality, and UMAP (Uniform -Manifold Approximation and Projection) is used for visualization. The Leiden -algorithm is employed for clustering with a given resolution. - -```{python} -sc.pp.pca(adata) -sc.pp.neighbors(adata) -sc.tl.umap(adata) -sc.tl.leiden(adata, key_added="clusters", resolution=cluster_resolution) -Markdown(f"Resolution for Leiden clustering: `{cluster_resolution}`") -``` - -## All clusters - -We then generate UMAP plots to visualize the distribution of clusters: - -```{python} -#| warning: false -plt.rcParams["figure.figsize"] = (7, 7) -sc.pl.umap(adata, color="clusters") -``` - -## Counts and genes - -We can also visualise the total counts and the genes with at least 1 count in -the UMAP: - -```{python} -# Make plots of UMAP of ST spots clusters -plt.rcParams["figure.figsize"] = (3.5, 3.5) -sc.pl.umap(adata, color=["total_counts", "n_genes_by_counts"]) -``` - -## Individual clusters - -An additional visualisation is to show where the various spots are in each -individual cluster while ignoring all other cluster: - -```{python} -sc.tl.embedding_density(adata, basis="umap", groupby="clusters") -sc.pl.embedding_density(adata, groupby="clusters", ncols=2) -``` - -# Spatial visualisation - -Next, we examine how total counts and the number of detected genes behave in -spatial coordinates by overlaying the spots on the tissue image itself. - -```{python} -#| layout-nrow: 2 -plt.rcParams["figure.figsize"] = (8, 8) -sc.pl.spatial(adata, img_key="hires", library_id=f"{sample_id}_hires_image", color="total_counts", size=1.25) -sc.pl.spatial(adata, img_key="hires", library_id=f"{sample_id}_hires_image", color="n_genes_by_counts", size=1.25) -``` - -To gain insights into tissue organization and potential inter-cellular -communication, we visualize the spatial distribution of clusters on the image. -Spots belonging to the same cluster in gene expression space often co-occur in -spatial dimensions, providing valuable information about the spatial -organization of cells. - -```{python} -# TODO: Can the colour bar on this figure be fit to the figure? -plt.rcParams["figure.figsize"] = (7, 7) -sc.pl.spatial(adata, img_key="hires", library_id=f"{sample_id}_hires_image", color="clusters", size=1.25) -``` - -```{python} -#| echo: false -del sdata.tables[f"{sample_id}_table"] -sdata.tables[f"{sample_id}_table"] = adata -adata.write(os.path.join(artifact_dir, output_adata)) -sdata.write(os.path.join(artifact_dir, output_sdata)) -``` diff --git a/bin/integration.qmd b/bin/integration.qmd deleted file mode 100644 index 3bf4913b..00000000 --- a/bin/integration.qmd +++ /dev/null @@ -1,264 +0,0 @@ ---- -title: "Data integration and batch correction" -format: - nf-core-html: default -jupyter: python3 ---- - -# Introduction - -This report describes the integration and quality control processes for spatial -data analysis using `scanpy`, `scanorama`, and `spatialdata`. After loading -multiple datasets, we examine various covariates and perform data normalization -and batch correction. Each dataset is first independently quality controlled -before merging them into a single integrated dataset for downstream analysis. - -```{python} -# Import necessary packages -import scanpy as sc -import anndata as an -import math -import matplotlib.pyplot as plt -import seaborn as sns -import scanorama -import spatialdata -import os -import glob -import scipy.sparse as sp -from matplotlib.legend import Legend -``` - -```{python} -# Parameter cell -#| tags: [parameters] -#| echo: false -input_sdata = "merged_sdata.zarr" # Input: SpatialData file -cluster_resolution = 1 # Resolution for Leiden clustering -n_hvgs = 2000 # Parameter: Number of HVGs to use for analyses -artifact_dir = "artifacts" # Parameter: artifact directory -output_sdata = "integrated_sdata.zarr" # Output: Integrated SpatialData file -output_adata = "integrated_adata.h5ad" # Output: Integrated AnnData file -``` - -```{python} -# Setup and parameter configurations -sc.set_figure_params(facecolor="white", figsize=(8, 8)) -sc.settings.verbosity = 3 -``` - -# Load and Inspect Data - -The data files are loaded from the file list. -```{python} -# Load all zarr SpatialData files -sdata = spatialdata.read_zarr(input_sdata) -``` - -# Highly Variable Genes Selection - -Next, we select highly variable genes for each dataset. This step is essential to retain biologically meaningful genes and reduce noise. - -```{python} -for table_name, adata in sdata.tables.items(): - sc.pp.highly_variable_genes(adata, flavor="seurat", n_top_genes=n_hvgs, inplace=True) -``` - -# Data Integration - -To prepare for batch correction, we first convert the data matrices to a sparse format, making them compatible with downstream processing in `scanorama`. - -```{python} -for name, adata in sdata.tables.items(): - adata.X = sp.csr_matrix(adata.X) - adata.var_names_make_unique() - adata.obs["library_id"] = name -``` - -# Batch Correction - -Using `scanorama`, we perform batch correction to minimize differences between datasets. - -```{python} -# List of AnnData tables from each dataset -adatas = list(sdata.tables.values()) -# Perform batch correction -adatas_corrected = scanorama.correct_scanpy(adatas, return_dimred=True) -``` - -# Data Concatenation - -After correction, we concatenate the datasets into a single `AnnData` object for integrated analysis. - -```{python} -adata_integrated = sc.concat( - adatas_corrected, - label="library_id", - uns_merge="unique", - keys=sdata.tables.keys(), - index_unique="-" -) -adata_integrated -``` - -# Dimensionality Reduction - -We perform dimensionality reduction to visualize the data. -We compare the UMAP plots before and after batch correction. - -```{python} -# Create a figure with two subplots -fig, axes = plt.subplots(1, 2, figsize=(12, 6), sharex=True, sharey=True) -adata_integrated_copy = adata_integrated.copy() -# Compute neighbors and UMAP before integration -sc.pp.neighbors(adata_integrated_copy) -sc.tl.umap(adata_integrated_copy) - -# Plot UMAP before integration -sc.pl.umap( - adata_integrated_copy, - color=["library_id"], - palette=sc.pl.palettes.default_20, - ax=axes[0], - show=False, - legend_loc=None, # Disable the individual legend -) -axes[0].set_title("Before integration") - -# Compute neighbors and UMAP after integration -sc.pp.neighbors(adata_integrated, use_rep="X_scanorama") -sc.tl.umap(adata_integrated) - -# Plot UMAP after integration -sc.pl.umap( - adata_integrated, - color=["library_id"], - palette=sc.pl.palettes.default_20, - ax=axes[1], - show=False, - legend_loc=None, # Disable the individual legend -) -axes[1].set_title("After integration") - -# Add a shared legend at the bottom -# Extract unique categories and colors from "library_id" -library_ids = adata_integrated.obs["library_id"].cat.categories -colors = sc.pl.palettes.default_20[:len(library_ids)] - -# Create custom legend elements -legend_elements = [ - plt.Line2D([0], [0], marker="o", color=color, linestyle="", markersize=8, label=lib_id) - for lib_id, color in zip(library_ids, colors) -] - -# Add the legend to the figure -fig.legend( - handles=legend_elements, - loc="lower center", - ncol=len(library_ids) // 2, # Adjust columns based on the number of categories - bbox_to_anchor=(0.5, -0.05), # Position the legend outside the plot - frameon=False, -) - -# Adjust layout and display the figure -plt.tight_layout(rect=[0, 0.1, 1, 1]) # Leave space for the legend -plt.show() -``` - -# Clustering - -We perform clustering on the integrated dataset. Principal -Component Analysis (PCA) is applied to reduce dimensionality. The Leiden -algorithm is employed for clustering with a given resolution. - -```{python} -sc.pp.pca(adata_integrated) -sc.pp.neighbors(adata_integrated) -sc.tl.leiden(adata_integrated, key_added="clusters", resolution=cluster_resolution) -``` - -We compare the clusters of the integrated samples before and after batch correction. - -```{python} -# Plot UMAP after integration -sc.pl.umap( - adata_integrated, - color=["clusters"], - palette=sc.pl.palettes.godsnot_102 -) -``` - -# Spatial Visualization - -Finally, we visualize the spatial distribution of clusters on the tissue image of all samples. - -```{python} -# We have N samples, we will create a 2xN/2 grid of plots -n_samples = len(sdata.tables) -n_cols = math.ceil(n_samples / 2) -n_rows = 2 - -# Create a figure with subplots -fig, axes = plt.subplots(n_rows, n_cols, figsize=(4 * n_cols, 4 * n_rows)) - -# Flatten the axes for easier indexing -axes = axes.flatten() - -# Plot spatial distribution of clusters for each sample -for i, (table_name, adata) in enumerate(sdata.tables.items()): - sample_name = table_name.replace("_table", "") - sc.pl.spatial( - adata_integrated[adata_integrated.obs["library_id"] == table_name], - img_key="hires", - library_id=f"{sample_name}_hires_image", - color="clusters", - size=1.25, - ax=axes[i], - show=False, - legend_loc=None, # Disable the individual legend - ) - axes[i].set_title(f"Sample: {sample_name}") - -# Hide any remaining axes -for j in range(i + 1, len(axes)): - axes[j].axis("off") - -# Add a shared legend at the bottom -# Extract unique categories and colors from "library_id" -library_ids = adata_integrated.obs["clusters"].cat.categories -colors = sc.pl.palettes.godsnot_102[:len(library_ids)] - -# Create custom legend elements -legend_elements = [ - plt.Line2D([0], [0], marker="o", color=color, linestyle="", markersize=8, label=lib_id) - for lib_id, color in zip(library_ids, colors) -] - -# Add the legend to the figure -fig.legend( - handles=legend_elements, - loc="lower center", - ncol=len(library_ids) // 3, # Adjust columns based on the number of categories - bbox_to_anchor=(0.5, -0.15), # Position the legend outside the plot - frameon=False, -) - -# Adjust layout and display the figure -plt.tight_layout() -plt.show() -``` - -# Save Integrated Data - -Finally, we save the integrated data to a `zarr` file for downstream analysis. - -```{python} -# We push back the integrated data to the SpatialData object -for i, table_name in enumerate(sdata.tables.keys()): - sdata.tables[table_name].obsm["X_scanorama"] = adatas_corrected[i].obsm["X_scanorama"] - sdata.tables[table_name].obsm["X_umap"] = adatas_corrected[i].obsm["X_umap"] - sdata.tables[table_name].obs["clusters"] = adatas_corrected[i].obs["clusters"] - -# Save the integrated data -sdata.write(os.path.join(artifact_dir, output_sdata)) -adata_integrated.write(os.path.join(artifact_dir, output_adata)) -``` diff --git a/bin/merge_sdata.py b/bin/merge_sdata.py deleted file mode 100755 index 163e50f5..00000000 --- a/bin/merge_sdata.py +++ /dev/null @@ -1,32 +0,0 @@ -#!/usr/bin/env python - -import argparse -import spatialdata - -if __name__ == "__main__": - parser = argparse.ArgumentParser(description="Merge SpatialData objects") - parser.add_argument("files", nargs="+", help="List of SpatialData files to merge") - parser.add_argument("output", help="Output file name") - args = parser.parse_args() - - # Read all zarr SpatialData directories - sdatas = [] - for file in args.files: - sdata = spatialdata.read_zarr(file) - sdatas.append(sdata) - - # Merge the data - output_sdata = spatialdata.concatenate( - sdatas, - region_key=None, - instance_key=None, - concatenate_tables=False, - obs_names_make_unique=True, - modify_tables_inplace=False, - ) - - # Save the concatenated data - output_sdata.write( - args.output, - overwrite=True - ) diff --git a/bin/quality_controls.qmd b/bin/quality_controls.qmd deleted file mode 100644 index 2ac72dd6..00000000 --- a/bin/quality_controls.qmd +++ /dev/null @@ -1,322 +0,0 @@ ---- -title: "Pre-processing and quality controls" -format: - nf-core-html: default -jupyter: python3 ---- - -# Introduction - -Spatial Transcriptomics data analysis involves several steps, including quality -controls (QC) and pre-processing, to ensure the reliability of downstream -analyses. This is an essential step in spatial transcriptomics to identify and -filter out spots and genes that may introduce noise and/or bias into the -analysis. - -This report outlines the QC and pre-processing steps for Visium Spatial -Transcriptomics data using the [AnnData format](https://anndata.readthedocs.io/en/latest/tutorials/notebooks/getting-started.html) -and the [`scanpy` Python package](https://scanpy.readthedocs.io/en/stable/). -The AnnData format is utilized to organize and store the Spatial Transcriptomics -data. It includes information about counts, features, observations, and -additional metadata. The AnnData format ensures compatibility with various -analysis tools and facilitates seamless integration into existing workflows. -The AnnData object is saved in the `Tables` element of a zarr [SpatialData object](https://spatialdata.scverse.org/en/latest/design_doc.html#table-table-of-annotations-for-regions). - -```{python} -#| tags: [parameters] -#| echo: false -input_sdata = "sdata_raw.zarr" # Input: SpatialData file -min_counts = 500 # Min counts per spot -min_genes = 250 # Min genes per spot -min_spots = 1 # Min spots per gene -mito_threshold = 20 # Mitochondrial content threshold (%) -ribo_threshold = 0 # Ribosomal content threshold (%) -hb_threshold = 100 # content threshold (%) -artifact_dir = "artifacts" -output_adata = "adata_filtered.h5ad" # Output: AnnData file -output_sdata = "sdata_filtered.zarr" # Output: SpatialData file -``` - -```{python} -import pandas as pd -import matplotlib.pyplot as plt -import numpy as np -import os -import scanpy as sc -import scipy -import seaborn as sns -import spatialdata -from spatialdata_io.experimental import to_legacy_anndata -from spatialdata.models import get_table_keys -from anndata import AnnData -from IPython.display import display, Markdown -from textwrap import dedent -plt.rcParams["figure.figsize"] = (6, 6) -``` - -```{python} -# Keep only alphanumeric characters, underscores, and hyphens in the sample ID -sample_id = "".join( - filter(lambda x: x.isalnum() or x in ["_", "-"], meta["id"]) -) - -# Read the data -sdata = spatialdata.read_zarr(input_sdata, ["images", "tables", "shapes"]) -adata = to_legacy_anndata( - sdata, - coordinate_system=f"{sample_id}_downscaled_hires", - table_name=f"{sample_id}_table", - include_images=True -) - -# Convert X matrix from CSR to CSC dense matrix for output compatibility -adata.X = scipy.sparse.csc_matrix(adata.X) - -# Store the raw data so that it can be used for analyses from scratch if desired -adata.layers['raw'] = adata.X.copy() - -# Print the anndata object for inspection -print("Content of the AnnData object:") -print(adata) -``` - -# Quality controls - -There are several different quality metrics that are normally computed for -spatial data. Common metrics include the number of genes with a least 1 count -(`n_genes_by_counts`), counts per spot (`total_counts`) as well as the -percentage of counts from mitochondrial, ribosomal and haemoglobin genes -(`pct_counts_[mt/ribo/hb]`). - -```{python} -# Calculate mitochondrial, ribosomal and haemoglobin percentages -adata.var['mt'] = adata.var_names.str.startswith('MT-') -adata.var['ribo'] = adata.var_names.str.contains(("^RP[LS]")) -adata.var['hb'] = adata.var_names.str.contains(("^HB[AB]")) -sc.pp.calculate_qc_metrics(adata, qc_vars=["mt", "ribo", "hb"], - inplace=True, log1p=False) - -# Save a copy of data as a restore-point if filtering results in 0 spots left -adata_before_filtering = adata.copy() -adata.var_names_make_unique() -``` - -## Violin plots - -The following violin plots show the distribution of the number of genes per -counts and counts per spot, as well as the percentage of counts from -mitochondrial, ribosomal and haemoglobin genes: - -```{python} -#| layout-nrow: 2 -sc.pl.violin(adata, ['n_genes_by_counts', 'total_counts'], - multi_panel=True, jitter=0.4, rotation= 45) -sc.pl.violin(adata, ['pct_counts_mt', 'pct_counts_ribo', 'pct_counts_hb'], - multi_panel=True, jitter=0.4, rotation= 45) -``` - -## Spatial distributions - -The same quality metrics can also be plotted on top of the tissue so that -spatial patterns may be discerned: - -```{python} -#| layout-nrow: 2 -sc.pl.spatial(adata, img_key="hires", library_id=f"{sample_id}_hires_image", color = ["total_counts", "n_genes_by_counts"], size=1.25) -sc.pl.spatial(adata, img_key="hires", library_id=f"{sample_id}_hires_image", color = ["pct_counts_mt", "pct_counts_ribo", "pct_counts_hb"], size=1.25) -``` - -## Scatter plots - -It is also useful to compare some of these quality metrics against each other in -scatter plots, such as mitochondrial versus ribosomal content and the total -counts versus the number of genes: - -```{python} -#| layout-ncol: 2 -sc.pl.scatter(adata, x='pct_counts_ribo', y='pct_counts_mt') -sc.pl.scatter(adata, x='total_counts', y='n_genes_by_counts') -``` - -## Top expressed genes - -It can also be informative to see which genes are the most expressed in the -dataset; the following figure shows the top 20 most expressed genes. - -```{python} -sc.pl.highest_expr_genes(adata, n_top=20) -``` - -# Filtering - -## Non-tissue spots - -The following plot indicates which spots are outside of the tissue. These spots -are uninformative and are thus removed. - -```{python} -# Create a string observation "obs/in_tissue_str" with "In tissue" and "Outside tissue": -adata.obs["in_tissue_str"] = ["In tissue" if x == 1 else "Outside tissue" for x in adata.obs["in_tissue"]] - -# Plot spots inside tissue -sc.pl.spatial(adata, img_key="hires", library_id=f"{sample_id}_hires_image", color=["in_tissue_str"], title="Spots in tissue", size=1.25) -del adata.obs["in_tissue_str"] - -# Remove spots outside tissue and print results -n_total_spots = adata.shape[0] -adata = adata[adata.obs["in_tissue"] == 1] -n_spots_in_tissue = adata.shape[0] -n_spots_outside_tissue = n_total_spots - n_spots_in_tissue -Markdown(f""" -- Removed `{n_spots_outside_tissue}` spots outside the tissue. -""") -``` - -## Counts, genes and spots - -We filter spots based on minimum counts and genes, but also filter genes based -on minimum spots; exactly what filtering criteria is reasonable is up to you and -your knowledge of the specific tissue at hand. - -```{python} -#| warning: false -# Filter spots based on counts -n_current_spots = adata.shape[0] -sc.pp.filter_cells(adata, min_counts=min_counts) -n_spots_filtered_min_counts = n_current_spots - adata.shape[0] - -# Filter spots based on genes -n_current_spots = adata.shape[0] -sc.pp.filter_cells(adata, min_genes=min_genes) -n_spots_filtered_min_genes = n_current_spots - adata.shape[0] - -# Filter genes based on spots -n_total_genes = adata.shape[1] -sc.pp.filter_genes(adata, min_cells=min_spots) -n_genes_filtered_min_spots = n_total_genes - adata.shape[1] - -# Print results -Markdown(f""" -- Removed `{n_spots_filtered_min_counts}` spots with less than `{min_counts}` -total counts. -- Removed `{n_spots_filtered_min_genes}` spots with less than `{min_genes}` -genes expressed. -- Removed `{n_genes_filtered_min_spots}` genes expressed in less than -`{min_spots}` spots. -""") -``` - -## Mito, ribo and Hb - -We can also filter for mitochondrial, ribosomal and haemoglobin content of the -cells; exactly which filtering threshold should be used are, again, up to you -and your biological knowledge of the sample at hand. Please note that neither -ribosomal nor haemoglobin content is filtered by default. - -```{python} -# Filter spots -n_current_spots = adata.shape[0] -adata = adata[adata.obs["pct_counts_mt"] <= mito_threshold] -n_spots_filtered_mito = n_current_spots - adata.shape[0] -n_current_spots = adata.shape[0] -adata = adata[adata.obs["pct_counts_ribo"] >= ribo_threshold] -n_spots_filtered_ribo = n_current_spots - adata.shape[0] -n_current_spots = adata.shape[0] -adata = adata[adata.obs["pct_counts_hb"] <= hb_threshold] -n_spots_filtered_hb = n_current_spots - adata.shape[0] - -# Print results -Markdown(f""" -- Removed `{n_spots_filtered_mito}` spots with more than `{mito_threshold}%` mitochondrial content. -- Removed `{n_spots_filtered_ribo}` spots with less than `{ribo_threshold}%` ribosomal content. -- Removed `{n_spots_filtered_hb}` spots with more than `{hb_threshold}%` haemoglobin content. -""") -``` - -```{python} -#| echo: false -# Restore non-filtered data if filtering results in 0 spots left -if (adata.shape[0] == 0 or adata.shape[1] == 0): - adata = adata_before_filtering - display( - Markdown(dedent( - """ - ::: {.callout-important .content-visible when-format="html"} - ## Issue: no spots remain after filtering - - An anomaly has been detected in the data: following the filtering - process, all spots have been excluded. It is imperative to assess - the data quality and carefully review the values of the filtering - parameters. - - To ensure the smooth progression of downstream analysis, the - exported AnnData will, for the time being, remain unfiltered. This - precautionary measure is implemented to facilitate continued - analysis while investigating and resolving the cause of the - unexpected removal of all spots during filtering. - ::: - """ - )) - ) -``` - -## Filtering results - -```{python} -# Print filtering results -n_remaining_spots = adata.shape[0] -n_remaining_genes = adata.shape[1] -n_spots_filtered = n_total_spots - n_remaining_spots -n_genes_filtered = n_total_genes - n_remaining_genes -Markdown(f""" -The final results of all the filtering is as follows: - -- A total of `{n_remaining_spots}` spots out of `{n_total_spots}` remain after filtering. -- A total of `{n_remaining_genes}` genes out of `{n_total_genes}` remain after filtering. -""") -``` - -```{python} -#| layout-nrow: 2 -sc.pl.violin(adata, ['n_genes_by_counts', 'total_counts'], - multi_panel=True, jitter=0.4, rotation= 45) -sc.pl.violin(adata, ['pct_counts_mt', 'pct_counts_ribo', 'pct_counts_hb'], - multi_panel=True, jitter=0.4, rotation= 45) -``` - -```{python} -del sdata.tables[f"{sample_id}_table"] -sdata.tables[f"{sample_id}_table"] = adata -# Filtering spatialdata elements based on the anndata elements: -region, _, instance_key = get_table_keys(sdata[f"{sample_id}_table"]) -# If region is a list, take the first element -if isinstance(region, list): - region = region[0] -matched_element, _ = spatialdata.match_element_to_table(sdata, region, f"{sample_id}_table") -sdata[region] = matched_element[region] - -sdata.write(os.path.join(artifact_dir, output_sdata)) -``` - -```{python} -#| echo: false -# Write QC metrics to file for MultiQC aggregation -mqc_dict = { - 'sample': [meta['id']], - 'total_spots': [n_total_spots], - 'spots_filtered': [n_spots_filtered], - 'spots_remaining': [n_remaining_spots], - 'spots_filtered_outside_tissue': [n_spots_outside_tissue], - 'spots_filtered_total_counts': [n_spots_filtered_min_counts], - 'spots_filtered_genes_expressed': [n_spots_filtered_min_genes], - 'spots_filtered_mito_content': [n_spots_filtered_mito], - 'spots_filtered_ribo_content': [n_spots_filtered_ribo], - 'spots_filtered_hb_content': [n_spots_filtered_hb], - 'total_genes': [n_total_genes], - 'genes_filtered': [n_genes_filtered], - 'genes_remaining': [n_remaining_genes] -} -mqc_data = pd.DataFrame(mqc_dict) -mqc_name = 'artifacts/mqc_quality_controls_' + meta['id'] + '.csv' -mqc_data.to_csv(mqc_name, index=False) -``` diff --git a/bin/read_data.py b/bin/read_data.py deleted file mode 100755 index 255848a2..00000000 --- a/bin/read_data.py +++ /dev/null @@ -1,89 +0,0 @@ -#!/usr/bin/env python - -# Load packages -import argparse -import os -import shutil - -import spatialdata_io - -if __name__ == "__main__": - # Parse command-line arguments - parser = argparse.ArgumentParser( - description="Load spatial transcriptomics data from MTX matrices and aligned images." - ) - parser.add_argument( - "--SRCountDir", - metavar="SRCountDir", - type=str, - default=None, - help="Input directory with Spaceranger data.", - ) - parser.add_argument( - "--output_sdata", - metavar="output_sdata", - type=str, - default=None, - help="Output spatialdata zarr path.", - ) - parser.add_argument( - "--sampleID", - metavar="sampleID", - type=str, - default=None, - help="Sample ID.", - ) - parser.add_argument( - "--visium_hd", - action='store_true', - help="Visium HD data.", - ) - parser.add_argument( - "--bin_size", - metavar="bin_size", - type=int, - default=8, - help="Bin size in micrometers.", - ) - - args = parser.parse_args() - - # Keep only alphanumeric characters, underscores, and hyphens in the sample ID - args.sampleID = "".join( - filter(lambda x: x.isalnum() or x in ["_", "-"], args.sampleID) - ) - - # Read Visium data - if args.visium_hd: - # Copy file f"{args.SRCountDir}/feature_slice.h5" to f"{args.sampleID}_feature_slice.h5" - shutil.copyfile( - os.path.join(args.SRCountDir, "feature_slice.h5"), - os.path.join(args.SRCountDir, f"{args.sampleID}_feature_slice.h5") - ) - spatialdata = spatialdata_io.visium_hd( - args.SRCountDir, - bin_size=[args.bin_size], - dataset_id=args.sampleID, - ) - table_name = f'square_{args.bin_size:03d}um' - else: - spatialdata = spatialdata_io.visium( - args.SRCountDir, - counts_file="raw_feature_bc_matrix.h5", - dataset_id=args.sampleID, - ) - table_name = 'table' - - # Remove sampleID metadata from table: - if args.sampleID in spatialdata.tables[table_name].uns.keys(): - del spatialdata.tables[table_name].uns[args.sampleID] - - # Rename table into sample id - spatialdata.tables[f'{args.sampleID}_table'] = spatialdata.tables[table_name] - del spatialdata.tables[table_name] - - # Rename var_names to unique: - spatialdata.tables[f'{args.sampleID}_table'].var_names_make_unique() - - # Write raw spatialdata to file - spatialdata.write(args.output_sdata, overwrite=True) diff --git a/bin/report-integrated.qmd b/bin/report-integrated.qmd new file mode 100644 index 00000000..c82a88d2 --- /dev/null +++ b/bin/report-integrated.qmd @@ -0,0 +1,174 @@ +--- +title: "Data integration" +format: + nf-core-html: + echo: false + warning: false +lightbox: true +execute: + keep-ipynb: true +jupyter: python3 +--- + +# Introduction + +This report shows the results of the integration across all samples; you can +find the reports for each individual sample in their respective directory under +`/`. + +```{python parameters} +#| tags: [parameters] +input_adata = "integrated.h5ad" # Input: H5AD file +input_sdata = "integrated.zarr" # Input: Zarr file +sample_col = "library_id" # Parameter: obs column with sample names +cluster_col = "clusters_integrated" # Parameter: obs column with cluster names +artifact_dir = "artifacts" # Parameter: artifact directory +``` + +```{python imports} +# Disable OpenMP CPU topology detection for macOS compatibility +import os +os.environ["KMP_AFFINITY"] = "disabled" + +import anndata as an +import matplotlib.pyplot as plt +import scanorama +import scanpy as sc +import scipy.sparse as sp +import seaborn as sns +import spatialdata +from IPython.display import display, Markdown + +# Create artefact directory +os.makedirs(artifact_dir, exist_ok=True) +``` + +```{python common-functions} +def create_tabset(content): + """ + Programmatically create tabsets with headers and plots. + + Arguments: + content (list): A list of (str, Figure) tuples + """ + display(Markdown('::: {.panel-tabset}')) + for name, fig in content: + display(Markdown(f"#### {name}")) + display(fig) + plt.close() + display(Markdown(f" ")) + display(Markdown(':::')) + + +def save_figure(fig, filename, dpi=150): + """ + Save figure to artefact directory. + + Arguments: + fig (Figure): The figure object to be saved + filename (str): The file name to be used + dpi (int): The DPI to use + """ + fig.savefig( + os.path.join(artifact_dir, filename), + dpi=dpi, + bbox_inches='tight' + ) + + +def display_table(table, hide_index=True, format_dict=None): + """ + Display a data frame as a table with default styling with optional removal + of the axis and the functionality to supply formatting dictionary. + + Arguments: + table (DataFrame): The data frame to be displayed + hide_index (boolean): Whether to hide the data frame index or not + format_dict (dict): A dictionary with column-specific formatting + """ + + # Default style with nf-core green hover and right alignment for all columns + # except the first one + styles = [ + {'selector': 'tbody tr:hover', 'props': [('background-color', '#D5F6E4')]}, + {'selector': 'td, th', 'props': [ + ('text-align', 'right') + ]}, + {'selector': 'td:first-child, th:first-child', 'props': [ + ('text-align', 'left') + ]} + ] + styled = table.style.set_table_styles(styles) + + if hide_index: + styled = styled.hide(axis='index') + + if format_dict: + styled = styled.format(format_dict) + + display(styled) +``` + +```{python load-data} +sdata = spatialdata.read_zarr(input_sdata) +adata = sc.read_h5ad(input_adata) +``` + +# UMAP + +```{python umap} +#| output: false +# Check which QC columns are available +qc_metrics_map = [ + ('total_counts', 'Total counts'), + ('n_genes_by_counts', 'Genes per spot'), + ('pct_counts_mt', 'Mito %'), + ('pct_counts_ribo', 'Ribo %'), + ('pct_counts_hb', 'Hb %'), +] +qc_metrics = [(col, label) for col, label in qc_metrics_map if col in adata.obs] + +# Plot and save to a list for later tabset display +umap_plots = [] +umap_metrics = [(cluster_col, 'Clusters')] + [(sample_col, 'Sample')] + qc_metrics +for col, label in umap_metrics: + fig, ax = plt.subplots(figsize=(7, 5), constrained_layout=True) + sc.pl.umap(adata, color=col, ax=ax, show=False) + umap_plots.append((label, fig)) + save_figure(fig, f'umap-{col}.png') +``` + +```{python umap-tabset} +#| output: asis +create_tabset(umap_plots) +``` + +# Spatial Visualization + +```{python spatial-distribution} +#| output: false +spatial_plots = [] +for sample_id in adata.obs[sample_col].unique(): + # Clean sample names for correct image referencing + sample_id_clean = "".join( + c for c in sample_id if c.isalnum() or c in ["_", "-"] + ) + fig, ax = plt.subplots(figsize=(7, 5), constrained_layout=True) + sc.pl.spatial( + adata[adata.obs[sample_col] == sample_id], + img_key="hires", + library_id=f"{sample_id_clean}_hires_image", + color=cluster_col, + size=1.25, + ax=ax, + show=False + ) + fig = plt.gcf() + spatial_plots.append((sample_id, fig)) + save_figure(fig, f'spatial-{sample_id}.png') +``` + +```{python spatial-distribution-tabset} +#| output: asis +create_tabset(spatial_plots) +``` diff --git a/bin/report.qmd b/bin/report.qmd new file mode 100644 index 00000000..3ea29c1e --- /dev/null +++ b/bin/report.qmd @@ -0,0 +1,691 @@ +--- +title: "Spatial Transcriptomics Analysis Report" +subtitle: "nf-core/spatialvi" +format: + nf-core-html: + echo: false + warning: false +lightbox: true +execute: + keep-ipynb: true +jupyter: python3 +--- + +```{python parameters} +#| tags: [parameters] +input_sdata = "sdata.zarr" +n_top_svgs = 20 +artifact_dir = "artifacts" +``` + +```{python imports} +# Disable OpenMP CPU topology detection for macOS compatibility +import os +os.environ["KMP_AFFINITY"] = "disabled" + +import sys +import importlib.metadata + +import numpy as np +import pandas as pd +import scanpy as sc +import squidpy as sq +import spatialdata +import matplotlib.pyplot as plt +from IPython.display import display, Markdown + +# Create artefact directory +os.makedirs(artifact_dir, exist_ok=True) + +# Suppress scanpy verbosity +sc.settings.verbosity = 0 +``` + +```{python common-functions} +def create_tabset(content): + """ + Programmatically create tabsets with headers and plots. + + Arguments: + content (list): A list of (str, Figure) tuples + """ + display(Markdown('::: {.panel-tabset}')) + for name, fig in content: + display(Markdown(f"#### {name}")) + display(fig) + plt.close() + display(Markdown(f" ")) + display(Markdown(':::')) + +def save_figure(fig, filename, dpi=150): + """ + Save figure to artefact directory. + + Arguments: + fig (Figure): The figure object to be saved + filename (str): The file name to be used + dpi (int): The DPI to use + """ + fig.savefig( + os.path.join(artifact_dir, filename), + dpi=dpi, + bbox_inches='tight' + ) + +def display_table(table, hide_index=True, format_dict=None): + """ + Display a data frame as a table with default styling with optional removal + of the axis and the functionality to supply formatting dictionary. + + Arguments: + table (DataFrame): The data frame to be displayed + hide_index (boolean): Whether to hide the data frame index or not + format_dict (dict): A dictionary with column-specific formatting + """ + + # Default style with nf-core green hover and right alignment for all columns + # except the first one + styles = [ + {'selector': 'tbody tr:hover', 'props': [('background-color', '#D5F6E4')]}, + {'selector': 'td, th', 'props': [ + ('text-align', 'right') + ]}, + {'selector': 'td:first-child, th:first-child', 'props': [ + ('text-align', 'left') + ]} + ] + styled = table.style.set_table_styles(styles) + + if hide_index: + styled = styled.hide(axis='index') + + if format_dict: + styled = styled.format(format_dict) + + display(styled) +``` + +```{python load-data} +# Load SpatialData +sdata = spatialdata.read_zarr(input_sdata) + +# Get the table (assuming single sample, take first table) +table_names = list(sdata.tables.keys()) +table_name = table_names[0] +adata = sdata.tables[table_name] + +# Extract sample ID from table name +sample_id = table_name.replace("_table", "") +``` + +# Sample overview + +```{python overview-table} +# Generate sample overview +n_spots = adata.n_obs +n_genes = adata.n_vars + +# Check for cluster information +n_clusters = adata.obs['clusters'].nunique() if 'clusters' in adata.obs else "N/A" + +# Check for spatial coordinates +has_spatial = 'spatial' in adata.obsm + +# Get available elements +n_images = len(sdata.images) if hasattr(sdata, 'images') else 0 +n_shapes = len(sdata.shapes) if hasattr(sdata, 'shapes') else 0 + +sample_overview = pd.DataFrame({ + 'Property': [ + 'Sample ID', + 'Number of spots', + 'Number of genes', + 'Number of clusters', + 'Has spatial coordinates', + 'Number of images', + 'Number of shapes' + ], + 'Value': [ + sample_id, + n_spots, + n_genes, + n_clusters, + has_spatial, + n_images, + n_shapes + ] +}) +display_table(sample_overview) +``` + +# Quality controls + +## QC metrics distribution + +The following plots show the distribution of quality control metrics across all +spots. + +```{python qc-metrics} +#| output: false +# Check which QC columns are available +qc_metrics_map = [ + ('total_counts', 'Total counts'), + ('n_genes_by_counts', 'Genes per spot'), + ('pct_counts_mt', 'Mito %'), + ('pct_counts_ribo', 'Ribo %'), + ('pct_counts_hb', 'Hb %'), +] +qc_metrics = [(col, label) for col, label in qc_metrics_map if col in adata.obs] + +# Loop over metrics and store plots in list +qc_metrics_plots = [] +has_qc = len(qc_metrics) > 0 +if has_qc: + for col, label in qc_metrics: + fig, ax = plt.subplots(figsize=(7, 5), constrained_layout=True) + ax.hist(adata.obs[col].values, bins=50, edgecolor='black', alpha=0.7) + ax.set_xlabel(label) + ax.set_ylabel('Frequency') + ax.axvline(adata.obs[col].median(), color='red', linestyle='--', + label=f'Median: {adata.obs[col].median():.1f}') + ax.legend(fontsize=8) + save_figure(fig, f'qc-distribution-{col}.png') + qc_metrics_plots.append((label, fig)) +else: + print("No QC metrics found in the data.") +``` + +```{python qc-metrics-tabset} +#| output: asis +if has_qc: + create_tabset(qc_metrics_plots) +``` + +## QC metrics summary + +```{python} +qc_cols = [col for col, _ in qc_metrics] +qc_labels = [label for _, label in qc_metrics] +if len(qc_cols) > 0: + qc_summary = pd.DataFrame({ + 'Metric': qc_labels, + 'Mean': [adata.obs[col].mean() for col in qc_cols], + 'Median': [adata.obs[col].median() for col in qc_cols], + 'Min': [adata.obs[col].min() for col in qc_cols], + 'Max': [adata.obs[col].max() for col in qc_cols] + }) + format_dict={ + 'Mean': '{:.2f}', + 'Median': '{:.2f}', + 'Min': '{:.2f}', + 'Max': '{:.2f}' + } + display_table(qc_summary, format_dict=format_dict) +``` + +## Spatial QC visualization + +```{python spatial-qc} +#| output: false +if has_spatial: + spatial_qc_plots = [] + for col, label in qc_metrics: + fig, ax = plt.subplots(figsize=(7, 5), constrained_layout=True) + sc.pl.spatial( + adata, + color=col, + ax=ax, + show=False, + title=label, + frameon=False, + library_id=f"{sample_id}_hires_image" + ) + spatial_qc_plots.append((label, fig)) + save_figure(fig, f'qc-spatial-{col}.png') +``` + +```{python spatial-qc-tabset} +#| output: asis +if has_spatial: + create_tabset(spatial_qc_plots) +``` + +# Gene expression + +## Highly variable genes + +```{python hvgs} +if 'highly_variable' in adata.var.columns: + n_hvg = adata.var['highly_variable'].sum() + display(Markdown(f"Number of highly variable genes: `{n_hvg:,}`")) + + if 'means' in adata.var.columns and 'dispersions_norm' in adata.var.columns: + fig, ax = plt.subplots(figsize=(7, 5), constrained_layout=True) + + hvg_mask = adata.var['highly_variable'] + + ax.scatter( + adata.var.loc[~hvg_mask, 'means'], + adata.var.loc[~hvg_mask, 'dispersions_norm'], + s=3, alpha=0.3, c='grey', label='Other genes' + ) + ax.scatter( + adata.var.loc[hvg_mask, 'means'], + adata.var.loc[hvg_mask, 'dispersions_norm'], + s=3, alpha=0.5, c='red', label='Highly variable' + ) + + ax.set_xlabel('Mean expression') + ax.set_ylabel('Normalized dispersion') + ax.set_title('Highly Variable Genes') + ax.legend() + save_figure(fig, 'highly-variable-genes.png') + plt.show() +else: + print("Highly variable gene information not found.") +``` + +# Dimensionality reduction + +## PCA + +```{python pca} +if 'X_pca' in adata.obsm: + fig, axes = plt.subplots(1, 2, figsize=(7, 3.5), constrained_layout=True) + + # PCA scatter plot colored by clusters if available + if 'clusters' in adata.obs: + sc.pl.pca(adata, color='clusters', ax=axes[0], show=False, + title='PCA (colored by clusters)') + else: + sc.pl.pca(adata, ax=axes[0], show=False, title='PCA') + + # Variance explained + if 'pca' in adata.uns and 'variance_ratio' in adata.uns['pca']: + variance_ratio = adata.uns['pca']['variance_ratio'] + cumulative_var = np.cumsum(variance_ratio) + n_pcs = len(variance_ratio) + + axes[1].bar(range(1, n_pcs + 1), variance_ratio, alpha=0.7, + label='Individual') + axes[1].plot(range(1, n_pcs + 1), cumulative_var, 'r-', marker='o', + markersize=3, label='Cumulative') + axes[1].set_xlabel('Principal Component') + axes[1].set_ylabel('Variance Explained') + axes[1].set_title('PCA Variance Explained') + axes[1].legend() + axes[1].set_xlim(0, min(n_pcs + 1, 51)) + save_figure(fig, 'pca.png') + plt.show() + + if 'pca' in adata.uns and 'variance_ratio' in adata.uns['pca']: + display(Markdown(f"Variance explained by PC1: `{variance_ratio[0]:.2%}`")) + display(Markdown(f"Variance explained by PC1-10: `{cumulative_var[9]:.2%}`")) + if len(cumulative_var) >= 20: + display(Markdown(f"Variance explained by PC1-20: `{cumulative_var[19]:.2%}`")) +else: + print("PCA results not found.") +``` + +## UMAP + +```{python} +#| output: false +has_umap = 'X_umap' in adata.obsm +if has_umap: + umap_plots = [] + umap_metrics = [('clusters', 'Clusters')] + qc_metrics + for col, label in umap_metrics: + fig, ax = plt.subplots(figsize=(7, 5), constrained_layout=True) + sc.pl.umap(adata, color=col, ax=ax, show=False) + umap_plots.append((label, fig)) + save_figure(fig, f'umap-{col}.png') +else: + print("UMAP results not found.") +``` + +```{python umap-tabset} +#| output: asis +if has_umap: + create_tabset(umap_plots) +``` + +# Clustering + +## Cluster assignments + +```{python cluster-assignments} +if 'clusters' in adata.obs: + # Cluster counts + cluster_counts = adata.obs['clusters'].value_counts().sort_index() + n_clusters = len(cluster_counts) + + display(Markdown(f"Number of clusters: `{n_clusters}`")) + + fig, axes = plt.subplots(1, 2, figsize=(7, 3.5), constrained_layout=True) + + # Bar plot of cluster sizes + cluster_counts.plot(kind='bar', ax=axes[0], color='steelblue', + edgecolor='black') + axes[0].set_xlabel('Cluster') + axes[0].set_ylabel('Number of spots') + axes[0].set_title('Spots per Cluster') + axes[0].tick_params(axis='x', rotation=45, labelsize=8) + + # Pie chart of cluster proportions + axes[1].pie(cluster_counts.values, labels=cluster_counts.index, + autopct='%1.1f%%', startangle=90, textprops={'fontsize': 7}) + axes[1].set_title('Cluster Proportions') + + save_figure(fig, 'cluster_sizes.png') + plt.show() +``` + +## Spatial cluster distribution + +```{python cluster-distribution} +if 'clusters' in adata.obs and has_spatial: + fig, ax = plt.subplots(figsize=(8, 8), constrained_layout=True) + sc.pl.spatial( + adata, + color='clusters', + ax=ax, + show=False, + title='Spatial Cluster Distribution', + frameon=False, + library_id=f"{sample_id}_hires_image" + ) + save_figure(fig, 'clusters-spatial.png') + plt.show() +``` + +## Cluster statistics + +```{python} +if 'clusters' in adata.obs: + agg_dict = {'clusters': ('clusters', 'size')} + + if 'total_counts' in adata.obs: + agg_dict['Mean counts'] = ('total_counts', 'mean') + if 'n_genes_by_counts' in adata.obs: + agg_dict['Mean genes'] = ('n_genes_by_counts', 'mean') + + cluster_stats = adata.obs.groupby('clusters').agg(**agg_dict) + cluster_stats.columns = ['Spots', 'Mean counts', 'Mean genes'] + cluster_stats['Percentage'] = (cluster_stats['Spots'] / len(adata) * 100) + + # Reorder columns + column_order = ['Spots', 'Percentage', 'Mean counts', 'Mean genes'] + cluster_stats = cluster_stats[column_order] + + # Create `Cluster` column from index + cluster_stats = cluster_stats.sort_index().reset_index() + cluster_stats.columns = ['Cluster'] + column_order + + # Apply table styling and display + format_dict = { + 'Percentage': '{:.1f} %', + 'Mean counts': '{:.1f}', + 'Mean genes': '{:.1f}' + } + display_table(cluster_stats, format_dict=format_dict) +``` + +# Differential expression + +## Top marker genes per cluster + +```{python degs-heatmap} +if 'rank_genes_groups' in adata.uns: + # Get number of clusters + groups = adata.uns['rank_genes_groups']['names'].dtype.names + n_groups = len(groups) + + display(Markdown(f"Differential expression computed for `{n_groups}` clusters")) + + # Heatmap of top genes + try: + sc.pl.rank_genes_groups_heatmap( + adata, + n_genes=5, + groupby='clusters', + figsize=(8, 6), + show=False + ) + fig = plt.gcf() + save_figure(fig, 'deg-heatmap.png') + plt.show() + except Exception as e: + print(f"Could not generate heatmap: {e}") +``` + +```{python degs-dotplot} +if 'rank_genes_groups' in adata.uns: + try: + sc.pl.rank_genes_groups_dotplot( + adata, + n_genes=5, + groupby='clusters', + show=False + ) + fig = plt.gcf() + save_figure(fig, 'deg-dotplot.png') + plt.show() + except Exception as e: + print(f"Could not generate dotplot: {e}") +``` + +## Top genes per cluster + +```{python degs-table} +if 'rank_genes_groups' in adata.uns: + n_top = 5 + clusters = adata.uns['rank_genes_groups']['names'].dtype.names + + # Build dictionary of `{cluster: [genes]}` + data = {} + for cluster in clusters: + data[f"Cluster {cluster}"] = [ + adata.uns['rank_genes_groups']['names'][cluster][i] + for i in range(n_top) + ] + + # Convert to data frame and print + degs_table = pd.DataFrame(data, index=range(1, n_top + 1)) + degs_table.insert(loc=0, column='Rank', value=degs_table.index) + display_table(degs_table) +``` + +# Spatial analysis + +## Neighborhood enrichment + +Neighborhood enrichment analysis shows which cluster pairs are spatially +enriched (positive, red) or depleted (negative, blue) compared to random +expectation. + +```{python neighborhood-enrichment} +if 'clusters_nhood_enrichment' in adata.uns: + try: + sq.pl.nhood_enrichment( + adata, + cluster_key='clusters', + method='ward', + vmin=-100, + vmax=100, + figsize=(9, 7) + ) + fig = plt.gcf() + save_figure(fig, 'neighborhood-enrichment.png') + plt.show() + + print("") + except Exception as e: + print(f"Could not generate neighborhood enrichment plot: {e}") +else: + print("Neighborhood enrichment results not found.") +``` + +## Cluster interaction matrix + +The interaction matrix shows the number of edges between each pair of clusters +in the spatial neighbor graph. + +```{python cluster-interactions} +if 'clusters_interactions' in adata.uns: + try: + sq.pl.interaction_matrix( + adata, + cluster_key='clusters', + method='ward', + figsize=(9, 7) + ) + fig = plt.gcf() + save_figure(fig, 'interaction-matrix.png') + plt.show() + except Exception as e: + print(f"Could not generate interaction matrix plot: {e}") +else: + print("Interaction matrix results not found.") +``` + +# Spatially variable genes + +## Spatial autocorrelation + +```{python spatial-autocorrelation} +# Check for spatial autocorrelation results +svg_key = None +svg_method = None +if 'moranI' in adata.uns: + svg_key = 'moranI' + svg_method = "Moran's I" +elif 'gearyC' in adata.uns: + svg_key = 'gearyC' + svg_method = "Geary's C" + +if svg_key: + svg_df = adata.uns[svg_key] + n_svg = len(svg_df) + display(Markdown(f"Spatial autocorrelation method: `{svg_method}`")) + display(Markdown(f"Number of genes analyzed: `{n_svg:,}`")) + + # Save top SVGs to CSV + svg_df.head(100).to_csv(os.path.join(artifact_dir, 'top_spatially_variable_genes.csv')) +``` + +## Top spatially variable genes + +```{python} +if svg_key: + n_display = n_top_svgs + top_svg = svg_df.head(n_display) + top_svg['Gene'] = top_svg.index + top_svg['Rank'] = range(1, len(top_svg) + 1) + top_svg = top_svg[['Rank', 'Gene', 'I', 'pval_norm_fdr_bh']] + top_svg.columns = ['Rank', 'Gene', "Moran's I", 'Adj. p-value'] + format_dict = { + "Moran's I": '{:.3f}', + 'Adj. p-value': '{:.3g}' + } + display_table(top_svg, format_dict=format_dict) +``` + +## Spatial expression of top SVGs + +```{python svg-plots} +#| output: false +has_spatial_svg = svg_key and has_spatial +if has_spatial_svg: + top_genes = svg_df.head(9).index.tolist() + + # Filter to genes that exist in the data + top_genes = [gene for gene in top_genes if gene in adata.var_names] + + svg_plots = [] + for gene in top_genes: + fig, ax = plt.subplots(figsize=(7, 5), constrained_layout=True) + sc.pl.spatial( + adata, + color=gene, + ax=ax, + show=False, + title=gene, + frameon=False, + library_id=f"{sample_id}_hires_image" + ) + svg_plots.append((gene, fig)) + save_figure(fig, f'spatial-{gene}.png') + else: + print("No valid genes found for spatial plotting.") +``` + +```{python svg-plots-tabset} +#| output: asis +if has_spatial_svg: + create_tabset(svg_plots) +``` + +# Summary + +```{python} +summary_sections = [] + +# Data overview +summary_sections.append( + f"## Data overview\n" + f"- **Sample**: `{sample_id}`\n" + f"- **Spots**: `{n_spots:,}`\n" + f"- **Genes**: `{n_genes:,}`\n" +) + +# QC summary +if 'total_counts' in adata.obs: + median_counts = adata.obs['total_counts'].median() + median_genes = adata.obs['n_genes_by_counts'].median() if \ + 'n_genes_by_counts' in adata.obs else 'N/A' + summary_sections.append( + f"## Quality controls\n" + f"- **Median counts per spot**: `{median_counts:,.0f}`\n" + f"- **Median genes per spot**: `{median_genes:,.0f}`\n" + ) + +# Clustering summary +if 'clusters' in adata.obs: + n_clusters = adata.obs['clusters'].nunique() + summary_sections.append( + f"## Clustering\n" + f"- **Number of clusters**: `{n_clusters}`\n" + f"- **Algorithm**: `Leiden`\n" + ) + +# SVG summary +if svg_key: + n_sig = (svg_df['pval_norm_fdr_bh'] < 0.05).sum() if \ + 'pval_norm_fdr_bh' in svg_df.columns else 'N/A' + top_gene = svg_df.index[0] + summary_sections.append( + f"## Spatially variable genes\n" + f"- **Method**: `{svg_method}`\n" + f"- **Significant genes (FDR < 0.05)**: `{n_sig}`\n" + f"- **Top gene**: `{top_gene}`" + ) + +display(Markdown("\n".join(summary_sections))) +``` + +# Session info + +```{python} +packages = ['scanpy', 'squidpy', 'spatialdata', 'anndata', 'numpy', 'pandas', + 'matplotlib'] +versions = {} +for pkg in packages: + try: + versions[pkg] = importlib.metadata.version(pkg) + except: + pass + +session_info = pd.DataFrame(versions.items(), columns=['Package', 'Version']) +display_table(session_info) +``` diff --git a/bin/spatially_variable_genes.qmd b/bin/spatially_variable_genes.qmd deleted file mode 100644 index d97e2f9a..00000000 --- a/bin/spatially_variable_genes.qmd +++ /dev/null @@ -1,131 +0,0 @@ ---- -title: "Neighborhood enrichment analysis and Spatially variable genes" -format: - nf-core-html: default -jupyter: python3 ---- - -```{python} -#| tags: [parameters] -#| echo: false -input_sdata = "sdata_processed.zarr" # Input: SpatialData file -svg_autocorr_method = "moran" # Parameter: SVG autocorrelation method -n_top_svgs = 14 # Number of spatially variable genes to plot -artifact_dir = "artifacts" # Output directory -output_csv = "spatially_variable_genes.csv" # Output: gene list -output_adata = "adata_spatially_variable_genes.h5ad" # Output: AnnData file -output_sdata = "sdata.zarr" # Output: SpatialData file -``` - -```{python} -import numpy as np -import os -import pandas as pd -import scanpy as sc -import squidpy as sq -import spatialdata -from spatialdata_io.experimental import to_legacy_anndata -from anndata import AnnData -from matplotlib import pyplot as plt -``` - -```{python} -# Keep only alphanumeric characters, underscores, and hyphens in the sample ID -sample_id = "".join( - filter(lambda x: x.isalnum() or x in ["_", "-"], meta["id"]) -) -``` - -```{python} -# Read data -sdata = spatialdata.read_zarr(input_sdata, ["images", "tables", "shapes"]) -adata = to_legacy_anndata( - sdata, - coordinate_system=f"{sample_id}_downscaled_hires", - table_name=f"{sample_id}_table", - include_images=True -) - -print("Content of the AnnData object:") -print(adata) - -# Suppress scanpy-specific warnings -sc.settings.verbosity = 0 -``` - -# Differential gene expression - -Before we look for spatially variable genes we first find differentially -expressed genes (DEG) across the different clusters found in the data. We can -visualize the top DEGs in a heatmap: - -```{python} -#| warning: false -sc.tl.rank_genes_groups(adata, 'clusters', method='t-test') -sc.pl.rank_genes_groups_heatmap(adata, n_genes=5, groupby="clusters") -``` - -A different but similar visualization of the DEGs is the dot plot, where we can -also include the gene names: - -```{python} -#| warning: false -sc.pl.rank_genes_groups_dotplot(adata, n_genes=5, groupby="clusters") -``` - -::: {.callout-note} -Please note that you may need to scroll sidewise in these figures, as their -height and width depends on the number of clusters as well as the number and -intersection of the DEGs that are being plotted. -::: - -# Neighborhood enrichment analysis - -We can perform a neighborhood enrichment analysis to find out which -genes are enriched in the neighborhood of each cluster: - -```{python} -#| warning: false -sq.gr.spatial_neighbors(adata, coord_type="generic") -sq.gr.nhood_enrichment(adata, cluster_key="clusters") -sq.pl.nhood_enrichment(adata, cluster_key="clusters", method="ward", vmin=-100, vmax=100) -``` - -We visualize the interaction matrix between the different clusters: - -```{python} -#| warning: false -sq.gr.interaction_matrix(adata, cluster_key="clusters") -sq.pl.interaction_matrix(adata, cluster_key="clusters", method="ward") -``` - -# Spatially variable genes with spatial autocorrelation statistics - -Spatial transcriptomics data can give insight into how genes are expressed in -different areas in a tissue, allowing identification of spatial gene expression -patterns. Here we use [Moran's I](https://en.wikipedia.org/wiki/Moran%27s_I) autocorrelation score to identify such patterns. - -```{python} -adata.var_names_make_unique() -sq.gr.spatial_autocorr(adata, mode=svg_autocorr_method) -if svg_autocorr_method == "moran": - svg_autocorr_method_string = "moranI" -else: - svg_autocorr_method_string = "gearyC" -adata.uns[svg_autocorr_method_string].head(n_top_svgs) -``` - -```{python} -#| echo: false -# Save the spatially variable genes to a CSV file: -adata.uns[svg_autocorr_method_string].to_csv(os.path.join(artifact_dir, output_csv)) -``` - -```{python} -#| echo: false -#| info: false -adata.write(output_adata) -del sdata.tables[f"{sample_id}_table"] -sdata.tables[f"{sample_id}_table"] = adata -sdata.write(os.path.join(artifact_dir, output_sdata)) -``` diff --git a/conf/modules.config b/conf/modules.config index 4ba99755..a002fec9 100644 --- a/conf/modules.config +++ b/conf/modules.config @@ -12,14 +12,8 @@ process { - publishDir = [ - path: { "${params.outdir}/${task.process.tokenize(':')[-1].tokenize('_')[0].toLowerCase()}" }, - mode: params.publish_dir_mode, - saveAs: { filename -> filename.equals('versions.yml') ? null : filename } - ] - // Optionally save extracted Space Ranger reference archive - withName: 'SPACERANGER_UNTAR_REFERENCE' { + withName: SPACERANGER_UNTAR_REFERENCE { publishDir = [ enabled: params.spaceranger_save_reference, path: { "${params.outdir}/reference" }, @@ -38,6 +32,15 @@ process { ] } + withName: SPACERANGER_COUNT { + ext.args = '--create-bam="false"' + publishDir = [ + path: { "${params.outdir}/${meta.id}/spaceranger" }, + mode: params.publish_dir_mode, + saveAs: { filename -> filename.equals('versions.yml') ? null : filename } + ] + } + withName: FASTQC { publishDir = [ path: { "${params.outdir}/${meta.id}/fastqc" }, @@ -46,26 +49,29 @@ process { ] } - withName: SPACERANGER_COUNT { - ext.args = '--create-bam="false"' + withName: SDATA_TO_LEGACY_ANNDATA { publishDir = [ - path: { "${params.outdir}/${meta.id}/spaceranger" }, + path: { "${params.outdir}/${meta.id}/data"}, mode: params.publish_dir_mode, - saveAs: { filename -> filename.equals('versions.yml') ? null : filename } + pattern: "*.h5ad", + saveAs: { filename -> filename.split('.h5ad')[0] + '-raw.h5ad' } ] } - // MultiQC doesn't work on ARM64 with Bioncontainers, whereas the Docker Hub - // image is multi-platform and works on either architecture - withName: MULTIQC { - container = 'docker.io/multiqc/multiqc:v1.29' + // Includes the final per-sample AnnData objects + withName: SQUIDPY_SPATIAL_AUTOCORR { + publishDir = [ + path: { "${params.outdir}/${meta.id}/data"}, + mode: params.publish_dir_mode, + pattern: "*.{csv,h5ad}" + ] } // The Seqera image used in multiple modules of this pipeline contains many // different packages, the build information for which you can find here: // https://wave.seqera.io/view/builds/bd-95f731fde0b9ddef_1. - withName: 'READ_DATA|QUALITY_CONTROLS|CLUSTERING|SPATIALLY_VARIABLE_GENES' { - ext.prefix = { "${notebook.baseName}" } + withName: REPORT { + ext.prefix = { "${notebook.baseName}-${meta.id}" } ext.args = { "--metadata subtitle:'Sample: ${meta.id}'" } container = 'community.wave.seqera.io/library/harmonypy_scanorama_gcc_gxx_pruned:95f731fde0b9ddef' publishDir = [ @@ -81,68 +87,71 @@ process { saveAs: { "${notebook.baseName}.yml" } ], [ - path: { "${params.outdir}/${meta.id}/data" }, - mode: params.publish_dir_mode, - pattern: "artifacts/sdata_processed.zarr", - saveAs: { "sdata_processed.zarr" } - ], - [ - path: { "${params.outdir}/${meta.id}/data" }, - mode: params.publish_dir_mode, - pattern: "artifacts/adata_processed.h5ad", - saveAs: { "adata_processed.h5ad" } - ], - [ - path: { "${params.outdir}/${meta.id}/data" }, + path: { "${params.outdir}/${meta.id}/plots" }, mode: params.publish_dir_mode, - pattern: "artifacts/mqc_*.csv", + pattern: "artifacts/*.png", saveAs: { filename -> filename.split('/')[1] } - ], - [ - path: { "${params.outdir}/${meta.id}/data" }, - mode: params.publish_dir_mode, - pattern: "artifacts/spatially_variable_genes.csv", - saveAs: { "spatially_variable_genes.csv" } ] ] } - withName: 'MERGE_SDATA' { + withName: SDATA_MERGE { publishDir = [ - path: { "${params.outdir}/aggregation/data"}, + path: { "${params.outdir}/integration/data"}, mode: params.publish_dir_mode, pattern: "*.zarr" ] } - withName: 'INTEGRATE_SDATA' { + // Final integrated H5AD files + withName: '.*INTEGRATION:CLUSTERING:SCANPY_LEIDEN' { + publishDir = [ + path: { "${params.outdir}/integration/data"}, + mode: params.publish_dir_mode, + pattern: "*.h5ad" + ] + } + + withName: SDATA_UPDATE_TABLE_INTEGRATION { + publishDir = [ + path: { "${params.outdir}/integration/data"}, + mode: params.publish_dir_mode, + pattern: "*.zarr" + ] + } + + withName: REPORT_INTEGRATED { ext.prefix = { "${notebook.baseName}" } container = 'community.wave.seqera.io/library/harmonypy_scanorama_gcc_gxx_pruned:95f731fde0b9ddef' publishDir = [ [ - path: { "${params.outdir}/aggregation/reports"}, + path: { "${params.outdir}/integration/reports"}, mode: params.publish_dir_mode, pattern: "*{.html,.qmd,_extensions}" ], [ - path: { "${params.outdir}/aggregation/reports" }, + path: { "${params.outdir}/integration/reports" }, mode: params.publish_dir_mode, pattern: "params.yml", saveAs: { "${notebook.baseName}.yml" } ], [ - path: { "${params.outdir}/aggregation/data" }, - mode: params.publish_dir_mode, - pattern: "artifacts/integrated_sdata.zarr", - saveAs: { "integrated_sdata.zarr" } - ], - [ - path: { "${params.outdir}/aggregation/data" }, + path: { "${params.outdir}/integration/plots" }, mode: params.publish_dir_mode, - pattern: "artifacts/integrated_adata.h5ad", - saveAs: { "integrated_adata.h5ad" } + pattern: "artifacts/*.png", + saveAs: { filename -> filename.split('/')[1] } ] ] } + // MultiQC doesn't work on ARM64 with Bioncontainers, whereas the Docker Hub + // image is multi-platform and works on either architecture + withName: MULTIQC { + container = 'docker.io/multiqc/multiqc:v1.29' + publishDir = [ + path: { "${params.outdir}/multiqc" }, + mode: params.publish_dir_mode + ] + } + } diff --git a/conf/test_downstream.config b/conf/test_downstream.config index 69fd748d..c61bdab1 100644 --- a/conf/test_downstream.config +++ b/conf/test_downstream.config @@ -30,6 +30,6 @@ params { // Parameters qc_min_counts = 5 qc_min_genes = 3 - integrate_sdata = true + integrate_data = true outdir = 'results' } diff --git a/conf/test_skip_downstream.config b/conf/test_skip_downstream.config new file mode 100644 index 00000000..567706b8 --- /dev/null +++ b/conf/test_skip_downstream.config @@ -0,0 +1,34 @@ +/* +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Nextflow config file for running minimal tests +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + Defines input files and everything required to run a fast and simple pipeline test. + + Use as follows: + nextflow run nf-core/spatialvi -profile test, --outdir + +---------------------------------------------------------------------------------------- +*/ + +process { + resourceLimits = [ + cpus: 4, + memory: '12.GB', + time: '1.h' + ] +} + +params { + config_profile_name = 'Skip downstream test profile' + config_profile_description = 'Test pipeline with skipping of all downstream steps' + + // Input and output + input = "https://raw.githubusercontent.com/nf-core/test-datasets/spatialvi/testdata/human-brain-cancer-11-mm-capture-area-ffpe-2-standard_v2_ffpe_cytassist/samplesheet_spaceranger.csv" + spaceranger_probeset = "https://raw.githubusercontent.com/nf-core/test-datasets/spatialvi/testdata/human-brain-cancer-11-mm-capture-area-ffpe-2-standard_v2_ffpe_cytassist/outs/probe_set.csv" + spaceranger_reference = "https://raw.githubusercontent.com/nf-core/test-datasets/spatialvi/testdata/homo_sapiens_chr22_reference.tar.gz" + + // Parameters + skip_downstream = true + outdir = 'results' + +} diff --git a/docs/output.md b/docs/output.md index ee2eed51..b22636e4 100644 --- a/docs/output.md +++ b/docs/output.md @@ -18,7 +18,7 @@ data using the following steps: - [Space Ranger](#space-ranger) - [Data](#data) - [Reports](#reports) - - [Quality controls and normalisation](#quality-controls-and-normalisation) + - [Quality controls and normalization](#quality-controls-and-normalization) - [Clustering](#clustering) - [Differential expression](#differential-expression) - [Workflow reporting](#workflow-reporting) @@ -76,55 +76,6 @@ as a convenience if you want to explore them in _e.g._ Excel. -### Quality controls and filtering - -
-Output files - -- `/reports/` - - `quality_controls.html`: Rendered HTML report. - - `quality_controls.yml`: YAML file containing parameters used in the report. - - `quality_controls.qmd`: Quarto document used for rendering the report. - -
- -Report containing analyses related to quality controls and filtering of spatial -data. Spots are filtered based on total counts, number of expressed genes as -well as presence in tissue; you can find more details in the report itself. - -### Clustering - -
-Output files - -- `/reports/` - - `clustering.html`: Rendered HTML report. - - `clustering.yml`: YAML file containing parameters used in the report. - - `clustering.qmd`: Quarto document used for rendering the report. - -
- -Report containing analyses related to normalisation, dimensionality reduction, -clustering and spatial visualisation. Leiden clustering is currently the only -option; you can find more details in the report itself. - -### Spatially variable genes - -
-Output files - -- `/reports/` - - `spatially_variable_genes.html`: Rendered HTML report. - - `spatially_variable_genes.yml`: YAML file containing parameters used in the report. - - `spatially_variable_genes.qmd`: Quarto document used for rendering the report. - -
- -Report containing analyses related to differential expression testing and -spatially varying genes. The [Moran 1](https://en.wikipedia.org/wiki/Moran%27s_I) -score is currently the only option for spatial testing; you can find more -details in the report itself. - ## Workflow reporting ### Pipeline information diff --git a/docs/usage.md b/docs/usage.md index c0be0b21..04a3a30e 100644 --- a/docs/usage.md +++ b/docs/usage.md @@ -50,23 +50,23 @@ SAMPLE_1,fastqs_1/,cytassist_1.tif,V11J26,B1 SAMPLE_2,fastqs_2/,cytassist_2.tif,V11J26,B1 ``` -Depending on the experimental setup, (additional) colour composite fluorescence images or dark background +Depending on the experimental setup, (additional) color composite fluorescence images or dark background fluorescence images can be supplied using the `colorizedimage` or `darkimage` columns, respectively. Please refer to the following table for an overview of all supported columns: -| Column | Description | -| ------------------ | --------------------------------------------------------------------------------------------------------------------- | -| `sample` | Unique sample identifier. MUST match the prefix of the fastq files | -| `fastq_dir` | Path to directory where the sample FASTQ files are stored. May be a `.tar` or `.tar.gz` file instead of a directory. | -| `image` | Brightfield microscopy image | -| `cytaimage` | Brightfield tissue image captured with Cytassist device | -| `colorizedimage` | A colour composite of one or more fluorescence image channels saved as a single-page, single-file colour TIFF or JPEG | -| `darkimage` | Dark background fluorescence microscopy image | -| `slide` | The Visium slide ID used for the sequencing. | -| `area` | Which slide area contains the tissue sample. | -| `manual_alignment` | Path to the manual alignment file (optional) | -| `slidefile` | Slide specification as JSON. Overrides `slide` and `area` if specified. (optional) | +| Column | Description | +| ------------------ | -------------------------------------------------------------------------------------------------------------------- | +| `sample` | Unique sample identifier. MUST match the prefix of the fastq files | +| `fastq_dir` | Path to directory where the sample FASTQ files are stored. May be a `.tar` or `.tar.gz` file instead of a directory. | +| `image` | Brightfield microscopy image | +| `cytaimage` | Brightfield tissue image captured with Cytassist device | +| `colorizedimage` | A color composite of one or more fluorescence image channels saved as a single-page, single-file color TIFF or JPEG | +| `darkimage` | Dark background fluorescence microscopy image | +| `slide` | The Visium slide ID used for the sequencing. | +| `area` | Which slide area contains the tissue sample. | +| `manual_alignment` | Path to the manual alignment file (optional) | +| `slidefile` | Slide specification as JSON. Overrides `slide` and `area` if specified. (optional) | > [!NOTE] > diff --git a/main.nf b/main.nf index dcb6b9b5..90e4c908 100644 --- a/main.nf +++ b/main.nf @@ -30,28 +30,39 @@ include { PIPELINE_COMPLETION } from './subworkflows/local/utils_nfcore_spat workflow NFCORE_SPATIALVI { take: - samplesheet // file : samplesheet read in from --input - spaceranger_reference // dir : /path/to/reference - spaceranger_probeset // file : /path/to/csv + samplesheet // file: samplesheet read in from --input + spaceranger_reference // dir: /path/to/reference + spaceranger_probeset // file: /path/to/csv hd_bin_size // integer: Bin size for Visium HD + skip_downstream // boolean: Whether to skip downstream steps or not qc_min_counts // integer: Minimum UMIs per spot qc_min_genes // integer: Minimum genes per spot qc_min_spots // integer: Minimum spots per gene - qc_mito_threshold // float : Maximum mito. content per spot - qc_ribo_threshold // float : Minimum ribo. content per spot - qc_hb_threshold // float : Maximum haem. content per spot - cluster_n_hvgs // integer: Number of HVGs to use - cluster_resolution // float : Spot clustering resolution + qc_mito_threshold // float: Maximum mito. content per spot + qc_ribo_threshold // float: Minimum ribo. content per spot + qc_hb_threshold // float: Maximum haem. content per spot + normalize_target_sum // string: Target sum of total count normalization + n_highly_variable_genes // integer: Number of HVGs to use + hvg_flavor // string: Flavor for HVG calculations + n_principal_components // integer: Number of principal components to compute + pca_use_highly_variable // boolean: Whether to only use highly variable genes for PCA + n_neighbors // integer: Number of nearest neighbors to compute + neighbors_n_pcs // integer: Number of PCs to use for nearest neighbors + umap_min_dist // float: Minimum distance between embedded points + umap_spread // float: Scale of embedded points + cluster_resolution // float: Spot clustering resolution + rank_genes_method // string: Method to use for differential expression testing + spatial_coord_type // string: Type of spatial coordinate system + spatial_n_neighbors // integer: Number of spatial neighborhoods svg_autocorr_method // string : Autocorrelation method n_top_svgs // integer: Number of variable genes to plot - merge_sdata // boolean: Whether to merge sdata or not - integrate_sdata // boolean: Whether to integrate sdata or not - integration_cluster_resolution // float : Integration cluster resolution - integration_n_hvgs // integer: Number of HVGs to integrate with - multiqc_config // file : /path/to/multiqc/config - multiqc_logo // file : /path/to/multiqc/logo - multiqc_methods_description // file : /path/to/multiqc/description - outdir // dir : /path/to/output/directory + integrate_data // boolean: Whether to integrate sdata or not + integration_method // string: Integration method to use + integration_cluster_resolution // float: Integration cluster resolution + multiqc_config // file: /path/to/multiqc/config + multiqc_logo // file: /path/to/multiqc/logo + multiqc_methods_description // file: /path/to/multiqc/description + outdir // dir: /path/to/output/directory main: // @@ -62,20 +73,31 @@ workflow NFCORE_SPATIALVI { spaceranger_reference, spaceranger_probeset, hd_bin_size, + skip_downstream, qc_min_counts, qc_min_genes, qc_min_spots, qc_mito_threshold, qc_ribo_threshold, qc_hb_threshold, - cluster_n_hvgs, + normalize_target_sum, + n_highly_variable_genes, + hvg_flavor, + n_principal_components, + pca_use_highly_variable, + n_neighbors, + neighbors_n_pcs, + umap_min_dist, + umap_spread, cluster_resolution, + rank_genes_method, + spatial_coord_type, + spatial_n_neighbors, svg_autocorr_method, n_top_svgs, - merge_sdata, - integrate_sdata, + integrate_data, + integration_method, integration_cluster_resolution, - integration_n_hvgs, multiqc_config, multiqc_logo, multiqc_methods_description, @@ -115,20 +137,31 @@ workflow { params.spaceranger_reference, params.spaceranger_probeset, params.hd_bin_size, + params.skip_downstream, params.qc_min_counts, params.qc_min_genes, params.qc_min_spots, params.qc_mito_threshold, params.qc_ribo_threshold, params.qc_hb_threshold, - params.cluster_n_hvgs, + params.normalize_target_sum, + params.n_highly_variable_genes, + params.hvg_flavor, + params.n_principal_components, + params.pca_use_highly_variable, + params.n_neighbors, + params.neighbors_n_pcs, + params.umap_min_dist, + params.umap_spread, params.cluster_resolution, + params.rank_genes_method, + params.spatial_coord_type, + params.spatial_n_neighbors, params.svg_autocorr_method, params.n_top_svgs, - params.merge_sdata, - params.integrate_sdata, + params.integrate_data, + params.integration_method, params.integration_cluster_resolution, - params.integration_n_hvgs, params.multiqc_config, params.multiqc_logo, params.multiqc_methods_description, diff --git a/modules/local/adata/merge/main.nf b/modules/local/adata/merge/main.nf new file mode 100644 index 00000000..8790fa54 --- /dev/null +++ b/modules/local/adata/merge/main.nf @@ -0,0 +1,30 @@ +process ADATA_MERGE { + label 'process_low' + + container "community.wave.seqera.io/library/harmonypy_scanorama_gcc_gxx_pruned:95f731fde0b9ddef" + + input: + path h5ad + val join + val label + val preserve_var + val preserve_spatial + + output: + path "${prefix}.h5ad", emit: adata + path "versions.yml" , emit: versions, topic: versions + + when: + task.ext.when == null || task.ext.when + + script: + prefix = task.ext.prefix ?: "merged" + template 'merge.py' + + stub: + prefix = task.ext.prefix ?: "merged" + """ + touch ${prefix}.h5ad + touch versions.yml + """ +} diff --git a/modules/local/adata/merge/templates/merge.py b/modules/local/adata/merge/templates/merge.py new file mode 100644 index 00000000..fb2a9783 --- /dev/null +++ b/modules/local/adata/merge/templates/merge.py @@ -0,0 +1,124 @@ +#!/usr/bin/env python3 +""" +Merge multiple AnnData objects into one. +""" + +# Disable OpenMP CPU topology detection for macOS compatibility +import os +os.environ["KMP_AFFINITY"] = "disabled" + +import importlib.metadata +import platform +from pathlib import Path + +import anndata as ad +import pandas as pd +import yaml + + +def add_var(adata, adata_list, join): + """ + Adds `.var` back into a merged AnnData object from the original list of + multiple AnnData objects. + """ + merged_var = pd.concat([adata.var for adata in adata_list], join=join) + merged_var = merged_var[~merged_var.index.duplicated()] + adata.var = merged_var.loc[adata.var_names] + print("Preserved `.var` data") + return adata + + +def add_spatial(adata, adata_list): + """ + Adds `.uns['spatial']` back into a merged AnnData objects from the original + list of multiple AnnData objects. + """ + merged_spatial = {} + for adata_orig in adata_list: + if "spatial" in adata_orig.uns: + merged_spatial.update(adata_orig.uns["spatial"]) + if merged_spatial: + adata.uns["spatial"] = merged_spatial + print("Preserved `.uns['spatial']` data") + return adata + + +def merge_adata(adata_list, keys, join, label, preserve_var, preserve_spatial): + """ + Merge multiple AnnData objects into one. Can optionally preserve both `.var` + and `.uns['spatial']` for the final merged object. + """ + + print(f"Merging {len(adata_list)} AnnData objects") + adata = ad.concat( + adata_list, + join=join, + label=label, + keys=keys, + index_unique="-" + ) + + if preserve_var: + adata = add_var(adata, adata_list, join) + + if preserve_spatial: + adata = add_spatial(adata, adata_list) + + adata.uns["merge"] = { + "n_samples": len(keys), + "join": join, + "label": label, + "preserve_var": preserve_var, + "preserve_spatial": preserve_spatial, + } + print(f"Final merged AnnData {adata}") + + return adata + +def write_versions(process_name): + """Write software versions to a YAML file.""" + versions = { + process_name: { + "python": platform.python_version(), + "anndata": importlib.metadata.version("anndata"), + } + } + with open("versions.yml", "w") as f: + yaml.dump(versions, f) + + +def main(): + """Merge multiple AnnData objects into one.""" + # Template variables + h5ads = "${h5ad}".split() + join = "${join}" + label = "${label}" + preserve_var = "${preserve_var}" == "true" + preserve_spatial = "${preserve_spatial}" == "true" + output_file = "${prefix}.h5ad" + process_name = "${task.process}" + + adata_list = [] + for h5ad in h5ads: + adata = ad.read_h5ad(h5ad) + adata_list.append(adata) + print(f"Read AnnData object {adata}") + + sample_names = [Path(h5ad).stem for h5ad in h5ads] + adata_integrated = merge_adata( + adata_list, + sample_names, + join=join, + label=label, + preserve_var=preserve_var, + preserve_spatial=preserve_spatial + ) + + adata_integrated.write_h5ad(output_file) + print(f"Written merged AnnData to: {output_file}") + + write_versions(process_name) + + +if __name__ == "__main__": + main() diff --git a/modules/local/adata/merge/tests/main.nf.test b/modules/local/adata/merge/tests/main.nf.test new file mode 100644 index 00000000..8a66ddfc --- /dev/null +++ b/modules/local/adata/merge/tests/main.nf.test @@ -0,0 +1,184 @@ +nextflow_process { + + name "Test Process ADATA_MERGE" + script "../main.nf" + process "ADATA_MERGE" + + tag "modules" + tag "modules_local" + tag "adata_merge" + + test("homo_sapiens - h5ad - inner") { + + when { + process { + """ + input[0] = channel.fromList([ + tuple([ id: 'CytAssist_11mm_FFPE_Human_Glioblastoma_2' ], file(params.modules_testdata_base_path + 'genomics/homo_sapiens/scrnaseq/h5ad/SRR28679756_filtered_matrix.h5ad', checkIfExists: true)), + tuple([ id: 'CytAssist_11mm_FFPE_Human_Glioblastoma_2.2' ], file(params.modules_testdata_base_path + 'genomics/homo_sapiens/scrnaseq/h5ad/SRR28679759_filtered_matrix.h5ad', checkIfExists: true)) + ]) .toSortedList { a, b -> a[0].id <=> b[0].id } + .flatMap() + .map { _meta, h5ad -> h5ad } + .collect() + input[1] = 'inner' // join + input[2] = 'library_id' // label + input[3] = false // preserve_var + input[4] = false // preserve_spatial + """ + } + } + + then { + assertAll( + { assert process.success }, + { assert snapshot( + process.out.versions, + anndata(process.out.adata[0]).yaml + ).match() } + ) + } + } + + test("homo_sapiens - h5ad - outer") { + + when { + process { + """ + input[0] = channel.fromList([ + tuple([ id: 'CytAssist_11mm_FFPE_Human_Glioblastoma_2' ], file(params.modules_testdata_base_path + 'genomics/homo_sapiens/scrnaseq/h5ad/SRR28679756_filtered_matrix.h5ad', checkIfExists: true)), + tuple([ id: 'CytAssist_11mm_FFPE_Human_Glioblastoma_2.2' ], file(params.modules_testdata_base_path + 'genomics/homo_sapiens/scrnaseq/h5ad/SRR28679759_filtered_matrix.h5ad', checkIfExists: true)) + ]) .toSortedList { a, b -> a[0].id <=> b[0].id } + .flatMap() + .map { _meta, h5ad -> h5ad } + .collect() + input[1] = 'outer' // join + input[2] = 'library_id' // label + input[3] = false // preserve_var + input[4] = false // preserve_spatial + """ + } + } + + then { + assertAll( + { assert process.success }, + { assert snapshot( + process.out.versions, + anndata(process.out.adata[0]).yaml + ).match() } + ) + } + } + + test("homo_sapiens - h5ad - preserve var data") { + + when { + process { + """ + input[0] = channel.fromList([ + tuple([ id: 'CytAssist_11mm_FFPE_Human_Glioblastoma_2' ], file(params.modules_testdata_base_path + 'genomics/homo_sapiens/scrnaseq/h5ad/SRR28679756_filtered_matrix.h5ad', checkIfExists: true)), + tuple([ id: 'CytAssist_11mm_FFPE_Human_Glioblastoma_2.2' ], file(params.modules_testdata_base_path + 'genomics/homo_sapiens/scrnaseq/h5ad/SRR28679759_filtered_matrix.h5ad', checkIfExists: true)) + ]) .toSortedList { a, b -> a[0].id <=> b[0].id } + .flatMap() + .map { _meta, h5ad -> h5ad } + .collect() + input[1] = 'inner' // join + input[2] = 'library_id' // label + input[3] = true // preserve_var + input[4] = false // preserve_spatial + """ + } + } + + then { + assertAll( + { assert process.success }, + { assert snapshot( + process.out.versions, + anndata(process.out.adata[0]).yaml + ).match() } + ) + } + } + + test("homo_sapiens - zarr - preserve spatial data") { + + setup { + run("UNTAR") { + script "../../../../nf-core/untar/main.nf" + process { + """ + input[0] = channel.fromList([ + tuple([ id: 'CytAssist_11mm_FFPE_Human_Glioblastoma_2' ], file("https://raw.githubusercontent.com/fasterius/test-datasets/modules/data/spatial_omics/visium/homo_sapiens/CytAssist_11mm_FFPE_Human_Glioblastoma_2.zarr.tar.gz", checkIfExists: true)), + tuple([ id: 'CytAssist_11mm_FFPE_Human_Glioblastoma_2.2' ], file("https://raw.githubusercontent.com/fasterius/test-datasets/modules/data/spatial_omics/visium/homo_sapiens/CytAssist_11mm_FFPE_Human_Glioblastoma_2.2.zarr.tar.gz", checkIfExists: true)), + ]) + """ + } + } + run("SDATA_TO_LEGACY_ANNDATA") { + script "../../../sdata/to_legacy_anndata/main.nf" + process { + """ + input[0] = UNTAR.out.untar + """ + } + } + } + + when { + process { + """ + input[0] = SDATA_TO_LEGACY_ANNDATA.out.adata + .toSortedList { a, b -> a[0].id <=> b[0].id } + .flatMap { it } + .map { _meta, zarr -> zarr } + .collect() + input[1] = 'inner' // join + input[2] = 'library_id' // label + input[3] = false // preserve_var + input[4] = true // preserve_spatial + """ + } + } + + then { + assertAll( + { assert process.success }, + { assert snapshot( + process.out.versions, + anndata(process.out.adata[0]).yaml + ).match() } + ) + } + } + + test("homo_sapiens - h5ad - stub") { + + options "-stub" + + when { + process { + """ + input[0] = channel.fromList([ + tuple([ id: 'CytAssist_11mm_FFPE_Human_Glioblastoma_2' ], file(params.modules_testdata_base_path + 'genomics/homo_sapiens/scrnaseq/h5ad/SRR28679756_filtered_matrix.h5ad', checkIfExists: true)), + tuple([ id: 'CytAssist_11mm_FFPE_Human_Glioblastoma_2.2' ], file(params.modules_testdata_base_path + 'genomics/homo_sapiens/scrnaseq/h5ad/SRR28679759_filtered_matrix.h5ad', checkIfExists: true)) + ]) .toSortedList { a, b -> a[0].id <=> b[0].id } + .flatMap() + .map { _meta, h5ad -> h5ad } + .collect() + input[1] = 'inner' // join + input[2] = 'library_id' // label + input[3] = true // preserve_var + input[4] = false // preserve_spatial + """ + } + } + + then { + assertAll( + { assert process.success }, + { assert snapshot(process.out).match() } + ) + } + } +} diff --git a/modules/local/adata/merge/tests/main.nf.test.snap b/modules/local/adata/merge/tests/main.nf.test.snap new file mode 100644 index 00000000..e67ce437 --- /dev/null +++ b/modules/local/adata/merge/tests/main.nf.test.snap @@ -0,0 +1,218 @@ +{ + "homo_sapiens - h5ad - inner": { + "content": [ + [ + "versions.yml:md5,000ad1cdc4326c1b33c0fbd3557056f5" + ], + { + "n_obs": 20313, + "n_vars": 9887, + "obs": { + "index": "_index", + "columns": [ + "library_id", + "sample" + ] + }, + "var": { + "index": "_index", + "columns": [ + + ] + }, + "layers": [ + + ], + "obsm": [ + + ], + "varm": [ + + ], + "obsp": [ + + ], + "varp": [ + + ], + "uns": [ + "merge" + ] + } + ], + "timestamp": "2026-04-02T10:41:33.47426", + "meta": { + "nf-test": "0.9.5", + "nextflow": "25.10.4" + } + }, + "homo_sapiens - h5ad - preserve var data": { + "content": [ + [ + "versions.yml:md5,000ad1cdc4326c1b33c0fbd3557056f5" + ], + { + "n_obs": 20313, + "n_vars": 9887, + "obs": { + "index": "_index", + "columns": [ + "library_id", + "sample" + ] + }, + "var": { + "index": "_index", + "columns": [ + + ] + }, + "layers": [ + + ], + "obsm": [ + + ], + "varm": [ + + ], + "obsp": [ + + ], + "varp": [ + + ], + "uns": [ + "merge" + ] + } + ], + "timestamp": "2026-04-02T10:41:55.731015", + "meta": { + "nf-test": "0.9.5", + "nextflow": "25.10.4" + } + }, + "homo_sapiens - h5ad - stub": { + "content": [ + { + "0": [ + "merged.h5ad:md5,d41d8cd98f00b204e9800998ecf8427e" + ], + "1": [ + "versions.yml:md5,d41d8cd98f00b204e9800998ecf8427e" + ], + "adata": [ + "merged.h5ad:md5,d41d8cd98f00b204e9800998ecf8427e" + ], + "versions": [ + "versions.yml:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + } + ], + "timestamp": "2026-04-01T18:56:30.816943", + "meta": { + "nf-test": "0.9.5", + "nextflow": "25.10.4" + } + }, + "homo_sapiens - zarr - preserve spatial data": { + "content": [ + [ + "versions.yml:md5,000ad1cdc4326c1b33c0fbd3557056f5" + ], + { + "n_obs": 22794, + "n_vars": 19023, + "obs": { + "index": "_index", + "columns": [ + "array_col", + "array_row", + "in_tissue", + "library_id", + "region", + "spot_id" + ] + }, + "var": { + "index": "_index", + "columns": [ + + ] + }, + "layers": [ + "raw" + ], + "obsm": [ + "spatial" + ], + "varm": [ + + ], + "obsp": [ + + ], + "varp": [ + + ], + "uns": [ + "merge", + "spatial" + ] + } + ], + "timestamp": "2026-04-02T10:42:20.358236", + "meta": { + "nf-test": "0.9.5", + "nextflow": "25.10.4" + } + }, + "homo_sapiens - h5ad - outer": { + "content": [ + [ + "versions.yml:md5,000ad1cdc4326c1b33c0fbd3557056f5" + ], + { + "n_obs": 20313, + "n_vars": 9887, + "obs": { + "index": "_index", + "columns": [ + "library_id", + "sample" + ] + }, + "var": { + "index": "_index", + "columns": [ + + ] + }, + "layers": [ + "counts" + ], + "obsm": [ + + ], + "varm": [ + + ], + "obsp": [ + + ], + "varp": [ + + ], + "uns": [ + "merge" + ] + } + ], + "timestamp": "2026-04-02T10:41:44.991457", + "meta": { + "nf-test": "0.9.5", + "nextflow": "25.10.4" + } + } +} \ No newline at end of file diff --git a/modules/local/merge_sdata/main.nf b/modules/local/merge_sdata/main.nf deleted file mode 100644 index 6abdaa6f..00000000 --- a/modules/local/merge_sdata/main.nf +++ /dev/null @@ -1,33 +0,0 @@ -// -// Merge per-sample SpatialData into a single SpatialData -// -process MERGE_SDATA { - - label 'process_low' - container "community.wave.seqera.io/library/harmonypy_scanorama_gcc_gxx_pruned:95f731fde0b9ddef" - - input: - path(sdata, stageAs: "?/*") - - output: - path("merged_sdata.zarr"), emit: sdata - tuple val("${task.process}"), val('merge_sdata'), eval('python -c "import spatialdata_io; print(spatialdata_io.__version__)"'), emit: versions_merge_sdata, topic: versions - - when: - task.ext.when == null || task.ext.when - - script: - if (workflow.profile.tokenize(',').intersect(['conda', 'mamba']).size() >= 1) { - exit 1, "The MERGE_SDATA module does not support Conda/Mamba, please use Docker / Singularity / Podman instead." - } - """ - # Set environment variables - export XDG_CACHE_HOME="./.xdg_cache_home" - export XDG_DATA_HOME="./.xdg_data_home" - - # Execute script - merge_sdata.py \\ - ${sdata} \\ - merged_sdata.zarr - """ -} diff --git a/modules/local/read_data/main.nf b/modules/local/read_data/main.nf deleted file mode 100644 index 7f366390..00000000 --- a/modules/local/read_data/main.nf +++ /dev/null @@ -1,50 +0,0 @@ -// -// Read ST 10x Visium data with spatialdata_io and save to `SpatialData` file -// -process READ_DATA { - - tag "${meta.id}" - label 'process_low' - - container "community.wave.seqera.io/library/harmonypy_scanorama_gcc_gxx_pruned:95f731fde0b9ddef" - - input: - tuple val(meta), path("${meta.id}") - val(hd_bin_size) - - output: - tuple val(meta), path("sdata_raw.zarr"), emit: sdata_raw - tuple val("${task.process}"), val('read_data'), eval('python -c "import spatialdata_io; print(spatialdata_io.__version__)"'), emit: versions_read_data, topic: versions - - when: - task.ext.when == null || task.ext.when - - script: - if (workflow.profile.tokenize(',').intersect(['conda', 'mamba']).size() >= 1) { - exit 1, "The READ_DATA module does not support Conda/Mamba, please use Docker / Singularity / Podman instead." - } - - """ - # Fix required directory structure - - # Prepare the --visium_hd flag and bin_size conditionally - visiumHdFlag="" - binSizeFlag="" - if [ -d "${meta.id}/binned_outputs" ]; then - visiumHdFlag="--visium_hd" - binSizeFlag="--bin_size ${hd_bin_size}" - fi - - # Set environment variables - export XDG_CACHE_HOME="./.xdg_cache_home" - export XDG_DATA_HOME="./.xdg_data_home" - - # Execute read data script - read_data.py \\ - --SRCountDir "${meta.id}" \\ - --sampleID "${meta.id}" \\ - --output_sdata sdata_raw.zarr \\ - \$visiumHdFlag \\ - \$binSizeFlag - """ -} diff --git a/modules/local/scanpy/calculate_qc_metrics/main.nf b/modules/local/scanpy/calculate_qc_metrics/main.nf new file mode 100644 index 00000000..14495722 --- /dev/null +++ b/modules/local/scanpy/calculate_qc_metrics/main.nf @@ -0,0 +1,27 @@ +process SCANPY_CALCULATE_QC_METRICS { + tag "${meta.id}" + label 'process_single' + + container "community.wave.seqera.io/library/harmonypy_scanorama_gcc_gxx_pruned:95f731fde0b9ddef" + + input: + tuple val(meta), path(adata, stageAs: "input.h5ad") + + output: + tuple val(meta), path("${prefix}.h5ad"), emit: adata + path "versions.yml" , emit: versions, topic: versions + + when: + task.ext.when == null || task.ext.when + + script: + prefix = task.ext.prefix ?: "${meta.id}" + template 'calculate_qc_metrics.py' + + stub: + prefix = task.ext.prefix ?: "${meta.id}" + """ + touch ${prefix}.h5ad + touch versions.yml + """ +} diff --git a/modules/local/scanpy/calculate_qc_metrics/templates/calculate_qc_metrics.py b/modules/local/scanpy/calculate_qc_metrics/templates/calculate_qc_metrics.py new file mode 100644 index 00000000..c1eb4055 --- /dev/null +++ b/modules/local/scanpy/calculate_qc_metrics/templates/calculate_qc_metrics.py @@ -0,0 +1,182 @@ +#!/usr/bin/env python3 +""" +Calculate QC metrics for AnnData using scanpy. + +Adds the following annotations: +- var: 'mt', 'ribo', 'hb' (boolean flags for gene types) +- obs: 'n_genes_by_counts', 'total_counts', 'pct_counts_mt', 'pct_counts_ribo', 'pct_counts_hb' +""" + +# Required before importing Numba-dependent packages in read-only containers +import os +os.environ["NUMBA_CACHE_DIR"] = "/tmp/numba_cache" +os.environ["MPLCONFIGDIR"] = "/tmp/matplotlib" +os.environ["XDG_CACHE_HOME"] = "/tmp/cache" + +import importlib.metadata +import platform + +import anndata as ad +import numpy as np +import scanpy as sc +import scipy.sparse +import yaml + + +def validate_adata(adata): + """Validate that AnnData has sufficient data for QC calculation.""" + n_obs, n_genes = adata.shape + if n_obs == 0: + raise ValueError("AnnData has 0 obs; cannot calculate QC metrics.") + if n_genes == 0: + raise ValueError("AnnData has 0 genes; cannot calculate QC metrics.") + if n_genes < 10: + print(f"WARNING: AnnData has only {n_genes} genes. This may indicate a problem with the input data.") + + +def annotate_gene_types(adata): + """Annotate gene types (mitochondrial, ribosomal, haemoglobin) in var.""" + # Case-insensitive annotation + var_names_upper = adata.var_names.str.upper() + adata.var["mt"] = var_names_upper.str.startswith("MT-") + adata.var["ribo"] = var_names_upper.str.match(r"^RP[SL]") + adata.var["hb"] = var_names_upper.str.match(r"^HB[^P]") + + gene_counts = { + "mt": adata.var["mt"].sum(), + "ribo": adata.var["ribo"].sum(), + "hb": adata.var["hb"].sum(), + } + + print("Gene type counts:") + print(f" MT genes: {gene_counts['mt']}") + print(f" Ribo genes: {gene_counts['ribo']}") + print(f" Hb genes: {gene_counts['hb']}") + + return gene_counts + + +def determine_qc_vars(gene_counts): + """Determine which qc_vars to use based on gene counts.""" + qc_vars = [] + for var_name, count in gene_counts.items(): + if count > 0: + qc_vars.append(var_name) + else: + print(f"WARNING: No {var_name} genes found in the dataset.") + return qc_vars + + +def determine_percent_top(n_genes): + """Determine percent_top parameter based on number of genes.""" + percent_top = [t for t in [500, 200, 100, 50] if n_genes >= t] + if not percent_top and n_genes >= 10: + percent_top = [n_genes] + return percent_top + + +def ensure_qc_columns_exist(adata): + """Ensure all expected QC columns exist, adding zeros if missing.""" + for var_name in ["mt", "ribo", "hb"]: + if f"pct_counts_{var_name}" not in adata.obs.columns: + adata.obs[f"pct_counts_{var_name}"] = 0.0 + if f"total_counts_{var_name}" not in adata.obs.columns: + adata.obs[f"total_counts_{var_name}"] = 0.0 + + if "total_counts" not in adata.obs.columns: + adata.obs["total_counts"] = np.array(adata.X.sum(axis=1)).flatten() + if "n_genes_by_counts" not in adata.obs.columns: + adata.obs["n_genes_by_counts"] = np.array((adata.X > 0).sum(axis=1)).flatten() + + return adata + + +def calculate_qc_metrics(adata): + """Calculate QC metrics for AnnData object.""" + # Store raw counts layer if not already present + if "raw" not in adata.layers: + adata.layers["raw"] = adata.X.copy() + + # Ensure X is in sparse format for compatibility + if not scipy.sparse.issparse(adata.X): + adata.X = scipy.sparse.csr_matrix(adata.X) + + adata.var_names_make_unique() + + gene_counts = annotate_gene_types(adata) + qc_vars = determine_qc_vars(gene_counts) + percent_top = determine_percent_top(adata.shape[1]) + + print(f"Using percent_top: {percent_top if percent_top else 'disabled'}") + print(f"Using qc_vars: {qc_vars if qc_vars else 'none'}") + + sc.pp.calculate_qc_metrics( + adata, + qc_vars=qc_vars, + percent_top=percent_top if percent_top else None, + inplace=True, + log1p=False, + ) + + adata = ensure_qc_columns_exist(adata) + + return adata + + +def print_qc_summary(adata): + """Print summary of QC metrics.""" + obs = adata.obs + + print("QC metrics summary:") + print(f" Median total counts: {obs['total_counts'].median():.1f}") + print(f" Median genes per obs: {obs['n_genes_by_counts'].median():.1f}") + print(f" Median MT %: {obs['pct_counts_mt'].median():.2f}") + print(f" Median Ribo %: {obs['pct_counts_ribo'].median():.2f}") + print(f" Median Hb %: {obs['pct_counts_hb'].median():.2f}") + print( + f"Total counts range: " + f"[{obs['total_counts'].min():.0f}, {obs['total_counts'].max():.0f}]" + ) + print( + f"Genes per obs range: " + f"[{obs['n_genes_by_counts'].min():.0f}, " + f"{obs['n_genes_by_counts'].max():.0f}]" + ) + + +def write_versions(process_name): + """Write software versions to a YAML file.""" + versions = { + process_name: { + "python": platform.python_version(), + "scanpy": importlib.metadata.version("scanpy"), + "anndata": importlib.metadata.version("anndata"), + } + } + with open("versions.yml", "w") as f: + yaml.dump(versions, f) + + +def main(): + """Calculate QC metrics for an AnnData object.""" + # Template variables + input_adata = "${adata}" + output_adata = "${prefix}.h5ad" + process_name = "${task.process}" + + print(f"Calculating QC metrics for sample: {input_adata}") + adata = ad.read_h5ad(input_adata) + print(f"AnnData shape: {adata.shape}") + + validate_adata(adata) + adata = calculate_qc_metrics(adata) + print_qc_summary(adata) + + adata.write_h5ad(output_adata) + print(f"Written AnnData with QC metrics to: {output_adata}") + + write_versions(process_name) + + +if __name__ == "__main__": + main() diff --git a/modules/local/scanpy/calculate_qc_metrics/tests/main.nf.test b/modules/local/scanpy/calculate_qc_metrics/tests/main.nf.test new file mode 100644 index 00000000..1d0d2e54 --- /dev/null +++ b/modules/local/scanpy/calculate_qc_metrics/tests/main.nf.test @@ -0,0 +1,55 @@ +nextflow_process { + + name "Test Process SCANPY_CALCULATE_QC_METRICS" + script "../main.nf" + process "SCANPY_CALCULATE_QC_METRICS" + + tag "modules" + tag "modules_local" + tag "scanpy_calculate_qc_metrics" + + test("homo_sapiens - h5ad") { + + when { + process { + """ + input[0] = [ + [ id: 'CytAssist_11mm_FFPE_Human_Glioblastoma_2' ], file(params.modules_testdata_base_path + 'genomics/homo_sapiens/scrnaseq/h5ad/SRR28679756_filtered_matrix.h5ad', checkIfExists: true) + ] + """ + } + } + + then { + assertAll( + { assert process.success }, + { assert snapshot( + process.out.versions, + anndata(process.out.adata[0][1]).yaml + ).match() } + ) + } + } + + test("homo_sapiens - h5ad - stub") { + + options "-stub" + + when { + process { + """ + input[0] = [ + [ id: 'CytAssist_11mm_FFPE_Human_Glioblastoma_2' ], file(params.modules_testdata_base_path + 'genomics/homo_sapiens/scrnaseq/h5ad/SRR28679756_filtered_matrix.h5ad', checkIfExists: true) + ] + """ + } + } + + then { + assertAll( + { assert process.success }, + { assert snapshot(process.out).match() } + ) + } + } +} diff --git a/modules/local/scanpy/calculate_qc_metrics/tests/main.nf.test.snap b/modules/local/scanpy/calculate_qc_metrics/tests/main.nf.test.snap new file mode 100644 index 00000000..dcf0b527 --- /dev/null +++ b/modules/local/scanpy/calculate_qc_metrics/tests/main.nf.test.snap @@ -0,0 +1,101 @@ +{ + "homo_sapiens - h5ad": { + "content": [ + [ + "versions.yml:md5,6f4b87dd8d7574d03eb384519a2f6283" + ], + { + "n_obs": 12940, + "n_vars": 9887, + "obs": { + "index": "_index", + "columns": [ + "n_genes_by_counts", + "pct_counts_hb", + "pct_counts_in_top_100_genes", + "pct_counts_in_top_200_genes", + "pct_counts_in_top_500_genes", + "pct_counts_in_top_50_genes", + "pct_counts_mt", + "pct_counts_ribo", + "sample", + "total_counts", + "total_counts_hb", + "total_counts_mt", + "total_counts_ribo" + ] + }, + "var": { + "index": "_index", + "columns": [ + "hb", + "mean_counts", + "mt", + "n_cells_by_counts", + "pct_dropout_by_counts", + "ribo", + "symbols", + "total_counts" + ] + }, + "layers": [ + "counts", + "raw" + ], + "obsm": [ + + ], + "varm": [ + + ], + "obsp": [ + + ], + "varp": [ + + ], + "uns": [ + + ] + } + ], + "timestamp": "2026-03-30T07:09:45.477967", + "meta": { + "nf-test": "0.9.5", + "nextflow": "25.10.4" + } + }, + "homo_sapiens - h5ad - stub": { + "content": [ + { + "0": [ + [ + { + "id": "CytAssist_11mm_FFPE_Human_Glioblastoma_2" + }, + "CytAssist_11mm_FFPE_Human_Glioblastoma_2.h5ad:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ], + "1": [ + "versions.yml:md5,d41d8cd98f00b204e9800998ecf8427e" + ], + "adata": [ + [ + { + "id": "CytAssist_11mm_FFPE_Human_Glioblastoma_2" + }, + "CytAssist_11mm_FFPE_Human_Glioblastoma_2.h5ad:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ], + "versions": [ + "versions.yml:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + } + ], + "timestamp": "2026-04-01T20:56:00.267953", + "meta": { + "nf-test": "0.9.5", + "nextflow": "25.10.4" + } + } +} \ No newline at end of file diff --git a/modules/local/scanpy/filter/main.nf b/modules/local/scanpy/filter/main.nf new file mode 100644 index 00000000..bbb60260 --- /dev/null +++ b/modules/local/scanpy/filter/main.nf @@ -0,0 +1,35 @@ +process SCANPY_FILTER { + tag "${meta.id}" + label 'process_single' + + container "community.wave.seqera.io/library/harmonypy_scanorama_gcc_gxx_pruned:95f731fde0b9ddef" + + input: + tuple val(meta), path(adata, stageAs: "input.h5ad") + val min_counts + val min_genes + val min_obs + val mito_threshold + val ribo_threshold + val hb_threshold + + output: + tuple val(meta), path("${prefix}.h5ad") , emit: adata + tuple val(meta), path("${prefix}_stats.json"), emit: stats + path "versions.yml" , emit: versions, topic: versions + + when: + task.ext.when == null || task.ext.when + + script: + prefix = task.ext.prefix ?: "${meta.id}" + template 'filter.py' + + stub: + prefix = task.ext.prefix ?: "${meta.id}" + """ + touch ${prefix}.h5ad + echo '{}' > ${prefix}_stats.json + touch versions.yml + """ +} diff --git a/modules/local/scanpy/filter/templates/filter.py b/modules/local/scanpy/filter/templates/filter.py new file mode 100644 index 00000000..111982a9 --- /dev/null +++ b/modules/local/scanpy/filter/templates/filter.py @@ -0,0 +1,275 @@ +#!/usr/bin/env python3 +""" +Filter observations (cells for scRNA-seq data, spots for spatial data) and genes +from an AnnData object based on QC metrics. + +Filtering steps (in order): + 1. Remove observations outside tissue (spatial data only) + 2. Filter observations by minimum counts + 3. Filter observations by minimum genes + 4. Filter genes by minimum observations + 5. Filter observations by maximum mitochondrial content + 6. Filter observations by minimum ribosomal content + 7. Filter observations by maximum haemoglobin content +""" + +import importlib.metadata +import json +import platform + +import anndata as ad +import scanpy as sc +import yaml + + +def filter_by_obs_column(adata, col, threshold, filter_below, stat_key, stats): + """ + Filter observations based on a threshold for a given column. + + Parameters + ---------- + adata : AnnData + AnnData object to filter. + col : str + Column name in adata.obs to filter on. + threshold : float + Threshold value for filtering. + filter_below : bool + If True, filter obs with values smaller than the threshold, otherwise + filter values larger than the threshold. + stat_key : str + Key for storing the filtered count in stats dictionary. + stats : dict + Statistics dictionary to update. + + Returns + ------- + tuple + Filtered AnnData and updated statistics. + """ + if col not in adata.obs.columns: + print(f"Column '{col}' not found, skipping filtering") + stats[stat_key] = 0 + return adata, stats + + n_before = adata.shape[0] + if filter_below: + adata = adata[adata.obs[col] >= threshold].copy() + symbol = "<" + else: + adata = adata[adata.obs[col] <= threshold].copy() + symbol = ">" + + n_filtered = n_before - adata.shape[0] + print(f"Removed {n_filtered} obs with {symbol} {threshold}% {col}") + stats[stat_key] = n_filtered + return adata, stats + + +def filter_outside_tissue(adata, stats): + """Filter observations outside tissue based on 'in_tissue' column.""" + in_tissue_col = "in_tissue" + if in_tissue_col not in adata.obs.columns: + print(f"Column '{in_tissue_col}' not found, skipping tissue filtering") + stats["obs_filtered_outside_tissue"] = 0 + return adata, stats + + n_before = adata.shape[0] + adata = adata[adata.obs[in_tissue_col] == 1].copy() + n_filtered = n_before - adata.shape[0] + print(f"Removed {n_filtered} obs outside tissue") + stats["obs_filtered_outside_tissue"] = n_filtered + return adata, stats + + +def filter_min_counts(adata, min_counts, stats): + """Filter observations with fewer than min_counts total counts.""" + n_before = adata.shape[0] + sc.pp.filter_cells(adata, min_counts=min_counts) + n_filtered = n_before - adata.shape[0] + print(f"Removed {n_filtered} obs with < {min_counts} counts") + stats["obs_filtered_min_counts"] = n_filtered + return adata, stats + + +def filter_min_genes(adata, min_genes, stats): + """Filter observations with fewer than min_genes expressed genes.""" + n_before = adata.shape[0] + sc.pp.filter_cells(adata, min_genes=min_genes) + n_filtered = n_before - adata.shape[0] + print(f"Removed {n_filtered} obs with < {min_genes} genes") + stats["obs_filtered_min_genes"] = n_filtered + return adata, stats + + +def filter_genes_min_obs(adata, min_obs, stats): + """Filter genes expressed in fewer than min_obs observations.""" + n_before = adata.shape[1] + sc.pp.filter_genes(adata, min_cells=min_obs) + n_filtered = n_before - adata.shape[1] + print(f"Removed {n_filtered} genes expressed in < {min_obs} obs") + stats["genes_filtered_min_obs"] = n_filtered + return adata, stats + + +def filter_adata( + adata, + min_counts, + min_genes, + min_obs, + mito_threshold, + ribo_threshold, + hb_threshold, +): + """ + Apply all filtering steps to AnnData object. + + Parameters + ---------- + adata : AnnData + AnnData object to be filtered. + min_counts : int + Minimum total counts per observation. + min_genes : int + Minimum genes expressed per observation. + min_obs : int + Minimum observations expressing each gene. + mito_threshold : float + Maximum mitochondrial content percentage. + ribo_threshold : float + Minimum ribosomal content percentage. + hb_threshold : float + Maximum haemoglobin content percentage. + + Returns + ------- + tuple + Filtered AnnData and filtering statistics dictionary. + """ + print(f"Initial shape: {adata.shape}") + + n_total_obs = adata.shape[0] + n_total_genes = adata.shape[1] + + stats = { + "total_obs_before": n_total_obs, + "total_genes_before": n_total_genes, + "min_counts_threshold": min_counts, + "min_genes_threshold": min_genes, + "min_obs_threshold": min_obs, + "mito_threshold": mito_threshold, + "ribo_threshold": ribo_threshold, + "hb_threshold": hb_threshold, + } + + adata.var_names_make_unique() + + # Apply filtering steps + adata, stats = filter_outside_tissue(adata, stats) + adata, stats = filter_min_counts(adata, min_counts, stats) + adata, stats = filter_min_genes(adata, min_genes, stats) + adata, stats = filter_genes_min_obs(adata, min_obs, stats) + adata, stats = filter_by_obs_column( + adata, + "pct_counts_mt", + mito_threshold, + filter_below=False, + stat_key="obs_filtered_mito", + stats=stats + ) + adata, stats = filter_by_obs_column( + adata, + "pct_counts_ribo", + ribo_threshold, + filter_below=True, + stat_key="obs_filtered_ribo", + stats=stats + ) + adata, stats = filter_by_obs_column( + adata, + "pct_counts_hb", + hb_threshold, + filter_below=False, + stat_key="obs_filtered_hb", + stats=stats + ) + + if adata.shape[0] == 0: + raise ValueError("Filtering resulted in 0 observations remaining.") + if adata.shape[1] == 0: + raise ValueError("Filtering resulted in 0 genes remaining.") + + # Final statistics + stats["total_obs_after"] = adata.shape[0] + stats["total_genes_after"] = adata.shape[1] + stats["total_obs_filtered"] = n_total_obs - adata.shape[0] + stats["total_genes_filtered"] = n_total_genes - adata.shape[1] + adata.uns["filtering_stats"] = stats + + print("Filtering summary:") + print(f" Obs: {n_total_obs} -> {stats['total_obs_after']} " + f"({stats['total_obs_filtered']} removed)") + print(f" Genes: {n_total_genes} -> {stats['total_genes_after']} " + f"({stats['total_genes_filtered']} removed)") + + return adata, stats + + +def write_stats(stats, output_path): + """Write filtering statistics to a JSON file.""" + with open(output_path, "w") as f: + json.dump(stats, f, indent=2) + print(f"Written filtering statistics to: {output_path}") + + +def write_versions(process_name): + """Write software versions to a YAML file.""" + versions = { + process_name: { + "python": platform.python_version(), + "scanpy": importlib.metadata.version("scanpy"), + "anndata": importlib.metadata.version("anndata"), + } + } + with open("versions.yml", "w") as f: + yaml.dump(versions, f) + + +def main(): + """Filter observations and genes from an AnnData object.""" + # Template variables + h5ad = "${adata}" + sample_id = "${meta.id}" + min_counts = int("${min_counts}") + min_genes = int("${min_genes}") + min_obs = int("${min_obs}") + mito_threshold = float("${mito_threshold}") + ribo_threshold = float("${ribo_threshold}") + hb_threshold = float("${hb_threshold}") + output_adata = "${prefix}.h5ad" + output_stats = "${prefix}_stats.json" + process_name = "${task.process}" + + print(f"Filtering AnnData from: {h5ad}") + adata = ad.read_h5ad(h5ad) + + adata, stats = filter_adata( + adata, + min_counts=min_counts, + min_genes=min_genes, + min_obs=min_obs, + mito_threshold=mito_threshold, + ribo_threshold=ribo_threshold, + hb_threshold=hb_threshold, + ) + stats["sample_id"] = sample_id + + adata.write_h5ad(output_adata) + print(f"Written filtered AnnData to: {output_adata}") + write_stats(stats, output_stats) + + write_versions(process_name) + + +if __name__ == "__main__": + main() diff --git a/modules/local/scanpy/filter/tests/main.nf.test b/modules/local/scanpy/filter/tests/main.nf.test new file mode 100644 index 00000000..8829a5ed --- /dev/null +++ b/modules/local/scanpy/filter/tests/main.nf.test @@ -0,0 +1,227 @@ +nextflow_process { + + name "Test Process SCANPY_FILTER" + script "../main.nf" + process "SCANPY_FILTER" + + tag "modules" + tag "modules_local" + tag "scanpy_filter" + + test("homo_sapiens - h5ad") { + + setup { + run("SCANPY_CALCULATE_QC_METRICS") { + script "../../calculate_qc_metrics/main.nf" + process { + """ + input[0] = [ + [ id: 'CytAssist_11mm_FFPE_Human_Glioblastoma_2' ], file(params.modules_testdata_base_path + 'genomics/homo_sapiens/scrnaseq/h5ad/SRR28679756_filtered_matrix.h5ad', checkIfExists: true) + ] + """ + } + } + } + + when { + process { + """ + input[0] = SCANPY_CALCULATE_QC_METRICS.out.adata + input[1] = 500 // min_counts + input[2] = 250 // min_genes + input[3] = 1 // min_obs + input[4] = 20.0 // mito_threshold + input[5] = 0.0 // ribo_threshold + input[6] = 100.0 // hb_threshold + """ + } + } + + then { + assertAll( + { assert process.success }, + { assert snapshot( + process.out.versions, + anndata(process.out.adata[0][1]).yaml, + process.out.stats + ).match() } + ) + def adata = anndata(process.out.adata[0][1]) + with (adata) { + assert obs.get("n_counts").data.every { it >= 500 } + assert obs.get("n_genes").data.every { it >= 250 } + assert obs.get("pct_counts_mt").data.every { it <= 20.0 } + } + } + } + + test("homo_sapiens - h5ad - should fail with 0 obs") { + + setup { + run("SCANPY_CALCULATE_QC_METRICS") { + script "../../calculate_qc_metrics/main.nf" + process { + """ + input[0] = [ + [ id: 'CytAssist_11mm_FFPE_Human_Glioblastoma_2' ], file(params.modules_testdata_base_path + 'genomics/homo_sapiens/scrnaseq/h5ad/SRR28679756_filtered_matrix.h5ad', checkIfExists: true) + ] + """ + } + } + } + + when { + process { + """ + input[0] = SCANPY_CALCULATE_QC_METRICS.out.adata + input[1] = 99999 // min_counts + input[2] = 250 // min_genes + input[3] = 1 // min_obs + input[4] = 20.0 // mito_threshold + input[5] = 0.0 // ribo_threshold + input[6] = 100.0 // hb_threshold + """ + } + } + + then { + assertAll( + { assert process.failed } + ) + } + } + + test("homo_sapiens - h5ad - should fail with 0 genes") { + + setup { + run("SCANPY_CALCULATE_QC_METRICS") { + script "../../calculate_qc_metrics/main.nf" + process { + """ + input[0] = [ + [ id: 'CytAssist_11mm_FFPE_Human_Glioblastoma_2' ], file(params.modules_testdata_base_path + 'genomics/homo_sapiens/scrnaseq/h5ad/SRR28679756_filtered_matrix.h5ad', checkIfExists: true) + ] + """ + } + } + } + + when { + process { + """ + input[0] = SCANPY_CALCULATE_QC_METRICS.out.adata + input[1] = 500 // min_counts + input[2] = 250 // min_genes + input[3] = 99999 // min_obs + input[4] = 20.0 // mito_threshold + input[5] = 0.0 // ribo_threshold + input[6] = 100.0 // hb_threshold + """ + } + } + + then { + assertAll( + { assert process.failed } + ) + } + } + + test("homo_sapiens - h5ad - with spatial data") { + + setup { + run("UNTAR") { + script "../../../../nf-core/untar/main.nf" + process { + """ + input[0] = [ + [ id: 'CytAssist_11mm_FFPE_Human_Glioblastoma_2' ], file("https://raw.githubusercontent.com/fasterius/test-datasets/modules/data/spatial_omics/visium/homo_sapiens/CytAssist_11mm_FFPE_Human_Glioblastoma_2.zarr.tar.gz", checkIfExists: true) + ] + """ + } + } + run("SDATA_TO_LEGACY_ANNDATA") { + script "../../../sdata/to_legacy_anndata/main.nf" + process { + """ + input[0] = UNTAR.out.untar + """ + } + } + run("SCANPY_CALCULATE_QC_METRICS") { + script "../../calculate_qc_metrics/main.nf" + process { + """ + input[0] = SDATA_TO_LEGACY_ANNDATA.out.adata + """ + } + } + } + + when { + process { + """ + input[0] = SCANPY_CALCULATE_QC_METRICS.out.adata + input[1] = 1 // min_counts + input[2] = 1 // min_genes + input[3] = 0 // min_obs + input[4] = 100.0 // mito_threshold + input[5] = 0.0 // ribo_threshold + input[6] = 100.0 // hb_threshold + """ + } + } + + then { + assertAll( + { assert process.success }, + { assert snapshot( + process.out.versions, + anndata(process.out.adata[0][1]).yaml, + process.out.stats + ).match() } + ) + def adata = anndata(process.out.adata[0][1]) + assert adata.obs.get("in_tissue").data.every { it == 1 } + } + } + + test("homo_sapiens - h5ad - stub") { + + options "-stub" + + setup { + run("SCANPY_CALCULATE_QC_METRICS") { + script "../../calculate_qc_metrics/main.nf" + process { + """ + input[0] = [ + [ id: 'CytAssist_11mm_FFPE_Human_Glioblastoma_2' ], file(params.modules_testdata_base_path + 'genomics/homo_sapiens/scrnaseq/h5ad/SRR28679756_filtered_matrix.h5ad', checkIfExists: true) + ] + """ + } + } + } + + when { + process { + """ + input[0] = SCANPY_CALCULATE_QC_METRICS.out.adata + input[1] = 500 // min_counts + input[2] = 250 // min_genes + input[3] = 1 // min_obs + input[4] = 20.0 // mito_threshold + input[5] = 0.0 // ribo_threshold + input[6] = 100.0 // hb_threshold + """ + } + } + + then { + assertAll( + { assert process.success }, + { assert snapshot(process.out).match() } + ) + } + } +} diff --git a/modules/local/scanpy/filter/tests/main.nf.test.snap b/modules/local/scanpy/filter/tests/main.nf.test.snap new file mode 100644 index 00000000..fe0e4dd3 --- /dev/null +++ b/modules/local/scanpy/filter/tests/main.nf.test.snap @@ -0,0 +1,215 @@ +{ + "homo_sapiens - h5ad": { + "content": [ + [ + "versions.yml:md5,b6a994de579a3ecaab530e42ab0b9d2d" + ], + { + "n_obs": 9, + "n_vars": 1015, + "obs": { + "index": "_index", + "columns": [ + "n_counts", + "n_genes", + "n_genes_by_counts", + "pct_counts_hb", + "pct_counts_in_top_100_genes", + "pct_counts_in_top_200_genes", + "pct_counts_in_top_500_genes", + "pct_counts_in_top_50_genes", + "pct_counts_mt", + "pct_counts_ribo", + "sample", + "total_counts", + "total_counts_hb", + "total_counts_mt", + "total_counts_ribo" + ] + }, + "var": { + "index": "_index", + "columns": [ + "hb", + "mean_counts", + "mt", + "n_cells", + "n_cells_by_counts", + "pct_dropout_by_counts", + "ribo", + "symbols", + "total_counts" + ] + }, + "layers": [ + "counts", + "raw" + ], + "obsm": [ + + ], + "varm": [ + + ], + "obsp": [ + + ], + "varp": [ + + ], + "uns": [ + "filtering_stats" + ] + }, + [ + [ + { + "id": "CytAssist_11mm_FFPE_Human_Glioblastoma_2" + }, + "CytAssist_11mm_FFPE_Human_Glioblastoma_2_stats.json:md5,eb913c148e5702844d1ade7ab4d10c5c" + ] + ] + ], + "timestamp": "2026-04-02T15:23:54.342574", + "meta": { + "nf-test": "0.9.5", + "nextflow": "25.10.4" + } + }, + "homo_sapiens - h5ad - stub": { + "content": [ + { + "0": [ + [ + { + "id": "CytAssist_11mm_FFPE_Human_Glioblastoma_2" + }, + "CytAssist_11mm_FFPE_Human_Glioblastoma_2.h5ad:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ], + "1": [ + [ + { + "id": "CytAssist_11mm_FFPE_Human_Glioblastoma_2" + }, + "CytAssist_11mm_FFPE_Human_Glioblastoma_2_stats.json:md5,8a80554c91d9fca8acb82f023de02f11" + ] + ], + "2": [ + "versions.yml:md5,d41d8cd98f00b204e9800998ecf8427e" + ], + "adata": [ + [ + { + "id": "CytAssist_11mm_FFPE_Human_Glioblastoma_2" + }, + "CytAssist_11mm_FFPE_Human_Glioblastoma_2.h5ad:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ], + "stats": [ + [ + { + "id": "CytAssist_11mm_FFPE_Human_Glioblastoma_2" + }, + "CytAssist_11mm_FFPE_Human_Glioblastoma_2_stats.json:md5,8a80554c91d9fca8acb82f023de02f11" + ] + ], + "versions": [ + "versions.yml:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + } + ], + "timestamp": "2026-04-01T20:56:34.653938", + "meta": { + "nf-test": "0.9.5", + "nextflow": "25.10.4" + } + }, + "homo_sapiens - h5ad - with spatial data": { + "content": [ + [ + "versions.yml:md5,b6a994de579a3ecaab530e42ab0b9d2d" + ], + { + "n_obs": 6583, + "n_vars": 19023, + "obs": { + "index": "_index", + "columns": [ + "array_col", + "array_row", + "in_tissue", + "n_counts", + "n_genes", + "n_genes_by_counts", + "pct_counts_hb", + "pct_counts_in_top_100_genes", + "pct_counts_in_top_200_genes", + "pct_counts_in_top_500_genes", + "pct_counts_in_top_50_genes", + "pct_counts_mt", + "pct_counts_ribo", + "region", + "spot_id", + "total_counts", + "total_counts_hb", + "total_counts_mt", + "total_counts_ribo" + ] + }, + "var": { + "index": "_index", + "columns": [ + "feature_types", + "gene_ids", + "genome", + "hb", + "mean_counts", + "mt", + "n_cells", + "n_cells_by_counts", + "pct_dropout_by_counts", + "ribo", + "total_counts" + ] + }, + "layers": [ + "raw" + ], + "obsm": [ + "spatial" + ], + "varm": [ + + ], + "obsp": [ + + ], + "varp": [ + + ], + "uns": [ + "coordinate_system", + "filtering_stats", + "sample_id", + "spatial", + "spatialdata_attrs", + "table_name" + ] + }, + [ + [ + { + "id": "CytAssist_11mm_FFPE_Human_Glioblastoma_2" + }, + "CytAssist_11mm_FFPE_Human_Glioblastoma_2_stats.json:md5,4ac0700b95fcc2412bf56f61fcaec22d" + ] + ] + ], + "timestamp": "2026-04-02T20:17:25.845947", + "meta": { + "nf-test": "0.9.5", + "nextflow": "25.10.4" + } + } +} \ No newline at end of file diff --git a/modules/local/scanpy/harmony/main.nf b/modules/local/scanpy/harmony/main.nf new file mode 100644 index 00000000..2bf4cb79 --- /dev/null +++ b/modules/local/scanpy/harmony/main.nf @@ -0,0 +1,29 @@ +process SCANPY_HARMONY { + tag "${prefix}" + label 'process_medium' + + container "community.wave.seqera.io/library/harmonypy_scanorama_gcc_gxx_pruned:95f731fde0b9ddef" + + input: + path h5ad + val key + val embedding_added + + output: + path "${prefix}.h5ad", emit: adata + path "versions.yml" , emit: versions, topic: versions + + when: + task.ext.when == null || task.ext.when + + script: + prefix = task.ext.prefix ?: "merged" + template 'harmony.py' + + stub: + prefix = task.ext.prefix ?: "merged" + """ + touch ${prefix}.h5ad + touch versions.yml + """ +} diff --git a/modules/local/scanpy/harmony/templates/harmony.py b/modules/local/scanpy/harmony/templates/harmony.py new file mode 100644 index 00000000..84a70210 --- /dev/null +++ b/modules/local/scanpy/harmony/templates/harmony.py @@ -0,0 +1,89 @@ +#!/usr/bin/env python3 +""" +Integrate AnnData objects using Harmony. + +Harmony is an algorithm for integrating single-cell data from multiple +batches or experiments by removing batch effects while preserving +biological variation. +""" + +# Disable OpenMP CPU topology detection for macOS compatibility +import os +os.environ["KMP_AFFINITY"] = "disabled" + +import importlib.metadata +import platform + +import anndata as ad +import scanpy.external as sce +import yaml + + +def integrate_harmony(adata, key, adjusted_basis): + """ + Integrate observations using Harmony. + + Parameters + ---------- + adata : AnnData + Annotated data matrix with PCA computed. + key : str + Column in adata.obs containing batch/sample labels. + + Returns + ------- + AnnData + AnnData with integrated embedding in obsm[adjusted_basis]. + """ + if key not in adata.obs.columns: + raise ValueError(f"Integration key '{key}' not found in adata.obs.") + + if "X_pca" not in adata.obsm: + raise ValueError( + "PCA not found in adata.obsm; run PCA before integration." + ) + + n_batches = adata.obs[key].nunique() + print(f"Integrating {n_batches} batches using key: {key}") + + sce.pp.harmony_integrate(adata, key=key, adjusted_basis=adjusted_basis) + + return adata + + +def write_versions(process_name): + """Write software versions to a YAML file.""" + versions = { + process_name: { + "python": platform.python_version(), + "anndata": importlib.metadata.version("anndata"), + "harmonypy": importlib.metadata.version("harmonypy"), + "scanpy": importlib.metadata.version("scanpy"), + } + } + with open("versions.yml", "w") as f: + yaml.dump(versions, f) + + +def main(): + """Integrate observations in an AnnData object using Harmony.""" + # Template variables + h5ad = "${h5ad}" + key = "${key}" + adjusted_basis = "${embedding_added}" + output_h5ad = "${prefix}.h5ad" + process_name = "${task.process}" + + adata = ad.read_h5ad(h5ad) + print(f"AnnData shape: {adata.shape}") + + adata = integrate_harmony(adata, key=key, adjusted_basis=adjusted_basis) + + adata.write_h5ad(output_h5ad) + print(f"Written integrated AnnData to: {output_h5ad}") + + write_versions(process_name) + + +if __name__ == "__main__": + main() diff --git a/modules/local/scanpy/harmony/tests/main.nf.test b/modules/local/scanpy/harmony/tests/main.nf.test new file mode 100644 index 00000000..5b56b662 --- /dev/null +++ b/modules/local/scanpy/harmony/tests/main.nf.test @@ -0,0 +1,171 @@ +nextflow_process { + + name "Test Process SCANPY_HARMONY" + script "../main.nf" + process "SCANPY_HARMONY" + + tag "modules" + tag "modules_local" + tag "scanpy_harmony" + + test("homo_sapiens - h5ad") { + + setup { + run("SCANPY_PCA") { + script "../../pca/main.nf" + process { + """ + input[0] = channel.fromList([ + tuple([ id: 'CytAssist_11mm_FFPE_Human_Glioblastoma_2' ], file(params.modules_testdata_base_path + 'genomics/homo_sapiens/scrnaseq/h5ad/SRR28679756_filtered_matrix.h5ad', checkIfExists: true)), + tuple([ id: 'CytAssist_11mm_FFPE_Human_Glioblastoma_2.2' ], file(params.modules_testdata_base_path + 'genomics/homo_sapiens/scrnaseq/h5ad/SRR28679759_filtered_matrix.h5ad', checkIfExists: true)) + ]) + input[1] = 50 // n_pcs + input[2] = false // use_highly_variable + """ + } + } + run("ADATA_MERGE") { + script "../../../adata/merge/main.nf" + process { + """ + input[0] = SCANPY_PCA.out.adata + .map { _meta, h5ad -> h5ad } + .collect() + input[1] = 'inner' // join + input[2] = 'library_id' // label + input[3] = false // preserve_var + input[4] = false // preserve_spatial + """ + } + } + } + + when { + process { + """ + input[0] = ADATA_MERGE.out.adata + input[1] = 'library_id' // key + input[2] = 'X_harmony' // embedding_added + """ + } + } + + then { + assertAll( + { assert process.success }, + { assert snapshot( + process.out.versions, + anndata(process.out.adata[0]).yaml + ).match() } + ) + } + } + + test("homo_sapiens - h5ad - should fail without PCA") { + + setup { + run("ADATA_MERGE") { + script "../../../adata/merge/main.nf" + process { + """ + input[0] = channel.fromList([ + tuple([ id: 'CytAssist_11mm_FFPE_Human_Glioblastoma_2' ], file(params.modules_testdata_base_path + 'genomics/homo_sapiens/scrnaseq/h5ad/SRR28679756_filtered_matrix.h5ad', checkIfExists: true)), + tuple([ id: 'CytAssist_11mm_FFPE_Human_Glioblastoma_2.2' ], file(params.modules_testdata_base_path + 'genomics/homo_sapiens/scrnaseq/h5ad/SRR28679759_filtered_matrix.h5ad', checkIfExists: true)) + ]) + .map { _meta, h5ad -> h5ad } + .collect() + input[1] = 'inner' // join + input[2] = 'library_id' // label + input[3] = false // preserve_var + input[4] = false // preserve_spatial + """ + } + } + } + + when { + process { + """ + input[0] = ADATA_MERGE.out.adata + input[1] = 'library_id' // key + input[2] = 'X_harmony' // embedding_added + """ + } + } + + then { + { assert process.failed } + } + } + + test("homo_sapiens - h5ad - should fail with missing key") { + + when { + process { + """ + input[0] = [ + [ id: 'CytAssist_11mm_FFPE_Human_Glioblastoma_2' ], file(params.modules_testdata_base_path + 'genomics/homo_sapiens/scrnaseq/h5ad/SRR28679756_filtered_matrix.h5ad', checkIfExists: true) + ] + input[1] = 'missing_key' // key + input[2] = 'X_harmony' // embedding_added + """ + } + } + + then { + { assert process.failed } + } + } + + test("homo_sapiens - h5ad - stub") { + + options "-stub" + + setup { + run("SCANPY_PCA") { + script "../../pca/main.nf" + process { + """ + input[0] = channel.fromList([ + tuple([ id: 'CytAssist_11mm_FFPE_Human_Glioblastoma_2' ], file(params.modules_testdata_base_path + 'genomics/homo_sapiens/scrnaseq/h5ad/SRR28679756_filtered_matrix.h5ad', checkIfExists: true)), + tuple([ id: 'CytAssist_11mm_FFPE_Human_Glioblastoma_2.2' ], file(params.modules_testdata_base_path + 'genomics/homo_sapiens/scrnaseq/h5ad/SRR28679759_filtered_matrix.h5ad', checkIfExists: true)) + ]) + input[1] = 50 // n_pcs + input[2] = false // use_highly_variable + """ + } + } + run("ADATA_MERGE") { + script "../../../adata/merge/main.nf" + process { + """ + input[0] = SCANPY_PCA.out.adata + .map { _meta, h5ad -> h5ad } + .collect() + input[1] = 'inner' // join + input[2] = 'library_id' // label + input[3] = false // preserve_var + input[4] = false // preserve_spatial + """ + } + } + } + + when { + process { + """ + input[0] = ADATA_MERGE.out.adata + input[1] = 'library_id' // key + input[2] = 'X_harmony' // embedding_added + """ + } + } + + then { + assertAll( + { assert process.success }, + { assert snapshot(process.out).match() } + ) + } + } +} diff --git a/modules/local/scanpy/harmony/tests/main.nf.test.snap b/modules/local/scanpy/harmony/tests/main.nf.test.snap new file mode 100644 index 00000000..16b0bda7 --- /dev/null +++ b/modules/local/scanpy/harmony/tests/main.nf.test.snap @@ -0,0 +1,73 @@ +{ + "homo_sapiens - h5ad": { + "content": [ + [ + "versions.yml:md5,03172681ef9c2e21eed9e9ed573cf597" + ], + { + "n_obs": 20313, + "n_vars": 9887, + "obs": { + "index": "_index", + "columns": [ + "library_id", + "sample" + ] + }, + "var": { + "index": "_index", + "columns": [ + + ] + }, + "layers": [ + + ], + "obsm": [ + "X_harmony", + "X_pca" + ], + "varm": [ + + ], + "obsp": [ + + ], + "varp": [ + + ], + "uns": [ + "merge" + ] + } + ], + "timestamp": "2026-04-05T07:49:22.583334", + "meta": { + "nf-test": "0.9.5", + "nextflow": "25.10.4" + } + }, + "homo_sapiens - h5ad - stub": { + "content": [ + { + "0": [ + "merged.h5ad:md5,d41d8cd98f00b204e9800998ecf8427e" + ], + "1": [ + "versions.yml:md5,d41d8cd98f00b204e9800998ecf8427e" + ], + "adata": [ + "merged.h5ad:md5,d41d8cd98f00b204e9800998ecf8427e" + ], + "versions": [ + "versions.yml:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + } + ], + "timestamp": "2026-03-25T15:38:56.372071", + "meta": { + "nf-test": "0.9.5", + "nextflow": "25.10.4" + } + } +} \ No newline at end of file diff --git a/modules/local/scanpy/highly_variable_genes/main.nf b/modules/local/scanpy/highly_variable_genes/main.nf new file mode 100644 index 00000000..17c05452 --- /dev/null +++ b/modules/local/scanpy/highly_variable_genes/main.nf @@ -0,0 +1,29 @@ +process SCANPY_HIGHLY_VARIABLE_GENES { + tag "${meta.id}" + label 'process_single' + + container "community.wave.seqera.io/library/harmonypy_scanorama_gcc_gxx_pruned:95f731fde0b9ddef" + + input: + tuple val(meta), path(h5ad, stageAs: "input.h5ad") + val n_hvgs + val flavor + + output: + tuple val(meta), path("${prefix}.h5ad"), emit: adata + path "versions.yml" , emit: versions, topic: versions + + when: + task.ext.when == null || task.ext.when + + script: + prefix = task.ext.prefix ?: "${meta.id}" + template 'highly_variable_genes.py' + + stub: + prefix = task.ext.prefix ?: "${meta.id}" + """ + touch ${prefix}.h5ad + touch versions.yml + """ +} diff --git a/modules/local/scanpy/highly_variable_genes/templates/highly_variable_genes.py b/modules/local/scanpy/highly_variable_genes/templates/highly_variable_genes.py new file mode 100644 index 00000000..27109096 --- /dev/null +++ b/modules/local/scanpy/highly_variable_genes/templates/highly_variable_genes.py @@ -0,0 +1,184 @@ +#!/usr/bin/env python3 +""" +Identify highly variable genes (HVGs) in the dataset. + +Highly variable genes are genes that show significant variation across +observations, indicating they may be biologically relevant. These genes +are typically used for downstream dimensionality reduction and clustering. +""" + +# Required for numba caching in read-only containers +import os +os.environ["NUMBA_CACHE_DIR"] = "/tmp/numba_cache" +os.environ["MPLCONFIGDIR"] = "/tmp/matplotlib" +os.environ["XDG_CACHE_HOME"] = "/tmp/cache" + +import importlib.metadata +import platform + +import anndata as ad +import numpy as np +import scanpy as sc +import yaml + + +def validate_adata(adata): + """ + Validate that AnnData has sufficient data for HVG selection. + + Parameters + ---------- + adata : AnnData + Annotated data matrix. + + Raises + ------ + ValueError + If AnnData has 0 observations or 0 genes. + + Returns + ------- + tuple + Number of observations and genes. + """ + n_obs, n_genes = adata.shape + + if n_obs == 0: + raise ValueError("AnnData has 0 observations.") + + if n_genes == 0: + raise ValueError("AnnData has 0 genes.") + + return n_obs, n_genes + + +def mark_all_genes_hvg(adata, flavor): + """ + Mark all genes as highly variable when too few genes exist. + + Parameters + ---------- + adata : AnnData + Annotated data matrix. + flavor : str + HVG selection flavor used. + + Returns + ------- + AnnData + AnnData with all genes marked as highly variable. + """ + n_genes = adata.shape[1] + + print("WARNING: Too few genes for meaningful HVG selection.") + print("Marking all genes as highly variable.") + + adata.var["highly_variable"] = True + adata.var["highly_variable_rank"] = np.arange(n_genes) + adata.var["means"] = np.array(adata.X.mean(axis=0)).flatten() + adata.var["dispersions"] = np.zeros(n_genes) + adata.var["dispersions_norm"] = np.zeros(n_genes) + + adata.uns["hvg"] = { + "flavor": flavor, + "n_hvgs_requested": n_genes, + "n_hvgs_found": n_genes, + "warning": f"Only {n_genes} genes available, all marked as HVG", + } + + return adata + + +def find_highly_variable_genes(adata, n_top_genes, flavor): + """ + Identify highly variable genes in the dataset. + + Parameters + ---------- + adata : AnnData + Annotated data matrix. + n_top_genes : int + Number of highly variable genes to select. + flavor : str + Method for HVG selection (e.g., "seurat", "cell_ranger"). + + Returns + ------- + AnnData + AnnData with HVG annotations in var. + """ + n_obs, n_genes = validate_adata(adata) + + print(f"AnnData shape: {adata.shape}") + print(f"HVGs requested: {n_top_genes}") + print(f"Flavor: {flavor}") + + # Adjust n_top_genes if necessary + if n_top_genes >= n_genes: + print(f"WARNING: Requested {n_top_genes} HVGs " + "but only {n_genes} genes available.") + return mark_all_genes_hvg(adata, flavor) + + try: + sc.pp.highly_variable_genes( + adata, + flavor=flavor, + n_top_genes=n_top_genes, + inplace=True, + ) + except ValueError as e: + if "Bin edges must be unique" in str(e): + print("WARNING: Binning failed due to low gene variance.") + return mark_all_genes_hvg(adata, flavor) + raise + + adata.var["highly_variable"] = adata.var["highly_variable"].astype(bool) + n_hvgs_found = adata.var["highly_variable"].sum() + + adata.uns["hvg"] = { + "flavor": flavor, + "n_hvgs_requested": n_top_genes, + "n_hvgs_found": int(n_hvgs_found), + } + + print(f"Identified {n_hvgs_found} highly variable genes") + print(f"Percentage of genes: {n_hvgs_found / n_genes * 100:.1f}%") + + return adata + + +def write_versions(process_name): + """Write software versions to a YAML file.""" + versions = { + process_name: { + "python": platform.python_version(), + "scanpy": importlib.metadata.version("scanpy"), + "anndata": importlib.metadata.version("anndata"), + } + } + with open("versions.yml", "w") as f: + yaml.dump(versions, f) + + +def main(): + """Identify highly variable genes in an AnnData object.""" + # Template variables + h5ad = "${h5ad}" + n_top_genes = int("${n_hvgs}") + flavor = "${flavor}" + output_h5ad = "${prefix}.h5ad" + process_name = "${task.process}" + + adata = ad.read_h5ad(h5ad) + print(f"Finding highly variable genes in: {h5ad}") + + adata = find_highly_variable_genes(adata, n_top_genes=n_top_genes, flavor=flavor) + + adata.write_h5ad(output_h5ad) + print(f"Written AnnData with HVG annotations to: {output_h5ad}") + + write_versions(process_name) + + +if __name__ == "__main__": + main() diff --git a/modules/local/scanpy/highly_variable_genes/tests/main.nf.test b/modules/local/scanpy/highly_variable_genes/tests/main.nf.test new file mode 100644 index 00000000..30968196 --- /dev/null +++ b/modules/local/scanpy/highly_variable_genes/tests/main.nf.test @@ -0,0 +1,116 @@ +nextflow_process { + + name "Test Process SCANPY_HIGHLY_VARIABLE_GENES" + script "../main.nf" + process "SCANPY_HIGHLY_VARIABLE_GENES" + + tag "modules" + tag "modules_local" + tag "scanpy_highly_variable_genes" + + test("homo_sapiens - h5ad - seurat flavor") { + + setup { + run("SCANPY_LOG1P") { + script "../../log1p/main.nf" + process { + """ + input[0] = [ + [ id: 'CytAssist_11mm_FFPE_Human_Glioblastoma_2' ], file(params.modules_testdata_base_path + 'genomics/homo_sapiens/scrnaseq/h5ad/SRR28679756_filtered_matrix.h5ad', checkIfExists: true) + ] + """ + } + } + } + + when { + process { + """ + input[0] = SCANPY_LOG1P.out.adata + input[1] = 2000 // n_hvgs + input[2] = 'seurat' // flavor + """ + } + } + + then { + assertAll( + { assert process.success }, + { assert snapshot( + process.out.versions, + anndata(process.out.adata[0][1]).yaml + ).match() } + ) + } + } + + test("homo_sapiens - h5ad - cell_ranger flavor") { + + setup { + run("SCANPY_LOG1P") { + script "../../log1p/main.nf" + process { + """ + input[0] = [ + [ id: 'CytAssist_11mm_FFPE_Human_Glioblastoma_2' ], file(params.modules_testdata_base_path + 'genomics/homo_sapiens/scrnaseq/h5ad/SRR28679756_filtered_matrix.h5ad', checkIfExists: true) + ] + """ + } + } + } + + when { + process { + """ + input[0] = SCANPY_LOG1P.out.adata + input[1] = 2000 // n_hvgs + input[2] = 'cell_ranger' // flavor + """ + } + } + then { + assertAll( + { assert process.success }, + { assert snapshot( + process.out.versions, + anndata(process.out.adata[0][1]).yaml + ).match() } + ) + } + } + + test("homo_sapiens - h5ad - stub") { + + options "-stub" + + setup { + run("SCANPY_LOG1P") { + script "../../log1p/main.nf" + process { + """ + input[0] = [ + [ id: 'CytAssist_11mm_FFPE_Human_Glioblastoma_2' ], file(params.modules_testdata_base_path + 'genomics/homo_sapiens/scrnaseq/h5ad/SRR28679756_filtered_matrix.h5ad', checkIfExists: true) + ] + """ + } + } + } + + when { + process { + """ + input[0] = SCANPY_LOG1P.out.adata + input[1] = 2000 // n_hvgs + input[2] = 'seurat' // flavor + """ + } + } + + then { + assertAll( + { assert process.success }, + { assert snapshot(process.out).match() } + ) + } + } +} diff --git a/modules/local/scanpy/highly_variable_genes/tests/main.nf.test.snap b/modules/local/scanpy/highly_variable_genes/tests/main.nf.test.snap new file mode 100644 index 00000000..2cc842e6 --- /dev/null +++ b/modules/local/scanpy/highly_variable_genes/tests/main.nf.test.snap @@ -0,0 +1,140 @@ +{ + "homo_sapiens - h5ad - cell_ranger flavor": { + "content": [ + [ + "versions.yml:md5,e13181af4757604b85af5368250a94d7" + ], + { + "n_obs": 12940, + "n_vars": 9887, + "obs": { + "index": "_index", + "columns": [ + "sample" + ] + }, + "var": { + "index": "_index", + "columns": [ + "dispersions", + "dispersions_norm", + "highly_variable", + "highly_variable_rank", + "means", + "symbols" + ] + }, + "layers": [ + "counts" + ], + "obsm": [ + + ], + "varm": [ + + ], + "obsp": [ + + ], + "varp": [ + + ], + "uns": [ + "hvg", + "log1p", + "normalization" + ] + } + ], + "timestamp": "2026-03-30T07:11:39.972877", + "meta": { + "nf-test": "0.9.5", + "nextflow": "25.10.4" + } + }, + "homo_sapiens - h5ad - stub": { + "content": [ + { + "0": [ + [ + { + "id": "CytAssist_11mm_FFPE_Human_Glioblastoma_2" + }, + "CytAssist_11mm_FFPE_Human_Glioblastoma_2.h5ad:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ], + "1": [ + "versions.yml:md5,d41d8cd98f00b204e9800998ecf8427e" + ], + "adata": [ + [ + { + "id": "CytAssist_11mm_FFPE_Human_Glioblastoma_2" + }, + "CytAssist_11mm_FFPE_Human_Glioblastoma_2.h5ad:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ], + "versions": [ + "versions.yml:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + } + ], + "timestamp": "2026-04-01T20:57:55.308878", + "meta": { + "nf-test": "0.9.5", + "nextflow": "25.10.4" + } + }, + "homo_sapiens - h5ad - seurat flavor": { + "content": [ + [ + "versions.yml:md5,e13181af4757604b85af5368250a94d7" + ], + { + "n_obs": 12940, + "n_vars": 9887, + "obs": { + "index": "_index", + "columns": [ + "sample" + ] + }, + "var": { + "index": "_index", + "columns": [ + "dispersions", + "dispersions_norm", + "highly_variable", + "means", + "symbols" + ] + }, + "layers": [ + "counts" + ], + "obsm": [ + + ], + "varm": [ + + ], + "obsp": [ + + ], + "varp": [ + + ], + "uns": [ + "hvg", + "log1p", + "normalization" + ] + } + ], + "timestamp": "2026-03-30T07:11:23.210904", + "meta": { + "nf-test": "0.9.5", + "nextflow": "25.10.4" + } + } +} \ No newline at end of file diff --git a/modules/local/scanpy/leiden/main.nf b/modules/local/scanpy/leiden/main.nf new file mode 100644 index 00000000..3afa4335 --- /dev/null +++ b/modules/local/scanpy/leiden/main.nf @@ -0,0 +1,29 @@ +process SCANPY_LEIDEN { + tag "${meta.id}" + label 'process_medium' + + container "community.wave.seqera.io/library/harmonypy_scanorama_gcc_gxx_pruned:95f731fde0b9ddef" + + input: + tuple val(meta), path(h5ad, stageAs: "input.h5ad") + val resolution + val key_added + + output: + tuple val(meta), path("${prefix}.h5ad"), emit: adata + path "versions.yml" , emit: versions, topic: versions + + when: + task.ext.when == null || task.ext.when + + script: + prefix = task.ext.prefix ?: "${meta.id}" + template 'leiden.py' + + stub: + prefix = task.ext.prefix ?: "${meta.id}" + """ + touch ${prefix}.h5ad + touch versions.yml + """ +} diff --git a/modules/local/scanpy/leiden/templates/leiden.py b/modules/local/scanpy/leiden/templates/leiden.py new file mode 100644 index 00000000..6ab8afe9 --- /dev/null +++ b/modules/local/scanpy/leiden/templates/leiden.py @@ -0,0 +1,95 @@ +#!/usr/bin/env python3 +""" +Perform Leiden clustering on the neighbor graph. + +Leiden is a community detection algorithm that identifies clusters of +observations based on a pre-computed neighbor graph. Results are stored +in adata.obs. +""" + +import importlib.metadata +import platform + +import anndata as ad +import scanpy as sc +import yaml + + +def perform_leiden(adata, resolution, key_added): + """ + Perform Leiden clustering on AnnData object. + + Parameters + ---------- + adata : AnnData + Annotated data matrix with neighbor graph computed. + resolution : float + Resolution parameter for clustering (higher = more clusters). + key_added : str + Key in adata.obs to store cluster labels. + + Returns + ------- + AnnData + AnnData with cluster labels in obs. + """ + if "neighbors" not in adata.uns: + raise ValueError("Neighbor graph not found; run sc.pp.neighbors first.") + + print(f"AnnData shape: {adata.shape}") + print(f"Resolution: {resolution}") + print(f"Key added: {key_added}") + + sc.tl.leiden(adata, resolution=resolution, key_added=key_added) + + n_clusters = adata.obs[key_added].nunique() + adata.uns["leiden"] = { + "resolution": resolution, + "n_clusters": n_clusters, + } + + cluster_sizes = adata.obs[key_added].value_counts().sort_index() + print(f"Found {n_clusters} clusters:") + for cluster, size in cluster_sizes.items(): + pct = size / adata.shape[0] * 100 + print(f" Cluster {cluster}: {size} obs ({pct:.1f}%)") + + return adata + + +def write_versions(process_name): + """Write software versions to a YAML file.""" + versions = { + process_name: { + "python": platform.python_version(), + "scanpy": importlib.metadata.version("scanpy"), + "anndata": importlib.metadata.version("anndata"), + "leidenalg": importlib.metadata.version("leidenalg"), + } + } + with open("versions.yml", "w") as f: + yaml.dump(versions, f) + + +def main(): + """Perform Leiden clustering on an AnnData object.""" + # Template variables + h5ad = "${h5ad}" + resolution = float("${resolution}") + key_added = "${key_added}" + output_h5ad = "${prefix}.h5ad" + process_name = "${task.process}" + + adata = ad.read_h5ad(h5ad) + print(f"Performing Leiden clustering on: {h5ad}") + + adata = perform_leiden(adata, resolution=resolution, key_added=key_added) + + adata.write_h5ad(output_h5ad) + print(f"Written AnnData with clusters to: {output_h5ad}") + + write_versions(process_name) + + +if __name__ == "__main__": + main() diff --git a/modules/local/scanpy/leiden/tests/main.nf.test b/modules/local/scanpy/leiden/tests/main.nf.test new file mode 100644 index 00000000..9dcd546f --- /dev/null +++ b/modules/local/scanpy/leiden/tests/main.nf.test @@ -0,0 +1,87 @@ +nextflow_process { + + name "Test Process SCANPY_LEIDEN" + script "../main.nf" + process "SCANPY_LEIDEN" + + tag "modules" + tag "modules_local" + tag "scanpy_leiden" + + test("homo_sapiens - h5ad") { + + setup { + run("SCANPY_NEIGHBORS") { + script "../../neighbors/main.nf" + process { + """ + input[0] = [ + [ id: 'CytAssist_11mm_FFPE_Human_Glioblastoma_2' ], file(params.modules_testdata_base_path + 'genomics/homo_sapiens/scrnaseq/h5ad/SRR28679756_filtered_matrix.h5ad', checkIfExists: true) + ] + input[1] = 15 // n_neighbors + input[2] = 50 // n_pcs + input[3] = '' // use_rep + """ + } + } + } + + when { + process { + """ + input[0] = SCANPY_NEIGHBORS.out.adata + input[1] = 1.0 // resolution + input[2] = 'clusters' // key_added + """ + } + } + + then { + assertAll( + { assert process.success }, + { assert snapshot( + process.out.versions, + anndata(process.out.adata[0][1]).yaml + ).match() } + ) + } + } + + test("homo_sapiens - h5ad - stub") { + + options "-stub" + + setup { + run("SCANPY_NEIGHBORS") { + script "../../neighbors/main.nf" + process { + """ + input[0] = [ + [ id: 'CytAssist_11mm_FFPE_Human_Glioblastoma_2' ], file(params.modules_testdata_base_path + 'genomics/homo_sapiens/scrnaseq/h5ad/SRR28679756_filtered_matrix.h5ad', checkIfExists: true) + ] + input[1] = 15 // n_neighbors + input[2] = 50 // n_pcs + input[3] = '' // use_rep + """ + } + } + } + + when { + process { + """ + input[0] = SCANPY_NEIGHBORS.out.adata + input[1] = 1.0 // resolution + input[2] = 'clusters' // key_added + """ + } + } + + then { + assertAll( + { assert process.success }, + { assert snapshot(process.out).match() } + ) + } + } +} diff --git a/modules/local/scanpy/leiden/tests/main.nf.test.snap b/modules/local/scanpy/leiden/tests/main.nf.test.snap new file mode 100644 index 00000000..33ae310b --- /dev/null +++ b/modules/local/scanpy/leiden/tests/main.nf.test.snap @@ -0,0 +1,86 @@ +{ + "homo_sapiens - h5ad": { + "content": [ + [ + "versions.yml:md5,310276833f0e291b5c85bb9b866b80bd" + ], + { + "n_obs": 12940, + "n_vars": 9887, + "obs": { + "index": "_index", + "columns": [ + "clusters", + "sample" + ] + }, + "var": { + "index": "_index", + "columns": [ + "symbols" + ] + }, + "layers": [ + "counts" + ], + "obsm": [ + "X_pca" + ], + "varm": [ + "PCs" + ], + "obsp": [ + "connectivities", + "distances" + ], + "varp": [ + + ], + "uns": [ + "clusters", + "leiden", + "neighbors", + "pca" + ] + } + ], + "timestamp": "2026-04-01T18:36:53.824544", + "meta": { + "nf-test": "0.9.5", + "nextflow": "25.10.4" + } + }, + "homo_sapiens - h5ad - stub": { + "content": [ + { + "0": [ + [ + { + "id": "CytAssist_11mm_FFPE_Human_Glioblastoma_2" + }, + "CytAssist_11mm_FFPE_Human_Glioblastoma_2.h5ad:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ], + "1": [ + "versions.yml:md5,d41d8cd98f00b204e9800998ecf8427e" + ], + "adata": [ + [ + { + "id": "CytAssist_11mm_FFPE_Human_Glioblastoma_2" + }, + "CytAssist_11mm_FFPE_Human_Glioblastoma_2.h5ad:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ], + "versions": [ + "versions.yml:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + } + ], + "timestamp": "2026-04-01T20:58:45.307828", + "meta": { + "nf-test": "0.9.5", + "nextflow": "25.10.4" + } + } +} \ No newline at end of file diff --git a/modules/local/scanpy/log1p/main.nf b/modules/local/scanpy/log1p/main.nf new file mode 100644 index 00000000..f214079a --- /dev/null +++ b/modules/local/scanpy/log1p/main.nf @@ -0,0 +1,27 @@ +process SCANPY_LOG1P { + tag "${meta.id}" + label 'process_single' + + container "community.wave.seqera.io/library/harmonypy_scanorama_gcc_gxx_pruned:95f731fde0b9ddef" + + input: + tuple val(meta), path(adata, stageAs: "input.h5ad") + + output: + tuple val(meta), path("${prefix}.h5ad"), emit: adata + path "versions.yml" , emit: versions, topic: versions + + when: + task.ext.when == null || task.ext.when + + script: + prefix = task.ext.prefix ?: "${meta.id}" + template 'log1p.py' + + stub: + prefix = task.ext.prefix ?: "${meta.id}" + """ + touch ${prefix}.h5ad + touch versions.yml + """ +} diff --git a/modules/local/scanpy/log1p/templates/log1p.py b/modules/local/scanpy/log1p/templates/log1p.py new file mode 100644 index 00000000..bdbd0ae0 --- /dev/null +++ b/modules/local/scanpy/log1p/templates/log1p.py @@ -0,0 +1,73 @@ +#!/usr/bin/env python3 +""" +Apply log(1+x) transformation to the data matrix. +""" + +import importlib.metadata +import platform + +import anndata as ad +import scanpy as sc +import yaml + + +def log_transform(adata): + """ + Apply log1p transformation to AnnData object. + + Parameters + ---------- + adata : AnnData + Annotated data matrix (typically normalized counts). + + Returns + ------- + AnnData + Log-transformed AnnData. + """ + print(f"AnnData shape: {adata.shape}") + + sc.pp.log1p(adata) + + if "normalization" not in adata.uns: + adata.uns["normalization"] = {} + adata.uns["normalization"]["log1p"] = True + + print("Applied log(1+x) transformation") + + return adata + + +def write_versions(process_name): + """Write software versions to a YAML file.""" + versions = { + process_name: { + "python": platform.python_version(), + "scanpy": importlib.metadata.version("scanpy"), + "anndata": importlib.metadata.version("anndata"), + } + } + with open("versions.yml", "w") as f: + yaml.dump(versions, f) + + +def main(): + """Apply log1p transformation to an AnnData object.""" + # Template variables + h5ad = "${adata}" + output_h5ad = "${prefix}.h5ad" + process_name = "${task.process}" + + adata = ad.read_h5ad(h5ad) + print(f"Log-transforming AnnData from: {h5ad}") + + adata = log_transform(adata) + + adata.write_h5ad(output_h5ad) + print(f"Written log-transformed AnnData to: {output_h5ad}") + + write_versions(process_name) + + +if __name__ == "__main__": + main() diff --git a/modules/local/scanpy/log1p/tests/main.nf.test b/modules/local/scanpy/log1p/tests/main.nf.test new file mode 100644 index 00000000..a82fdf1e --- /dev/null +++ b/modules/local/scanpy/log1p/tests/main.nf.test @@ -0,0 +1,55 @@ +nextflow_process { + + name "Test Process SCANPY_LOG1P" + script "../main.nf" + process "SCANPY_LOG1P" + + tag "modules" + tag "modules_local" + tag "scanpy_log1p" + + test("homo_sapiens - h5ad") { + + when { + process { + """ + input[0] = [ + [ id: 'CytAssist_11mm_FFPE_Human_Glioblastoma_2' ], file(params.modules_testdata_base_path + 'genomics/homo_sapiens/scrnaseq/h5ad/SRR28679756_filtered_matrix.h5ad', checkIfExists: true) + ] + """ + } + } + + then { + assertAll( + { assert process.success }, + { assert snapshot( + process.out.versions, + anndata(process.out.adata[0][1]).yaml + ).match() } + ) + } + } + + test("homo_sapiens - h5ad - stub") { + + options "-stub" + + when { + process { + """ + input[0] = [ + [ id: 'CytAssist_11mm_FFPE_Human_Glioblastoma_2' ], file(params.modules_testdata_base_path + 'genomics/homo_sapiens/scrnaseq/h5ad/SRR28679756_filtered_matrix.h5ad', checkIfExists: true) + ] + """ + } + } + + then { + assertAll( + { assert process.success }, + { assert snapshot(process.out).match() } + ) + } + } +} diff --git a/modules/local/scanpy/log1p/tests/main.nf.test.snap b/modules/local/scanpy/log1p/tests/main.nf.test.snap new file mode 100644 index 00000000..b9e651b4 --- /dev/null +++ b/modules/local/scanpy/log1p/tests/main.nf.test.snap @@ -0,0 +1,82 @@ +{ + "homo_sapiens - h5ad": { + "content": [ + [ + "versions.yml:md5,f534d0e930e0356dc8d91ac5935ce2a4" + ], + { + "n_obs": 12940, + "n_vars": 9887, + "obs": { + "index": "_index", + "columns": [ + "sample" + ] + }, + "var": { + "index": "_index", + "columns": [ + "symbols" + ] + }, + "layers": [ + "counts" + ], + "obsm": [ + + ], + "varm": [ + + ], + "obsp": [ + + ], + "varp": [ + + ], + "uns": [ + "log1p", + "normalization" + ] + } + ], + "timestamp": "2026-03-30T07:12:50.452516", + "meta": { + "nf-test": "0.9.5", + "nextflow": "25.10.4" + } + }, + "homo_sapiens - h5ad - stub": { + "content": [ + { + "0": [ + [ + { + "id": "CytAssist_11mm_FFPE_Human_Glioblastoma_2" + }, + "CytAssist_11mm_FFPE_Human_Glioblastoma_2.h5ad:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ], + "1": [ + "versions.yml:md5,d41d8cd98f00b204e9800998ecf8427e" + ], + "adata": [ + [ + { + "id": "CytAssist_11mm_FFPE_Human_Glioblastoma_2" + }, + "CytAssist_11mm_FFPE_Human_Glioblastoma_2.h5ad:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ], + "versions": [ + "versions.yml:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + } + ], + "timestamp": "2026-04-01T20:59:06.305573", + "meta": { + "nf-test": "0.9.5", + "nextflow": "25.10.4" + } + } +} \ No newline at end of file diff --git a/modules/local/scanpy/neighbors/main.nf b/modules/local/scanpy/neighbors/main.nf new file mode 100644 index 00000000..8a035a01 --- /dev/null +++ b/modules/local/scanpy/neighbors/main.nf @@ -0,0 +1,30 @@ +process SCANPY_NEIGHBORS { + tag "${meta.id}" + label 'process_medium' + + container "community.wave.seqera.io/library/harmonypy_scanorama_gcc_gxx_pruned:95f731fde0b9ddef" + + input: + tuple val(meta), path(adata, stageAs: "input.h5ad") + val n_neighbors + val n_pcs + val use_rep + + output: + tuple val(meta), path("${prefix}.h5ad"), emit: adata + path "versions.yml", emit: versions, topic: versions + + when: + task.ext.when == null || task.ext.when + + script: + prefix = task.ext.prefix ?: "${meta.id}" + template 'neighbors.py' + + stub: + prefix = task.ext.prefix ?: "${meta.id}" + """ + touch ${prefix}.h5ad + touch versions.yml + """ +} diff --git a/modules/local/scanpy/neighbors/templates/neighbors.py b/modules/local/scanpy/neighbors/templates/neighbors.py new file mode 100644 index 00000000..aefa740c --- /dev/null +++ b/modules/local/scanpy/neighbors/templates/neighbors.py @@ -0,0 +1,102 @@ +#!/usr/bin/env python3 +""" +Compute a neighborhood graph of observations. + +The neighborhood graph is the basis for clustering and UMAP visualization. +It connects each observation to its nearest neighbors in the specified +representation space (typically PCA). +""" + +# Disable OpenMP CPU topology detection for macOS compatibility +import os +os.environ["KMP_AFFINITY"] = "disabled" + +import importlib.metadata +import platform + +import anndata as ad +import scanpy as sc +import yaml + + +def compute_neighbors(adata, n_neighbors, n_pcs, use_rep): + """ + Compute neighborhood graph for AnnData object. + + Parameters + ---------- + adata : AnnData + Annotated data matrix with PCA or other representation computed. + n_neighbors : int + Number of neighbors to use. + n_pcs : int + Number of principal components to use. + use_rep : str or None + Representation to use. If None, uses either `.X` when `.n_vars < 50` or + `X_pca` otherwise. + + Returns + ------- + AnnData + AnnData with neighbor graph in obsp. + """ + print(f"AnnData shape: {adata.shape}") + print(f"Number of neighbors: {n_neighbors}") + print(f"Number of PCs: {n_pcs}") + print(f"Representation: {use_rep}") + + sc.pp.neighbors( + adata, + n_neighbors=n_neighbors, + n_pcs=n_pcs, + use_rep=use_rep + ) + + print("Computed neighbor graph:") + print(f" Connectivities shape: {adata.obsp['connectivities'].shape}") + print(f" Distances shape: {adata.obsp['distances'].shape}") + + return adata + + +def write_versions(process_name): + """Write software versions to a YAML file.""" + versions = { + process_name: { + "python": platform.python_version(), + "scanpy": importlib.metadata.version("scanpy"), + "anndata": importlib.metadata.version("anndata"), + } + } + with open("versions.yml", "w") as f: + yaml.dump(versions, f) + + +def main(): + """Compute neighborhood graph for an AnnData object.""" + # Template variables + h5ad = "${adata}" + n_neighbors = int("${n_neighbors}") + n_pcs = int("${n_pcs}") + use_rep = None if "${use_rep}".lower() in ["none", ""] else "${use_rep}" + output_h5ad = "${prefix}.h5ad" + process_name = "${task.process}" + + print(f"Computing neighbors for: {h5ad}") + adata = ad.read_h5ad(h5ad) + + adata = compute_neighbors( + adata, + n_neighbors=n_neighbors, + n_pcs=n_pcs, + use_rep=use_rep + ) + + adata.write_h5ad(output_h5ad) + print(f"Written AnnData with neighbors to: {output_h5ad}") + + write_versions(process_name) + + +if __name__ == "__main__": + main() diff --git a/modules/local/scanpy/neighbors/tests/main.nf.test b/modules/local/scanpy/neighbors/tests/main.nf.test new file mode 100644 index 00000000..05a9ebd4 --- /dev/null +++ b/modules/local/scanpy/neighbors/tests/main.nf.test @@ -0,0 +1,100 @@ +nextflow_process { + + name "Test Process SCANPY_NEIGHBORS" + script "../main.nf" + process "SCANPY_NEIGHBORS" + + tag "modules" + tag "modules_local" + tag "scanpy_neighbors" + + test("homo_sapiens - h5ad - with pca") { + + setup { + run("SCANPY_PCA") { + script "../../pca/main.nf" + process { + """ + input[0] = [ + [ id: 'CytAssist_11mm_FFPE_Human_Glioblastoma_2' ], file(params.modules_testdata_base_path + 'genomics/homo_sapiens/scrnaseq/h5ad/SRR28679756_filtered_matrix.h5ad', checkIfExists: true) + ] + input[1] = 50 // n_pcs + input[2] = false // use_highly_variable + """ + } + } + } + + when { + process { + """ + input[0] = SCANPY_PCA.out.adata + input[1] = 15 // n_neighbors + input[2] = 50 // n_pcs + input[3] = 'X_pca' // use_rep + """ + } + } + + then { + assertAll( + { assert process.success }, + { assert snapshot( + process.out.versions, + anndata(process.out.adata[0][1]).yaml + ).match() } + ) + } + } + + test("homo_sapiens - h5ad") { + + when { + process { + """ + input[0] = [ + [ id: 'CytAssist_11mm_FFPE_Human_Glioblastoma_2' ], file(params.modules_testdata_base_path + 'genomics/homo_sapiens/scrnaseq/h5ad/SRR28679756_filtered_matrix.h5ad', checkIfExists: true) + ] + input[1] = 15 // n_neighbors + input[2] = 50 // n_pcs + input[3] = '' // use_rep + """ + } + } + + then { + assertAll( + { assert process.success }, + { assert snapshot( + process.out.versions, + anndata(process.out.adata[0][1]).yaml + ).match() } + ) + } + } + + test("homo_sapiens - h5ad - stub") { + + options "-stub" + + when { + process { + """ + input[0] = [ + [ id: 'CytAssist_11mm_FFPE_Human_Glioblastoma_2' ], file(params.modules_testdata_base_path + 'genomics/homo_sapiens/scrnaseq/h5ad/SRR28679756_filtered_matrix.h5ad', checkIfExists: true) + ] + input[1] = 15 // n_neighbors + input[2] = 50 // n_pcs + input[3] = '' // use_rep + """ + } + } + + then { + assertAll( + { assert process.success }, + { assert snapshot(process.out).match() } + ) + } + } +} diff --git a/modules/local/scanpy/neighbors/tests/main.nf.test.snap b/modules/local/scanpy/neighbors/tests/main.nf.test.snap new file mode 100644 index 00000000..197af491 --- /dev/null +++ b/modules/local/scanpy/neighbors/tests/main.nf.test.snap @@ -0,0 +1,131 @@ +{ + "homo_sapiens - h5ad": { + "content": [ + [ + "versions.yml:md5,3ed02ce5d9eb07b2e974b8d7b80e7c8d" + ], + { + "n_obs": 12940, + "n_vars": 9887, + "obs": { + "index": "_index", + "columns": [ + "sample" + ] + }, + "var": { + "index": "_index", + "columns": [ + "symbols" + ] + }, + "layers": [ + "counts" + ], + "obsm": [ + "X_pca" + ], + "varm": [ + "PCs" + ], + "obsp": [ + "connectivities", + "distances" + ], + "varp": [ + + ], + "uns": [ + "neighbors", + "pca" + ] + } + ], + "timestamp": "2026-03-30T07:14:11.990987", + "meta": { + "nf-test": "0.9.5", + "nextflow": "25.10.4" + } + }, + "homo_sapiens - h5ad - stub": { + "content": [ + { + "0": [ + [ + { + "id": "CytAssist_11mm_FFPE_Human_Glioblastoma_2" + }, + "CytAssist_11mm_FFPE_Human_Glioblastoma_2.h5ad:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ], + "1": [ + "versions.yml:md5,d41d8cd98f00b204e9800998ecf8427e" + ], + "adata": [ + [ + { + "id": "CytAssist_11mm_FFPE_Human_Glioblastoma_2" + }, + "CytAssist_11mm_FFPE_Human_Glioblastoma_2.h5ad:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ], + "versions": [ + "versions.yml:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + } + ], + "timestamp": "2026-04-01T21:00:27.3532", + "meta": { + "nf-test": "0.9.5", + "nextflow": "25.10.4" + } + }, + "homo_sapiens - h5ad - with pca": { + "content": [ + [ + "versions.yml:md5,3ed02ce5d9eb07b2e974b8d7b80e7c8d" + ], + { + "n_obs": 12940, + "n_vars": 9887, + "obs": { + "index": "_index", + "columns": [ + "sample" + ] + }, + "var": { + "index": "_index", + "columns": [ + "symbols" + ] + }, + "layers": [ + "counts" + ], + "obsm": [ + "X_pca" + ], + "varm": [ + "PCs" + ], + "obsp": [ + "connectivities", + "distances" + ], + "varp": [ + + ], + "uns": [ + "neighbors", + "pca" + ] + } + ], + "timestamp": "2026-03-30T07:13:37.845151", + "meta": { + "nf-test": "0.9.5", + "nextflow": "25.10.4" + } + } +} \ No newline at end of file diff --git a/modules/local/scanpy/normalize_total/main.nf b/modules/local/scanpy/normalize_total/main.nf new file mode 100644 index 00000000..36325874 --- /dev/null +++ b/modules/local/scanpy/normalize_total/main.nf @@ -0,0 +1,28 @@ +process SCANPY_NORMALIZE_TOTAL { + tag "${meta.id}" + label 'process_single' + + container "community.wave.seqera.io/library/harmonypy_scanorama_gcc_gxx_pruned:95f731fde0b9ddef" + + input: + tuple val(meta), path(adata, stageAs: "input.h5ad") + val target_sum + + output: + tuple val(meta), path("${prefix}.h5ad"), emit: adata + path "versions.yml" , emit: versions, topic: versions + + when: + task.ext.when == null || task.ext.when + + script: + prefix = task.ext.prefix ?: "${meta.id}" + template 'normalize_total.py' + + stub: + prefix = task.ext.prefix ?: "${meta.id}" + """ + touch ${prefix}.h5ad + touch versions.yml + """ +} diff --git a/modules/local/scanpy/normalize_total/templates/normalize_total.py b/modules/local/scanpy/normalize_total/templates/normalize_total.py new file mode 100644 index 00000000..d9bf552a --- /dev/null +++ b/modules/local/scanpy/normalize_total/templates/normalize_total.py @@ -0,0 +1,93 @@ +#!/usr/bin/env python3 +""" +Normalize total counts per observation using scanpy. + +Normalizes each observation to have the same total count after normalization. +By default, uses median total counts as the target sum. +""" + +import importlib.metadata +import platform + +import anndata as ad +import scanpy as sc +import yaml + + +def normalize_adata(adata, target_sum): + """ + Normalize total counts per observation. + + Parameters + ---------- + adata : AnnData + Annotated data matrix. + target_sum : int or None + Target total counts per observation. If None, uses median. + + Returns + ------- + AnnData + Normalized AnnData. + """ + print(f"AnnData shape: {adata.shape}") + print(f"Target sum: {target_sum if target_sum else 'median of total counts'}") + + # Calculate pre-normalization statistics + if "total_counts" in adata.obs: + median_before = adata.obs["total_counts"].median() + print(f"Median total counts before normalization: {median_before:.2f}") + + sc.pp.normalize_total(adata, target_sum=target_sum, inplace=True) + + # Calculate post-normalization statistics + if "total_counts" in adata.obs: + if hasattr(adata.X, 'A1'): + adata.obs["total_counts_normalized"] = adata.X.sum(axis=1).A1 + else: + adata.obs["total_counts_normalized"] = adata.X.sum(axis=1) + median_counts_after = adata.obs["total_counts_normalized"].median() + print(f"Median total counts after normalization: {median_counts_after:.2f}") + + adata.uns["normalization"] = { + "method": "normalize_total", + "target_sum": target_sum if target_sum else "median", + } + + return adata + + +def write_versions(process_name): + """Write software versions to a YAML file.""" + versions = { + process_name: { + "python": platform.python_version(), + "anndata": importlib.metadata.version("anndata"), + "scanpy": importlib.metadata.version("scanpy"), + } + } + with open("versions.yml", "w") as f: + yaml.dump(versions, f) + + +def main(): + """Normalize total counts in an AnnData object.""" + # Template variables + h5ad = "${adata}" + target_sum = None if int("${target_sum}") == 0 else int("${target_sum}") + output_h5ad = "${prefix}.h5ad" + process_name = "${task.process}" + + print(f"Normalizing AnnData from: {h5ad}") + adata = ad.read_h5ad(h5ad) + + adata = normalize_adata(adata, target_sum=target_sum) + + adata.write_h5ad(output_h5ad) + print(f"Written normalized AnnData to: {output_h5ad}") + + write_versions(process_name) + + +if __name__ == "__main__": + main() diff --git a/modules/local/scanpy/normalize_total/tests/main.nf.test b/modules/local/scanpy/normalize_total/tests/main.nf.test new file mode 100644 index 00000000..f68ace85 --- /dev/null +++ b/modules/local/scanpy/normalize_total/tests/main.nf.test @@ -0,0 +1,57 @@ +nextflow_process { + + name "Test Process SCANPY_NORMALIZE_TOTAL" + script "../main.nf" + process "SCANPY_NORMALIZE_TOTAL" + + tag "modules" + tag "modules_local" + tag "scanpy_normalize_total" + + test("homo_sapiens - h5ad") { + + when { + process { + """ + input[0] = [ + [ id: 'CytAssist_11mm_FFPE_Human_Glioblastoma_2' ], file(params.modules_testdata_base_path + 'genomics/homo_sapiens/scrnaseq/h5ad/SRR28679756_filtered_matrix.h5ad', checkIfExists: true) + ] + input[1] = 10000 // target_sum + """ + } + } + + then { + assertAll( + { assert process.success }, + { assert snapshot( + process.out.versions, + anndata(process.out.adata[0][1]).yaml + ).match() } + ) + } + } + + test("homo_sapiens - h5ad - stub") { + + options "-stub" + + when { + process { + """ + input[0] = [ + [ id: 'CytAssist_11mm_FFPE_Human_Glioblastoma_2' ], file(params.modules_testdata_base_path + 'genomics/homo_sapiens/scrnaseq/h5ad/SRR28679756_filtered_matrix.h5ad', checkIfExists: true) + ] + input[1] = 10000 // target_sum + """ + } + } + + then { + assertAll( + { assert process.success }, + { assert snapshot(process.out).match() } + ) + } + } +} diff --git a/modules/local/scanpy/normalize_total/tests/main.nf.test.snap b/modules/local/scanpy/normalize_total/tests/main.nf.test.snap new file mode 100644 index 00000000..333dc098 --- /dev/null +++ b/modules/local/scanpy/normalize_total/tests/main.nf.test.snap @@ -0,0 +1,81 @@ +{ + "homo_sapiens - h5ad": { + "content": [ + [ + "versions.yml:md5,76284d81803fab43f0ae80b07e38f742" + ], + { + "n_obs": 12940, + "n_vars": 9887, + "obs": { + "index": "_index", + "columns": [ + "sample" + ] + }, + "var": { + "index": "_index", + "columns": [ + "symbols" + ] + }, + "layers": [ + "counts" + ], + "obsm": [ + + ], + "varm": [ + + ], + "obsp": [ + + ], + "varp": [ + + ], + "uns": [ + "normalization" + ] + } + ], + "timestamp": "2026-03-30T07:14:34.787297", + "meta": { + "nf-test": "0.9.5", + "nextflow": "25.10.4" + } + }, + "homo_sapiens - h5ad - stub": { + "content": [ + { + "0": [ + [ + { + "id": "CytAssist_11mm_FFPE_Human_Glioblastoma_2" + }, + "CytAssist_11mm_FFPE_Human_Glioblastoma_2.h5ad:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ], + "1": [ + "versions.yml:md5,d41d8cd98f00b204e9800998ecf8427e" + ], + "adata": [ + [ + { + "id": "CytAssist_11mm_FFPE_Human_Glioblastoma_2" + }, + "CytAssist_11mm_FFPE_Human_Glioblastoma_2.h5ad:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ], + "versions": [ + "versions.yml:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + } + ], + "timestamp": "2026-04-01T21:00:51.158417", + "meta": { + "nf-test": "0.9.5", + "nextflow": "25.10.4" + } + } +} \ No newline at end of file diff --git a/modules/local/scanpy/pca/main.nf b/modules/local/scanpy/pca/main.nf new file mode 100644 index 00000000..87548d32 --- /dev/null +++ b/modules/local/scanpy/pca/main.nf @@ -0,0 +1,29 @@ +process SCANPY_PCA { + tag "${meta.id}" + label 'process_medium' + + container "community.wave.seqera.io/library/harmonypy_scanorama_gcc_gxx_pruned:95f731fde0b9ddef" + + input: + tuple val(meta), path(adata, stageAs: "input.h5ad") + val n_pcs + val use_highly_variable + + output: + tuple val(meta), path("${prefix}.h5ad"), emit: adata + path "versions.yml" , emit: versions, topic: versions + + when: + task.ext.when == null || task.ext.when + + script: + prefix = task.ext.prefix ?: "${meta.id}" + template 'pca.py' + + stub: + prefix = task.ext.prefix ?: "${meta.id}" + """ + touch ${prefix}.h5ad + touch versions.yml + """ +} diff --git a/modules/local/scanpy/pca/templates/pca.py b/modules/local/scanpy/pca/templates/pca.py new file mode 100644 index 00000000..31222d3e --- /dev/null +++ b/modules/local/scanpy/pca/templates/pca.py @@ -0,0 +1,115 @@ +#!/usr/bin/env python3 +""" +Perform Principal Component Analysis (PCA) for dimensionality reduction. + +PCA reduces the dimensionality of the data while preserving the most +important variation. The results are stored in obsm["X_pca"] and are +used for downstream neighbor computation and visualization. +""" + +# Disable OpenMP CPU topology detection for macOS compatibility +import os +os.environ["KMP_AFFINITY"] = "disabled" + +import importlib.metadata +import platform + +import anndata as ad +import scanpy as sc +import yaml + + +def perform_pca(adata, n_comps, use_highly_variable): + """ + Perform PCA on AnnData object. + + Parameters + ---------- + adata : AnnData + Annotated data matrix. + n_comps : int + Number of principal components to compute. + use_highly_variable : bool + Whether to use only highly variable genes. + + Returns + ------- + AnnData + AnnData with PCA results in obsm["X_pca"]. + """ + print(f"AnnData shape: {adata.shape}") + print(f"Number of components: {n_comps}") + print(f"Use highly variable genes: {use_highly_variable}") + + has_hvg = "highly_variable" in adata.var.columns + + if use_highly_variable and not has_hvg: + raise ValueError("Highly variable genes not found in adata.var.") + + if use_highly_variable and has_hvg: + n_hvgs = adata.var["highly_variable"].sum() + print(f"Using {n_hvgs} highly variable genes for PCA") + + sc.pp.pca( + adata, + n_comps=n_comps, + use_highly_variable=use_highly_variable and has_hvg, + ) + + print_variance_summary(adata, n_comps) + + return adata + + +def print_variance_summary(adata, n_comps): + """Print summary of variance explained by principal components.""" + variance_ratio = adata.uns["pca"]["variance_ratio"] + cumulative_variance = variance_ratio.cumsum() + + print("Variance explained:") + for n in [10, 20, 50]: + if n <= n_comps: + print(f" First {n} PCs: {cumulative_variance[n - 1]:.2%}") + + print(f" All {n_comps} PCs: {cumulative_variance[-1]:.2%}") + + +def write_versions(process_name): + """Write software versions to a YAML file.""" + versions = { + process_name: { + "python": platform.python_version(), + "scanpy": importlib.metadata.version("scanpy"), + "anndata": importlib.metadata.version("anndata"), + } + } + with open("versions.yml", "w") as f: + yaml.dump(versions, f) + + +def main(): + """Perform PCA on an AnnData object.""" + # Template variables + h5ad = "${adata}" + n_comps = int("${n_pcs}") + use_highly_variable = "${use_highly_variable}".lower() == "true" + output_h5ad = "${prefix}.h5ad" + process_name = "${task.process}" + + adata = ad.read_h5ad(h5ad) + print(f"Performing PCA on: {h5ad}") + + adata = perform_pca( + adata, + n_comps=n_comps, + use_highly_variable=use_highly_variable + ) + + adata.write_h5ad(output_h5ad) + print(f"Written AnnData with PCA to: {output_h5ad}") + + write_versions(process_name) + + +if __name__ == "__main__": + main() diff --git a/modules/local/scanpy/pca/tests/main.nf.test b/modules/local/scanpy/pca/tests/main.nf.test new file mode 100644 index 00000000..4cef67f9 --- /dev/null +++ b/modules/local/scanpy/pca/tests/main.nf.test @@ -0,0 +1,126 @@ +nextflow_process { + + name "Test Process SCANPY_PCA" + script "../main.nf" + process "SCANPY_PCA" + + tag "modules" + tag "modules_local" + tag "scanpy_pca" + + test("homo_sapiens - h5ad - with highly variable genes") { + + setup { + run("SCANPY_LOG1P") { + script "../../log1p/main.nf" + process { + """ + input[0] = [ + [ id: 'CytAssist_11mm_FFPE_Human_Glioblastoma_2' ], file(params.modules_testdata_base_path + 'genomics/homo_sapiens/scrnaseq/h5ad/SRR28679756_filtered_matrix.h5ad', checkIfExists: true) + ] + """ + } + } + run("SCANPY_HIGHLY_VARIABLE_GENES") { + script "../../highly_variable_genes/main.nf" + process { + """ + input[0] = SCANPY_LOG1P.out.adata + input[1] = 2000 // n_hvgs + input[2] = 'seurat' // flavor + """ + } + } + } + + when { + process { + """ + input[0] = SCANPY_HIGHLY_VARIABLE_GENES.out.adata + input[1] = 50 // n_pcs + input[2] = true // use_highly_variable + """ + } + } + + then { + assertAll( + { assert process.success }, + { assert snapshot( + process.out.versions, + anndata(process.out.adata[0][1]).yaml + ).match() } + ) + } + } + + test("homo_sapiens - h5ad") { + + when { + process { + """ + input[0] = [ + [ id: 'CytAssist_11mm_FFPE_Human_Glioblastoma_2' ], file(params.modules_testdata_base_path + 'genomics/homo_sapiens/scrnaseq/h5ad/SRR28679756_filtered_matrix.h5ad', checkIfExists: true) + ] + input[1] = 50 // n_pcs + input[2] = false // use_highly_variable + """ + } + } + + then { + assertAll( + { assert process.success }, + { assert snapshot( + process.out.versions, + anndata(process.out.adata[0][1]).yaml + ).match() } + ) + } + } + + test("homo_sapiens - h5ad - should fail without HVGs when use_highly_variable is true") { + + when { + process { + """ + input[0] = [ + [ id: 'CytAssist_11mm_FFPE_Human_Glioblastoma_2' ], file(params.modules_testdata_base_path + 'genomics/homo_sapiens/scrnaseq/h5ad/SRR28679756_filtered_matrix.h5ad', checkIfExists: true) + ] + input[1] = 50 // n_pcs + input[2] = true // use_highly_variable + """ + } + } + + then { + assertAll( + { assert process.failed } + ) + } + } + + test("homo_sapiens - h5ad - stub") { + + options "-stub" + + when { + process { + """ + input[0] = [ + [ id: 'CytAssist_11mm_FFPE_Human_Glioblastoma_2' ], file(params.modules_testdata_base_path + 'genomics/homo_sapiens/scrnaseq/h5ad/SRR28679756_filtered_matrix.h5ad', checkIfExists: true) + ] + input[1] = 50 // n_pcs + input[2] = false // use_highly_variable + """ + } + } + + then { + assertAll( + { assert process.success }, + { assert snapshot(process.out).match() } + ) + } + } +} diff --git a/modules/local/scanpy/pca/tests/main.nf.test.snap b/modules/local/scanpy/pca/tests/main.nf.test.snap new file mode 100644 index 00000000..639d5835 --- /dev/null +++ b/modules/local/scanpy/pca/tests/main.nf.test.snap @@ -0,0 +1,134 @@ +{ + "homo_sapiens - h5ad - with highly variable genes": { + "content": [ + [ + "versions.yml:md5,72a45b1aedaf9f2f5dcedffc73b2a79b" + ], + { + "n_obs": 12940, + "n_vars": 9887, + "obs": { + "index": "_index", + "columns": [ + "sample" + ] + }, + "var": { + "index": "_index", + "columns": [ + "dispersions", + "dispersions_norm", + "highly_variable", + "means", + "symbols" + ] + }, + "layers": [ + "counts" + ], + "obsm": [ + "X_pca" + ], + "varm": [ + "PCs" + ], + "obsp": [ + + ], + "varp": [ + + ], + "uns": [ + "hvg", + "log1p", + "normalization", + "pca" + ] + } + ], + "timestamp": "2026-03-30T07:15:04.797125", + "meta": { + "nf-test": "0.9.5", + "nextflow": "25.10.4" + } + }, + "homo_sapiens - h5ad": { + "content": [ + [ + "versions.yml:md5,72a45b1aedaf9f2f5dcedffc73b2a79b" + ], + { + "n_obs": 12940, + "n_vars": 9887, + "obs": { + "index": "_index", + "columns": [ + "sample" + ] + }, + "var": { + "index": "_index", + "columns": [ + "symbols" + ] + }, + "layers": [ + "counts" + ], + "obsm": [ + "X_pca" + ], + "varm": [ + "PCs" + ], + "obsp": [ + + ], + "varp": [ + + ], + "uns": [ + "pca" + ] + } + ], + "timestamp": "2026-03-30T07:15:15.753431", + "meta": { + "nf-test": "0.9.5", + "nextflow": "25.10.4" + } + }, + "homo_sapiens - h5ad - stub": { + "content": [ + { + "0": [ + [ + { + "id": "CytAssist_11mm_FFPE_Human_Glioblastoma_2" + }, + "CytAssist_11mm_FFPE_Human_Glioblastoma_2.h5ad:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ], + "1": [ + "versions.yml:md5,d41d8cd98f00b204e9800998ecf8427e" + ], + "adata": [ + [ + { + "id": "CytAssist_11mm_FFPE_Human_Glioblastoma_2" + }, + "CytAssist_11mm_FFPE_Human_Glioblastoma_2.h5ad:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ], + "versions": [ + "versions.yml:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + } + ], + "timestamp": "2026-04-01T21:01:44.43347", + "meta": { + "nf-test": "0.9.5", + "nextflow": "25.10.4" + } + } +} \ No newline at end of file diff --git a/modules/local/scanpy/rank_genes_groups/main.nf b/modules/local/scanpy/rank_genes_groups/main.nf new file mode 100644 index 00000000..64489cc8 --- /dev/null +++ b/modules/local/scanpy/rank_genes_groups/main.nf @@ -0,0 +1,29 @@ +process SCANPY_RANK_GENES_GROUPS { + tag "${meta.id}" + label 'process_medium' + + container "community.wave.seqera.io/library/harmonypy_scanorama_gcc_gxx_pruned:95f731fde0b9ddef" + + input: + tuple val(meta), path(adata, stageAs: "input.h5ad") + val groupby + val method + + output: + tuple val(meta), path("${prefix}.h5ad"), emit: adata + path "versions.yml", emit: versions, topic: versions + + when: + task.ext.when == null || task.ext.when + + script: + prefix = task.ext.prefix ?: "${meta.id}" + template 'rank_genes_groups.py' + + stub: + prefix = task.ext.prefix ?: "${meta.id}" + """ + touch ${prefix}.h5ad + touch versions.yml + """ +} diff --git a/modules/local/scanpy/rank_genes_groups/templates/rank_genes_groups.py b/modules/local/scanpy/rank_genes_groups/templates/rank_genes_groups.py new file mode 100644 index 00000000..f4634a43 --- /dev/null +++ b/modules/local/scanpy/rank_genes_groups/templates/rank_genes_groups.py @@ -0,0 +1,86 @@ +#!/usr/bin/env python3 +""" +Rank genes for characterizing groups (differential expression analysis). + +Identifies marker genes for each group by comparing gene expression +between groups. Results are stored in adata.uns["rank_genes_groups"]. +""" + +# Disable OpenMP CPU topology detection for macOS compatibility +import os +os.environ["KMP_AFFINITY"] = "disabled" + +import importlib.metadata +import platform + +import anndata as ad +import scanpy as sc +import yaml + + +def rank_genes(adata, groupby, method): + """Rank genes by groups for differential expression analysis.""" + print(f"Adata shape: {adata.shape}") + print(f"Groupby: {groupby}") + print(f"Method: {method}") + + if groupby not in adata.obs.columns: + raise ValueError(f"Column '{groupby}' not found in adata.obs") + + sc.tl.rank_genes_groups( + adata, + groupby=groupby, + method=method + ) + + n_groups = adata.obs[groupby].nunique() + print(f"Computed DEGs for {n_groups} groups") + + # Print top genes per group + for group in adata.obs[groupby].unique(): + genes = sc.get.rank_genes_groups_df(adata, group=str(group)) + top_genes = genes.head(5)["names"].tolist() + print(f" Group {group} top 5: {', '.join(top_genes)}") + + return adata + + +def write_versions(process_name): + """Write software versions to a YAML file.""" + versions = { + process_name: { + "python": platform.python_version(), + "anndata": importlib.metadata.version("anndata"), + "scanpy": importlib.metadata.version("scanpy"), + } + } + with open("versions.yml", "w") as f: + yaml.dump(versions, f) + + +def main(): + """Rank genes for characterizing groups in an AnnData object.""" + # Template variables + h5ad = "${adata}" + groupby = "${groupby}" + method = "${method}" + output_adata = "${prefix}.h5ad" + process_name = "${task.process}" + + # Read AnnData + adata = ad.read_h5ad(h5ad) + print(f"Performing differential expression analysis on: {h5ad}") + + # Rank genes + adata = rank_genes(adata, groupby, method) + + # Write output + adata.write_h5ad(output_adata) + print(f"Written AnnData with DEGs to: {output_adata}") + + # Write versions + write_versions(process_name) + + +if __name__ == "__main__": + main() diff --git a/modules/local/scanpy/rank_genes_groups/tests/main.nf.test b/modules/local/scanpy/rank_genes_groups/tests/main.nf.test new file mode 100644 index 00000000..f217a591 --- /dev/null +++ b/modules/local/scanpy/rank_genes_groups/tests/main.nf.test @@ -0,0 +1,273 @@ +nextflow_process { + + name "Test Process SCANPY_RANK_GENES_GROUPS" + script "../main.nf" + process "SCANPY_RANK_GENES_GROUPS" + + tag "modules" + tag "modules_local" + tag "scanpy_rank_genes_groups" + + test("homo_sapiens - h5ad - wilcoxon") { + + setup { + run("SCANPY_NEIGHBORS") { + script "../../neighbors/main.nf" + process { + """ + input[0] = [ + [ id: 'CytAssist_11mm_FFPE_Human_Glioblastoma_2' ], file(params.modules_testdata_base_path + 'genomics/homo_sapiens/scrnaseq/h5ad/SRR28679756_filtered_matrix.h5ad', checkIfExists: true) + ] + input[1] = 15 // n_neighbors + input[2] = 50 // n_pcs + input[3] = '' // use_rep + """ + } + } + run("SCANPY_LEIDEN") { + script "../../leiden/main.nf" + process { + """ + input[0] = SCANPY_NEIGHBORS.out.adata + input[1] = 1.0 // resolution + input[2] = 'clusters' // key_added + """ + } + } + } + + when { + process { + """ + input[0] = SCANPY_LEIDEN.out.adata + input[1] = 'clusters' // groupby + input[2] = 'wilcoxon' // method + """ + } + } + + then { + assertAll( + { assert process.success }, + { assert snapshot( + process.out.versions, + anndata(process.out.adata[0][1]).yaml + ).match() } + ) + } + } + + test("homo_sapiens - h5ad - t-test") { + + setup { + run("SCANPY_NEIGHBORS") { + script "../../neighbors/main.nf" + process { + """ + input[0] = [ + [ id: 'CytAssist_11mm_FFPE_Human_Glioblastoma_2' ], file(params.modules_testdata_base_path + 'genomics/homo_sapiens/scrnaseq/h5ad/SRR28679756_filtered_matrix.h5ad', checkIfExists: true) + ] + input[1] = 15 // n_neighbors + input[2] = 50 // n_pcs + input[3] = '' // use_rep + """ + } + } + run("SCANPY_LEIDEN") { + script "../../leiden/main.nf" + process { + """ + input[0] = SCANPY_NEIGHBORS.out.adata + input[1] = 1.0 // resolution + input[2] = 'clusters' // key_added + """ + } + } + } + + when { + process { + """ + input[0] = SCANPY_LEIDEN.out.adata + input[1] = 'clusters' // groupby + input[2] = 't-test' // method + """ + } + } + + then { + assertAll( + { assert process.success }, + { assert snapshot( + process.out.versions, + anndata(process.out.adata[0][1]).yaml + ).match() } + ) + } + } + + test("homo_sapiens - h5ad - t-test_overstim_var") { + + setup { + run("SCANPY_NEIGHBORS") { + script "../../neighbors/main.nf" + process { + """ + input[0] = [ + [ id: 'CytAssist_11mm_FFPE_Human_Glioblastoma_2' ], file(params.modules_testdata_base_path + 'genomics/homo_sapiens/scrnaseq/h5ad/SRR28679756_filtered_matrix.h5ad', checkIfExists: true) + ] + input[1] = 15 // n_neighbors + input[2] = 50 // n_pcs + input[3] = '' // use_rep + """ + } + } + run("SCANPY_LEIDEN") { + script "../../leiden/main.nf" + process { + """ + input[0] = SCANPY_NEIGHBORS.out.adata + input[1] = 1.0 // resolution + input[2] = 'clusters' // key_added + """ + } + } + } + + when { + process { + """ + input[0] = SCANPY_LEIDEN.out.adata + input[1] = 'clusters' // groupby + input[2] = 't-test_overestim_var' // method + """ + } + } + + then { + assertAll( + { assert process.success }, + { assert snapshot( + process.out.versions, + anndata(process.out.adata[0][1]).yaml + ).match() } + ) + } + } + + test("homo_sapiens - h5ad - logreg") { + + setup { + run("SCANPY_NEIGHBORS") { + script "../../neighbors/main.nf" + process { + """ + input[0] = [ + [ id: 'CytAssist_11mm_FFPE_Human_Glioblastoma_2' ], file(params.modules_testdata_base_path + 'genomics/homo_sapiens/scrnaseq/h5ad/SRR28679756_filtered_matrix.h5ad', checkIfExists: true) + ] + input[1] = 15 // n_neighbors + input[2] = 50 // n_pcs + input[3] = '' // use_rep + """ + } + } + run("SCANPY_LEIDEN") { + script "../../leiden/main.nf" + process { + """ + input[0] = SCANPY_NEIGHBORS.out.adata + input[1] = 1.0 // resolution + input[2] = 'clusters' // key_added + """ + } + } + } + + when { + process { + """ + input[0] = SCANPY_LEIDEN.out.adata + input[1] = 'clusters' // groupby + input[2] = 'logreg' // method + """ + } + } + + then { + assertAll( + { assert process.success }, + { assert snapshot( + process.out.versions, + anndata(process.out.adata[0][1]).yaml + ).match() } + ) + } + } + + test("homo_sapiens - h5ad - should fail with missing groupby column") { + + when { + process { + """ + input[0] = [ + [ id: 'CytAssist_11mm_FFPE_Human_Glioblastoma_2' ], file(params.modules_testdata_base_path + 'genomics/homo_sapiens/scrnaseq/h5ad/SRR28679756_filtered_matrix.h5ad', checkIfExists: true) + ] + input[1] = 'missing_column' // groupby + input[2] = 'wilcoxon' // method + """ + } + } + + then { + { assert process.failed } + } + } + + test("homo_sapiens - h5ad - stub") { + + options "-stub" + + setup { + run("SCANPY_NEIGHBORS") { + script "../../neighbors/main.nf" + process { + """ + input[0] = [ + [ id: 'CytAssist_11mm_FFPE_Human_Glioblastoma_2' ], file(params.modules_testdata_base_path + 'genomics/homo_sapiens/scrnaseq/h5ad/SRR28679756_filtered_matrix.h5ad', checkIfExists: true) + ] + input[1] = 15 // n_neighbors + input[2] = 50 // n_pcs + input[3] = '' // use_rep + """ + } + } + run("SCANPY_LEIDEN") { + script "../../leiden/main.nf" + process { + """ + input[0] = SCANPY_NEIGHBORS.out.adata + input[1] = 1.0 // resolution + input[2] = 'leiden' // key_added + """ + } + } + } + + when { + process { + """ + input[0] = SCANPY_LEIDEN.out.adata + input[1] = 'leiden' // groupby + input[2] = 'wilcoxon' // method + """ + } + } + + then { + assertAll( + { assert process.success }, + { assert snapshot(process.out).match() } + ) + } + } +} diff --git a/modules/local/scanpy/rank_genes_groups/tests/main.nf.test.snap b/modules/local/scanpy/rank_genes_groups/tests/main.nf.test.snap new file mode 100644 index 00000000..40be0db6 --- /dev/null +++ b/modules/local/scanpy/rank_genes_groups/tests/main.nf.test.snap @@ -0,0 +1,243 @@ +{ + "homo_sapiens - h5ad - wilcoxon": { + "content": [ + [ + "versions.yml:md5,5cd8bc30e81999f69e36ed1b0d89b970" + ], + { + "n_obs": 12940, + "n_vars": 9887, + "obs": { + "index": "_index", + "columns": [ + "clusters", + "sample" + ] + }, + "var": { + "index": "_index", + "columns": [ + "symbols" + ] + }, + "layers": [ + "counts" + ], + "obsm": [ + "X_pca" + ], + "varm": [ + "PCs" + ], + "obsp": [ + "connectivities", + "distances" + ], + "varp": [ + + ], + "uns": [ + "clusters", + "leiden", + "neighbors", + "pca", + "rank_genes_groups" + ] + } + ], + "timestamp": "2026-04-01T18:43:43.425106", + "meta": { + "nf-test": "0.9.5", + "nextflow": "25.10.4" + } + }, + "homo_sapiens - h5ad - logreg": { + "content": [ + [ + "versions.yml:md5,5cd8bc30e81999f69e36ed1b0d89b970" + ], + { + "n_obs": 12940, + "n_vars": 9887, + "obs": { + "index": "_index", + "columns": [ + "clusters", + "sample" + ] + }, + "var": { + "index": "_index", + "columns": [ + "symbols" + ] + }, + "layers": [ + "counts" + ], + "obsm": [ + "X_pca" + ], + "varm": [ + "PCs" + ], + "obsp": [ + "connectivities", + "distances" + ], + "varp": [ + + ], + "uns": [ + "clusters", + "leiden", + "neighbors", + "pca", + "rank_genes_groups" + ] + } + ], + "timestamp": "2026-04-01T19:05:22.628685", + "meta": { + "nf-test": "0.9.5", + "nextflow": "25.10.4" + } + }, + "homo_sapiens - h5ad - stub": { + "content": [ + { + "0": [ + [ + { + "id": "CytAssist_11mm_FFPE_Human_Glioblastoma_2" + }, + "CytAssist_11mm_FFPE_Human_Glioblastoma_2.h5ad:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ], + "1": [ + "versions.yml:md5,d41d8cd98f00b204e9800998ecf8427e" + ], + "adata": [ + [ + { + "id": "CytAssist_11mm_FFPE_Human_Glioblastoma_2" + }, + "CytAssist_11mm_FFPE_Human_Glioblastoma_2.h5ad:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ], + "versions": [ + "versions.yml:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + } + ], + "timestamp": "2026-04-01T21:05:02.8784", + "meta": { + "nf-test": "0.9.5", + "nextflow": "25.10.4" + } + }, + "homo_sapiens - h5ad - t-test_overstim_var": { + "content": [ + [ + "versions.yml:md5,5cd8bc30e81999f69e36ed1b0d89b970" + ], + { + "n_obs": 12940, + "n_vars": 9887, + "obs": { + "index": "_index", + "columns": [ + "clusters", + "sample" + ] + }, + "var": { + "index": "_index", + "columns": [ + "symbols" + ] + }, + "layers": [ + "counts" + ], + "obsm": [ + "X_pca" + ], + "varm": [ + "PCs" + ], + "obsp": [ + "connectivities", + "distances" + ], + "varp": [ + + ], + "uns": [ + "clusters", + "leiden", + "neighbors", + "pca", + "rank_genes_groups" + ] + } + ], + "timestamp": "2026-04-01T18:50:35.543846", + "meta": { + "nf-test": "0.9.5", + "nextflow": "25.10.4" + } + }, + "homo_sapiens - h5ad - t-test": { + "content": [ + [ + "versions.yml:md5,5cd8bc30e81999f69e36ed1b0d89b970" + ], + { + "n_obs": 12940, + "n_vars": 9887, + "obs": { + "index": "_index", + "columns": [ + "clusters", + "sample" + ] + }, + "var": { + "index": "_index", + "columns": [ + "symbols" + ] + }, + "layers": [ + "counts" + ], + "obsm": [ + "X_pca" + ], + "varm": [ + "PCs" + ], + "obsp": [ + "connectivities", + "distances" + ], + "varp": [ + + ], + "uns": [ + "clusters", + "leiden", + "neighbors", + "pca", + "rank_genes_groups" + ] + } + ], + "timestamp": "2026-04-01T18:44:25.651553", + "meta": { + "nf-test": "0.9.5", + "nextflow": "25.10.4" + } + } +} \ No newline at end of file diff --git a/modules/local/scanpy/scanorama/main.nf b/modules/local/scanpy/scanorama/main.nf new file mode 100644 index 00000000..02e1959c --- /dev/null +++ b/modules/local/scanpy/scanorama/main.nf @@ -0,0 +1,29 @@ +process SCANPY_SCANORAMA { + tag "${prefix}" + label 'process_medium' + + container "community.wave.seqera.io/library/harmonypy_scanorama_gcc_gxx_pruned:95f731fde0b9ddef" + + input: + path h5ad + val key + val embedding_added + + output: + path "${prefix}.h5ad", emit: adata + path "versions.yml" , emit: versions, topic: versions + + when: + task.ext.when == null || task.ext.when + + script: + prefix = task.ext.prefix ?: "merged" + template 'scanorama.py' + + stub: + prefix = task.ext.prefix ?: "merged" + """ + touch ${prefix}.h5ad + touch versions.yml + """ +} diff --git a/modules/local/scanpy/scanorama/templates/scanorama.py b/modules/local/scanpy/scanorama/templates/scanorama.py new file mode 100644 index 00000000..83fe74cf --- /dev/null +++ b/modules/local/scanpy/scanorama/templates/scanorama.py @@ -0,0 +1,98 @@ +#!/usr/bin/env python3 +""" +Integrate AnnData objects using Scanorama. + +Scanorama is an algorithm for integrating single-cell data from multiple +batches by identifying and merging shared cell types across datasets. +""" + +# Disable OpenMP CPU topology detection for macOS compatibility +import os +os.environ["KMP_AFFINITY"] = "disabled" + +import importlib.metadata +import platform + +import anndata as ad +import scanpy.external as sce +import scipy.sparse as sp +import yaml + + +def integrate_scanorama(adata, key, adjusted_basis): + """ + Integrate observations using Scanorama. + + Parameters + ---------- + adata : AnnData + Annotated data matrix. + key : str + Column in adata.obs containing batch/sample labels. + adjusted_basis : str + Name of the obsm key to store the integrated embedding. + + Returns + ------- + AnnData + AnnData with integrated embedding in obsm. + """ + if key not in adata.obs.columns: + raise ValueError(f"Integration key '{key}' not found in adata.obs.") + + if "X_pca" not in adata.obsm: + raise ValueError( + "PCA not found in adata.obsm; run PCA before integration." + ) + + + # Convert to CSR format (if applicable; required by Scanorama) + if sp.issparse(adata.X) and not isinstance(adata.X, sp.csr_matrix): + print("Converting to CSR data format") + adata.X = adata.X.tocsr() + + n_batches = adata.obs[key].nunique() + print(f"Integrating {n_batches} batches using key: {key}") + + sce.pp.scanorama_integrate(adata, key=key, adjusted_basis=adjusted_basis) + + return adata + + +def write_versions(process_name): + """Write software versions to a YAML file.""" + versions = { + process_name: { + "python": platform.python_version(), + "anndata": importlib.metadata.version("anndata"), + "scanorama": importlib.metadata.version("scanorama"), + "scanpy": importlib.metadata.version("scanpy"), + } + } + with open("versions.yml", "w") as f: + yaml.dump(versions, f) + + +def main(): + """Integrate observations in an AnnData object using Scanorama.""" + # Template variables + h5ad = "${h5ad}" + key = "${key}" + adjusted_basis = "${embedding_added}" + output_h5ad = "${prefix}.h5ad" + process_name = "${task.process}" + + adata = ad.read_h5ad(h5ad) + print(f"Read AnnData object: {h5ad}") + print(f"AnnData shape: {adata.shape}") + + adata = integrate_scanorama(adata, key=key, adjusted_basis=adjusted_basis) + + adata.write_h5ad(output_h5ad) + print(f"Written integrated AnnData to: {output_h5ad}") + + write_versions(process_name) + + +if __name__ == "__main__": + main() diff --git a/modules/local/scanpy/scanorama/tests/main.nf.test b/modules/local/scanpy/scanorama/tests/main.nf.test new file mode 100644 index 00000000..30e771f7 --- /dev/null +++ b/modules/local/scanpy/scanorama/tests/main.nf.test @@ -0,0 +1,171 @@ +nextflow_process { + + name "Test Process SCANPY_SCANORAMA" + script "../main.nf" + process "SCANPY_SCANORAMA" + + tag "modules" + tag "modules_local" + tag "scanpy_scanorama" + + test("homo_sapiens - h5ad") { + + setup { + run("SCANPY_PCA") { + script "../../pca/main.nf" + process { + """ + input[0] = channel.fromList([ + tuple([ id: 'CytAssist_11mm_FFPE_Human_Glioblastoma_2' ], file(params.modules_testdata_base_path + 'genomics/homo_sapiens/scrnaseq/h5ad/SRR28679756_filtered_matrix.h5ad', checkIfExists: true)), + tuple([ id: 'CytAssist_11mm_FFPE_Human_Glioblastoma_2.2' ], file(params.modules_testdata_base_path + 'genomics/homo_sapiens/scrnaseq/h5ad/SRR28679759_filtered_matrix.h5ad', checkIfExists: true)) + ]) + input[1] = 50 // n_pcs + input[2] = false // use_highly_variable + """ + } + } + run("ADATA_MERGE") { + script "../../../adata/merge/main.nf" + process { + """ + input[0] = SCANPY_PCA.out.adata + .map { _meta, h5ad -> h5ad } + .collect() + input[1] = 'inner' // join + input[2] = 'library_id' // label + input[3] = false // preserve_var + input[4] = false // preserve_spatial + """ + } + } + } + + when { + process { + """ + input[0] = ADATA_MERGE.out.adata + input[1] = 'library_id' // key + input[2] = 'X_scanorama' // embedding_added + """ + } + } + + then { + assertAll( + { assert process.success }, + { assert snapshot( + process.out.versions, + anndata(process.out.adata[0]).yaml + ).match() } + ) + } + } + + test("homo_sapiens - h5ad - should fail without PCA") { + + setup { + run("ADATA_MERGE") { + script "../../../adata/merge/main.nf" + process { + """ + input[0] = channel.fromList([ + tuple([ id: 'CytAssist_11mm_FFPE_Human_Glioblastoma_2' ], file(params.modules_testdata_base_path + 'genomics/homo_sapiens/scrnaseq/h5ad/SRR28679756_filtered_matrix.h5ad', checkIfExists: true)), + tuple([ id: 'CytAssist_11mm_FFPE_Human_Glioblastoma_2.2' ], file(params.modules_testdata_base_path + 'genomics/homo_sapiens/scrnaseq/h5ad/SRR28679759_filtered_matrix.h5ad', checkIfExists: true)) + ]) + .map { _meta, h5ad -> h5ad } + .collect() + input[1] = 'inner' // join + input[2] = 'library_id' // label + input[3] = false // preserve_var + input[4] = false // preserve_spatial + """ + } + } + } + + when { + process { + """ + input[0] = ADATA_MERGE.out.adata + input[1] = 'library_id' // key + input[2] = 'X_scanorama' // embedding_added + """ + } + } + + then { + { assert process.failed } + } + } + + test("homo_sapiens - h5ad - should fail with missing key") { + + when { + process { + """ + input[0] = [ + [ id: 'CytAssist_11mm_FFPE_Human_Glioblastoma_2' ], file(params.modules_testdata_base_path + 'genomics/homo_sapiens/scrnaseq/h5ad/SRR28679756_filtered_matrix.h5ad', checkIfExists: true) + ] + input[1] = 'missing_key' // key + input[2] = 'X_scanorama' // embedding_added + """ + } + } + + then { + { assert process.failed } + } + } + + test("homo_sapiens - h5ad - stub") { + + options "-stub" + + setup { + run("SCANPY_PCA") { + script "../../pca/main.nf" + process { + """ + input[0] = channel.fromList([ + tuple([ id: 'CytAssist_11mm_FFPE_Human_Glioblastoma_2' ], file(params.modules_testdata_base_path + 'genomics/homo_sapiens/scrnaseq/h5ad/SRR28679756_filtered_matrix.h5ad', checkIfExists: true)), + tuple([ id: 'CytAssist_11mm_FFPE_Human_Glioblastoma_2.2' ], file(params.modules_testdata_base_path + 'genomics/homo_sapiens/scrnaseq/h5ad/SRR28679759_filtered_matrix.h5ad', checkIfExists: true)) + ]) + input[1] = 50 // n_pcs + input[2] = false // use_highly_variable + """ + } + } + run("ADATA_MERGE") { + script "../../../adata/merge/main.nf" + process { + """ + input[0] = SCANPY_PCA.out.adata + .map { _meta, h5ad -> h5ad } + .collect() + input[1] = 'inner' // join + input[2] = 'library_id' // label + input[3] = false // preserve_var + input[4] = false // preserve_spatial + """ + } + } + } + + when { + process { + """ + input[0] = ADATA_MERGE.out.adata + input[1] = 'library_id' // key + input[2] = 'X_scanorama' // embedding_added + """ + } + } + + then { + assertAll( + { assert process.success }, + { assert snapshot(process.out).match() } + ) + } + } +} diff --git a/modules/local/scanpy/scanorama/tests/main.nf.test.snap b/modules/local/scanpy/scanorama/tests/main.nf.test.snap new file mode 100644 index 00000000..1e912818 --- /dev/null +++ b/modules/local/scanpy/scanorama/tests/main.nf.test.snap @@ -0,0 +1,73 @@ +{ + "homo_sapiens - h5ad": { + "content": [ + [ + "versions.yml:md5,e38ec89768de8bf84a68a506577d0e4e" + ], + { + "n_obs": 20313, + "n_vars": 9887, + "obs": { + "index": "_index", + "columns": [ + "library_id", + "sample" + ] + }, + "var": { + "index": "_index", + "columns": [ + + ] + }, + "layers": [ + + ], + "obsm": [ + "X_pca", + "X_scanorama" + ], + "varm": [ + + ], + "obsp": [ + + ], + "varp": [ + + ], + "uns": [ + "merge" + ] + } + ], + "timestamp": "2026-04-02T19:49:00.438807", + "meta": { + "nf-test": "0.9.5", + "nextflow": "25.10.4" + } + }, + "homo_sapiens - h5ad - stub": { + "content": [ + { + "0": [ + "merged.h5ad:md5,d41d8cd98f00b204e9800998ecf8427e" + ], + "1": [ + "versions.yml:md5,d41d8cd98f00b204e9800998ecf8427e" + ], + "adata": [ + "merged.h5ad:md5,d41d8cd98f00b204e9800998ecf8427e" + ], + "versions": [ + "versions.yml:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + } + ], + "timestamp": "2026-03-25T16:14:49.176187", + "meta": { + "nf-test": "0.9.5", + "nextflow": "25.10.4" + } + } +} \ No newline at end of file diff --git a/modules/local/scanpy/umap/main.nf b/modules/local/scanpy/umap/main.nf new file mode 100644 index 00000000..465522ae --- /dev/null +++ b/modules/local/scanpy/umap/main.nf @@ -0,0 +1,30 @@ +process SCANPY_UMAP { + tag "${meta.id}" + label 'process_medium' + + container "community.wave.seqera.io/library/harmonypy_scanorama_gcc_gxx_pruned:95f731fde0b9ddef" + + input: + tuple val(meta), path(adata, stageAs: "input.h5ad") + val min_dist + val spread + val key_added + + output: + tuple val(meta), path("${prefix}.h5ad"), emit: adata + path "versions.yml" , emit: versions, topic: versions + + when: + task.ext.when == null || task.ext.when + + script: + prefix = task.ext.prefix ?: "${meta.id}" + template 'umap.py' + + stub: + prefix = task.ext.prefix ?: "${meta.id}" + """ + touch ${prefix}.h5ad + touch versions.yml + """ +} diff --git a/modules/local/scanpy/umap/templates/umap.py b/modules/local/scanpy/umap/templates/umap.py new file mode 100644 index 00000000..00544bf6 --- /dev/null +++ b/modules/local/scanpy/umap/templates/umap.py @@ -0,0 +1,85 @@ +#!/usr/bin/env python3 +""" +Compute UMAP (Uniform Manifold Approximation and Projection) embedding. +""" + +# Disable OpenMP CPU topology detection for macOS compatibility +import os +os.environ["KMP_AFFINITY"] = "disabled" + +import importlib.metadata +import platform + +import anndata as ad +import scanpy as sc +import yaml + + +def compute_umap(adata, min_dist, spread, key_added): + """Compute UMAP embedding for AnnData object.""" + print(f"AnnData shape: {adata.shape}") + print(f"Parameters: min_dist={min_dist}, spread={spread}") + + if "neighbors" not in adata.uns: + raise ValueError( + "Neighbor graph not found; run scanpy.pp.neighbors first." + ) + + # Compute UMAP + sc.tl.umap( + adata, + min_dist=min_dist, + spread=spread, + key_added=key_added + ) + + # Print summary + print(f"UMAP embedding shape: {adata.obsm[key_added].shape}") + print("UMAP coordinate ranges:") + embedding = adata.obsm[key_added] + print(f" UMAP1: [{embedding[:, 0].min():.2f}, {embedding[:, 0].max():.2f}]") + print(f" UMAP2: [{embedding[:, 1].min():.2f}, {embedding[:, 1].max():.2f}]") + + return adata + + +def write_versions(process_name): + """Write software versions to a YAML file.""" + versions = { + process_name: { + "python": platform.python_version(), + "anndata": importlib.metadata.version("anndata"), + "scanpy": importlib.metadata.version("scanpy"), + } + } + with open("versions.yml", "w") as f: + yaml.dump(versions, f) + + +def main(): + """Compute UMAP embedding for an AnnData object.""" + # Template variables + h5ad = "${adata}" + min_dist = float("${min_dist}") + spread = float("${spread}") + key_added = "${key_added}" + output_adata = "${prefix}.h5ad" + process_name = "${task.process}" + + # Read AnnData + print(f"Computing UMAP for: {h5ad}") + adata = ad.read_h5ad(h5ad) + + # Compute UMAP + adata = compute_umap(adata, min_dist, spread, key_added) + + # Write output + adata.write_h5ad(output_adata) + print(f"Written AnnData with UMAP to: {output_adata}") + + # Write versions + write_versions(process_name) + + +if __name__ == "__main__": + main() diff --git a/modules/local/scanpy/umap/tests/main.nf.test b/modules/local/scanpy/umap/tests/main.nf.test new file mode 100644 index 00000000..d302dc1c --- /dev/null +++ b/modules/local/scanpy/umap/tests/main.nf.test @@ -0,0 +1,147 @@ +nextflow_process { + + name "Test Process SCANPY_UMAP" + script "../main.nf" + process "SCANPY_UMAP" + + tag "modules" + tag "modules_local" + tag "scanpy_umap" + + test("homo_sapiens - h5ad") { + + // Including multiple updstream modules greatly reduces computation + // time, even though it's technically not needed + setup { + run("SCANPY_LOG1P") { + script "../../log1p/main.nf" + process { + """ + input[0] = [ + [ id: 'CytAssist_11mm_FFPE_Human_Glioblastoma_2' ], file(params.modules_testdata_base_path + 'genomics/homo_sapiens/scrnaseq/h5ad/SRR28679756_filtered_matrix.h5ad', checkIfExists: true) + ] + """ + } + } + run("SCANPY_HIGHLY_VARIABLE_GENES") { + script "../../highly_variable_genes/main.nf" + process { + """ + input[0] = SCANPY_LOG1P.out.adata + input[1] = 2000 // n_hvgs + input[2] = 'seurat' // flavor + """ + } + } + run("SCANPY_PCA") { + script "../../pca/main.nf" + process { + """ + input[0] = SCANPY_HIGHLY_VARIABLE_GENES.out.adata + input[1] = 50 // n_pcs + input[2] = true // use_highly_variable + """ + } + } + run("SCANPY_NEIGHBORS") { + script "../../neighbors/main.nf" + process { + """ + input[0] = SCANPY_PCA.out.adata + input[1] = 15 // n_neighbors + input[2] = 50 // n_pcs + input[3] = 'X_pca' // use_rep + """ + } + } + } + + when { + process { + """ + input[0] = SCANPY_NEIGHBORS.out.adata + input[1] = 0.5 // min_dist + input[2] = 1.0 // spread + input[3] = 'X_umap' // key_added + """ + } + } + + then { + assertAll( + { assert process.success }, + { assert snapshot( + process.out.versions, + anndata(process.out.adata[0][1]).yaml + ).match() } + ) + } + } + + test("homo_sapiens - h5ad - stub") { + + options "-stub" + + setup { + run("SCANPY_LOG1P") { + script "../../log1p/main.nf" + process { + """ + input[0] = [ + [ id: 'CytAssist_11mm_FFPE_Human_Glioblastoma_2' ], file(params.modules_testdata_base_path + 'genomics/homo_sapiens/scrnaseq/h5ad/SRR28679756_filtered_matrix.h5ad', checkIfExists: true) + ] + """ + } + } + run("SCANPY_HIGHLY_VARIABLE_GENES") { + script "../../highly_variable_genes/main.nf" + process { + """ + input[0] = SCANPY_LOG1P.out.adata + input[1] = 2000 // n_hvgs + input[2] = 'seurat' // flavor + """ + } + } + run("SCANPY_PCA") { + script "../../pca/main.nf" + process { + """ + input[0] = SCANPY_HIGHLY_VARIABLE_GENES.out.adata + input[1] = 50 // n_pcs + input[2] = true // use_highly_variable + """ + } + } + run("SCANPY_NEIGHBORS") { + script "../../neighbors/main.nf" + process { + """ + input[0] = SCANPY_PCA.out.adata + input[1] = 15 // n_neighbors + input[2] = 50 // n_pcs + input[3] = 'X_pca' // use_rep + """ + } + } + } + + when { + process { + """ + input[0] = SCANPY_NEIGHBORS.out.adata + input[1] = 0.5 // min_dist + input[2] = 1.0 // spread + input[3] = 'X_umap' // key_added + """ + } + } + + then { + assertAll( + { assert process.success }, + { assert snapshot(process.out).match() } + ) + } + } +} diff --git a/modules/local/scanpy/umap/tests/main.nf.test.snap b/modules/local/scanpy/umap/tests/main.nf.test.snap new file mode 100644 index 00000000..d713e1bf --- /dev/null +++ b/modules/local/scanpy/umap/tests/main.nf.test.snap @@ -0,0 +1,92 @@ +{ + "homo_sapiens - h5ad": { + "content": [ + [ + "versions.yml:md5,644846add945175d74eb0fce068a0241" + ], + { + "n_obs": 12940, + "n_vars": 9887, + "obs": { + "index": "_index", + "columns": [ + "sample" + ] + }, + "var": { + "index": "_index", + "columns": [ + "dispersions", + "dispersions_norm", + "highly_variable", + "means", + "symbols" + ] + }, + "layers": [ + "counts" + ], + "obsm": [ + "X_pca", + "X_umap" + ], + "varm": [ + "PCs" + ], + "obsp": [ + "connectivities", + "distances" + ], + "varp": [ + + ], + "uns": [ + "X_umap", + "hvg", + "log1p", + "neighbors", + "normalization", + "pca" + ] + } + ], + "timestamp": "2026-03-30T07:21:01.367176", + "meta": { + "nf-test": "0.9.5", + "nextflow": "25.10.4" + } + }, + "homo_sapiens - h5ad - stub": { + "content": [ + { + "0": [ + [ + { + "id": "CytAssist_11mm_FFPE_Human_Glioblastoma_2" + }, + "CytAssist_11mm_FFPE_Human_Glioblastoma_2.h5ad:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ], + "1": [ + "versions.yml:md5,d41d8cd98f00b204e9800998ecf8427e" + ], + "adata": [ + [ + { + "id": "CytAssist_11mm_FFPE_Human_Glioblastoma_2" + }, + "CytAssist_11mm_FFPE_Human_Glioblastoma_2.h5ad:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ], + "versions": [ + "versions.yml:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + } + ], + "timestamp": "2026-04-01T21:07:01.668543", + "meta": { + "nf-test": "0.9.5", + "nextflow": "25.10.4" + } + } +} \ No newline at end of file diff --git a/modules/local/sdata/merge/main.nf b/modules/local/sdata/merge/main.nf new file mode 100644 index 00000000..c57e0318 --- /dev/null +++ b/modules/local/sdata/merge/main.nf @@ -0,0 +1,27 @@ +process SDATA_MERGE { + label 'process_low' + + container "community.wave.seqera.io/library/harmonypy_scanorama_gcc_gxx_pruned:95f731fde0b9ddef" + + input: + path(sdata, stageAs: "?/*") + + output: + path("${prefix}.zarr"), emit: sdata + path "versions.yml" , emit: versions, topic: versions + + when: + task.ext.when == null || task.ext.when + + script: + prefix = task.ext.prefix ?: "merged" + template 'merge.py' + + stub: + prefix = task.ext.prefix ?: "merged" + """ + mkdir -p ${prefix}.zarr + touch ${prefix}.zarr/.zgroup + touch versions.yml + """ +} diff --git a/modules/local/sdata/merge/templates/merge.py b/modules/local/sdata/merge/templates/merge.py new file mode 100644 index 00000000..e67308c8 --- /dev/null +++ b/modules/local/sdata/merge/templates/merge.py @@ -0,0 +1,65 @@ +#!/usr/bin/env python3 +""" +Merge multiple SpatialData objects into one. +""" + +import os +os.environ["KMP_AFFINITY"] = "disabled" + +import importlib.metadata +import platform + +import spatialdata +import yaml + + +def read_sdatas(file_paths): + """Read multiple SpatialData objects from Zarr directories.""" + sdata_list = [] + for file in sorted(file_paths): + print(f"Reading: {file}") + sdata = spatialdata.read_zarr(file) + sdata_list.append(sdata) + return sdata_list + + +def write_versions(process_name): + """Write software versions to a YAML file.""" + versions = { + process_name: { + "python": platform.python_version(), + "spatialdata": importlib.metadata.version("spatialdata"), + } + } + with open("versions.yml", "w") as f: + yaml.dump(versions, f) + + +def main(): + """Merge multiple SpatialData objects into one.""" + # Template variables + zarrs = "${sdata}".split() + output_zarr = "${prefix}.zarr" + process_name = "${task.process}" + + sdata_list = read_sdatas(zarrs) + print(f"Merging {len(zarrs)} SpatialData objects") + + # TODO: Should some of these be template variables that the user can change? + output_sdata = spatialdata.concatenate( + sdata_list, + region_key=None, + instance_key=None, + concatenate_tables=False, + obs_names_make_unique=True, + modify_tables_inplace=False, + ) + + output_sdata.write(output_zarr, overwrite=True) + print(f"Written merged SpatialData to: {output_zarr}") + + write_versions(process_name) + + +if __name__ == "__main__": + main() diff --git a/modules/local/sdata/merge/tests/main.nf.test b/modules/local/sdata/merge/tests/main.nf.test new file mode 100644 index 00000000..a6c4487b --- /dev/null +++ b/modules/local/sdata/merge/tests/main.nf.test @@ -0,0 +1,95 @@ +nextflow_process { + + name "Test Process SDATA_MERGE" + script "../main.nf" + process "SDATA_MERGE" + + tag "modules" + tag "modules_local" + tag "sdata_merge" + + test("homo_sapiens - zarr") { + + setup { + run("UNTAR") { + script "../../../../nf-core/untar/main.nf" + process { + """ + input[0] = channel.fromList([ + tuple([ id: 'CytAssist_11mm_FFPE_Human_Glioblastoma_2' ], file("https://raw.githubusercontent.com/fasterius/test-datasets/modules/data/spatial_omics/visium/homo_sapiens/CytAssist_11mm_FFPE_Human_Glioblastoma_2.zarr.tar.gz", checkIfExists: true)), + tuple([ id: 'CytAssist_11mm_FFPE_Human_Glioblastoma_2.2' ], file("https://raw.githubusercontent.com/fasterius/test-datasets/modules/data/spatial_omics/visium/homo_sapiens/CytAssist_11mm_FFPE_Human_Glioblastoma_2.2.zarr.tar.gz", checkIfExists: true)), + ]) + """ + } + } + } + + when { + process { + """ + input[0] = UNTAR.out.untar + .toSortedList { a, b -> a[0].id <=> b[0].id } + .flatMap { it } + .map { _meta, zarr -> zarr } + .collect() + """ + } + } + + then { + + // Names of all SpatialData (.zarr) files and directories (unstable contents) + def stable_name_zarr = getAllFilesFromDir( + process.out.sdata[0], + relative: true, + includeDir: true + ) + + assertAll( + { assert process.success }, + { assert snapshot( + process.out.versions, + stable_name_zarr + ).match() } + ) + } + } + + test("homo_sapiens - zarr - stub") { + + options "-stub" + + setup { + run("UNTAR") { + script "../../../../nf-core/untar/main.nf" + process { + """ + input[0] = channel.fromList([ + tuple([ id: 'CytAssist_11mm_FFPE_Human_Glioblastoma_2' ], file("https://raw.githubusercontent.com/fasterius/test-datasets/modules/data/spatial_omics/visium/homo_sapiens/CytAssist_11mm_FFPE_Human_Glioblastoma_2.zarr.tar.gz", checkIfExists: true)), + tuple([ id: 'CytAssist_11mm_FFPE_Human_Glioblastoma_2.2' ], file("https://raw.githubusercontent.com/fasterius/test-datasets/modules/data/spatial_omics/visium/homo_sapiens/CytAssist_11mm_FFPE_Human_Glioblastoma_2.2.zarr.tar.gz", checkIfExists: true)), + ]) + """ + } + } + } + + when { + process { + """ + input[0] = UNTAR.out.untar + .toSortedList { a, b -> a[0].id <=> b[0].id } + .flatMap { it } + .map { _meta, zarr -> zarr } + .collect() + """ + } + } + + then { + assertAll( + { assert process.success }, + { assert snapshot(process.out).match() } + ) + } + } +} diff --git a/modules/local/sdata/merge/tests/main.nf.test.snap b/modules/local/sdata/merge/tests/main.nf.test.snap new file mode 100644 index 00000000..58323fef --- /dev/null +++ b/modules/local/sdata/merge/tests/main.nf.test.snap @@ -0,0 +1,347 @@ +{ + "homo_sapiens - zarr": { + "content": [ + [ + "versions.yml:md5,c2f075f6ccafb0fb50b3f97e985b60f5" + ], + [ + "", + ".zattrs", + ".zgroup", + "images", + "images/.zgroup", + "images/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image", + "images/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/.zattrs", + "images/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/.zgroup", + "images/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/0", + "images/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/0/.zarray", + "images/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/0/0", + "images/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/0/0/0", + "images/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/0/0/0/0", + "images/CytAssist_11mm_FFPE_Human_Glioblastoma_22_lowres_image", + "images/CytAssist_11mm_FFPE_Human_Glioblastoma_22_lowres_image/.zattrs", + "images/CytAssist_11mm_FFPE_Human_Glioblastoma_22_lowres_image/.zgroup", + "images/CytAssist_11mm_FFPE_Human_Glioblastoma_22_lowres_image/0", + "images/CytAssist_11mm_FFPE_Human_Glioblastoma_22_lowres_image/0/.zarray", + "images/CytAssist_11mm_FFPE_Human_Glioblastoma_22_lowres_image/0/0", + "images/CytAssist_11mm_FFPE_Human_Glioblastoma_22_lowres_image/0/0/0", + "images/CytAssist_11mm_FFPE_Human_Glioblastoma_22_lowres_image/0/0/0/0", + "images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image", + "images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/.zattrs", + "images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/.zgroup", + "images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/0", + "images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/0/.zarray", + "images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/0/0", + "images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/0/0/0", + "images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/0/0/0/0", + "images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_lowres_image", + "images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_lowres_image/.zattrs", + "images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_lowres_image/.zgroup", + "images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_lowres_image/0", + "images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_lowres_image/0/.zarray", + "images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_lowres_image/0/0", + "images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_lowres_image/0/0/0", + "images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_lowres_image/0/0/0/0", + "shapes", + "shapes/.zgroup", + "shapes/CytAssist_11mm_FFPE_Human_Glioblastoma_2", + "shapes/CytAssist_11mm_FFPE_Human_Glioblastoma_2/.zattrs", + "shapes/CytAssist_11mm_FFPE_Human_Glioblastoma_2/.zgroup", + "shapes/CytAssist_11mm_FFPE_Human_Glioblastoma_2/shapes.parquet", + "shapes/CytAssist_11mm_FFPE_Human_Glioblastoma_22", + "shapes/CytAssist_11mm_FFPE_Human_Glioblastoma_22/.zattrs", + "shapes/CytAssist_11mm_FFPE_Human_Glioblastoma_22/.zgroup", + "shapes/CytAssist_11mm_FFPE_Human_Glioblastoma_22/shapes.parquet", + "tables", + "tables/.zgroup", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/.zgroup", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/X", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/X/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/X/.zgroup", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/X/data", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/X/data/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/X/data/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/X/indices", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/X/indices/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/X/indices/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/X/indptr", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/X/indptr/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/X/indptr/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/layers", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/layers/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/layers/.zgroup", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/.zgroup", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/_index", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/_index/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/_index/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/_index/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/array_col", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/array_col/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/array_col/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/array_col/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/array_row", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/array_row/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/array_row/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/array_row/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/in_tissue", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/in_tissue/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/in_tissue/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/in_tissue/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/region", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/region/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/region/.zgroup", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/region/categories", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/region/categories/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/region/categories/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/region/categories/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/region/codes", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/region/codes/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/region/codes/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/region/codes/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/spot_id", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/spot_id/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/spot_id/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/spot_id/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsm", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsm/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsm/.zgroup", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsm/spatial", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsm/spatial/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsm/spatial/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsm/spatial/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsm/spatial/0/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsp", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsp/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsp/.zgroup", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/raw", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/raw/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/raw/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/raw/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/.zgroup", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/.zgroup", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22/.zgroup", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22/metadata", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22/metadata/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22/metadata/.zgroup", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22/metadata/chemistry_description", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22/metadata/chemistry_description/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22/metadata/chemistry_description/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22/metadata/chemistry_description/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22/metadata/software_version", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22/metadata/software_version/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22/metadata/software_version/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22/metadata/software_version/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatialdata_attrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatialdata_attrs/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatialdata_attrs/.zgroup", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatialdata_attrs/instance_key", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatialdata_attrs/instance_key/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatialdata_attrs/instance_key/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatialdata_attrs/instance_key/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatialdata_attrs/region", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatialdata_attrs/region/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatialdata_attrs/region/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatialdata_attrs/region/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatialdata_attrs/region_key", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatialdata_attrs/region_key/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatialdata_attrs/region_key/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatialdata_attrs/region_key/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/.zgroup", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/_index", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/_index/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/_index/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/_index/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/feature_types", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/feature_types/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/feature_types/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/feature_types/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/gene_ids", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/gene_ids/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/gene_ids/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/gene_ids/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/genome", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/genome/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/genome/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/genome/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/varm", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/varm/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/varm/.zgroup", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/varp", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/varp/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/varp/.zgroup", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/.zgroup", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/X", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/X/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/X/.zgroup", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/X/data", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/X/data/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/X/data/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/X/indices", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/X/indices/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/X/indices/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/X/indptr", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/X/indptr/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/X/indptr/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/layers", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/layers/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/layers/.zgroup", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/.zgroup", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/_index", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/_index/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/_index/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/_index/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/array_col", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/array_col/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/array_col/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/array_col/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/array_row", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/array_row/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/array_row/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/array_row/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/in_tissue", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/in_tissue/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/in_tissue/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/in_tissue/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/region", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/region/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/region/.zgroup", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/region/categories", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/region/categories/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/region/categories/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/region/categories/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/region/codes", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/region/codes/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/region/codes/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/region/codes/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/spot_id", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/spot_id/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/spot_id/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/spot_id/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/.zgroup", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/spatial", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/spatial/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/spatial/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/spatial/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/spatial/0/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/.zgroup", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/raw", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/raw/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/raw/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/raw/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/.zgroup", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/.zgroup", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2/.zgroup", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2/metadata", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2/metadata/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2/metadata/.zgroup", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2/metadata/chemistry_description", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2/metadata/chemistry_description/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2/metadata/chemistry_description/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2/metadata/chemistry_description/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2/metadata/software_version", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2/metadata/software_version/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2/metadata/software_version/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2/metadata/software_version/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/.zgroup", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/instance_key", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/instance_key/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/instance_key/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/instance_key/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/region", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/region/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/region/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/region/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/region_key", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/region_key/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/region_key/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/region_key/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/.zgroup", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/_index", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/_index/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/_index/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/_index/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/feature_types", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/feature_types/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/feature_types/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/feature_types/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/gene_ids", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/gene_ids/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/gene_ids/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/gene_ids/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/genome", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/genome/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/genome/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/genome/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/varm", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/varm/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/varm/.zgroup", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/varp", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/varp/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/varp/.zgroup", + "zmetadata" + ] + ], + "timestamp": "2026-04-01T21:07:20.255545", + "meta": { + "nf-test": "0.9.5", + "nextflow": "25.10.4" + } + }, + "homo_sapiens - zarr - stub": { + "content": [ + { + "0": [ + [ + ".zgroup:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ], + "1": [ + "versions.yml:md5,d41d8cd98f00b204e9800998ecf8427e" + ], + "sdata": [ + [ + ".zgroup:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ], + "versions": [ + "versions.yml:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + } + ], + "timestamp": "2026-03-31T13:08:42.980055", + "meta": { + "nf-test": "0.9.5", + "nextflow": "25.10.4" + } + } +} \ No newline at end of file diff --git a/modules/local/sdata/read_visium/main.nf b/modules/local/sdata/read_visium/main.nf new file mode 100644 index 00000000..731aa416 --- /dev/null +++ b/modules/local/sdata/read_visium/main.nf @@ -0,0 +1,32 @@ +process SDATA_READ_VISIUM { + tag "${meta.id}" + label 'process_low' + + container "community.wave.seqera.io/library/harmonypy_scanorama_gcc_gxx_pruned:95f731fde0b9ddef" + + input: + tuple val(meta), path(spaceranger_dir) + val(hd_bin_size) + + output: + tuple val(meta), path("${prefix}.zarr"), emit: sdata + path "versions.yml" , emit: versions, topic: versions + + when: + task.ext.when == null || task.ext.when + + script: + if (workflow.profile.tokenize(',').intersect(['conda', 'mamba']).size() >= 1) { + exit 1, "The SDATA_READ_VISIUM module does not support Conda/Mamba, please use Docker / Singularity / Podman instead." + } + prefix = task.ext.prefix ?: "${meta.id}" + template 'read_visium.py' + + stub: + prefix = task.ext.prefix ?: "${meta.id}" + """ + mkdir -p ${prefix}.zarr + touch ${prefix}.zarr/.zgroup + touch versions.yml + """ +} diff --git a/modules/local/sdata/read_visium/templates/read_visium.py b/modules/local/sdata/read_visium/templates/read_visium.py new file mode 100644 index 00000000..1bc15ce6 --- /dev/null +++ b/modules/local/sdata/read_visium/templates/read_visium.py @@ -0,0 +1,160 @@ +#!/usr/bin/env python3 +""" +Read Visium or Visium HD data from Space Ranger output into SpatialData format. +""" + +# Disable OpenMP CPU topology detection for macOS compatibility +import os +os.environ["KMP_AFFINITY"] = "disabled" + +import importlib.metadata +import platform +import re +import shutil + +import spatialdata_io +import yaml + + +def read_visium_hd(spaceranger_dir, sample_id_clean, hd_bin_size): + """Read Visium HD data.""" + print(f"Reading Visium HD data with bin size: {hd_bin_size}") + + # Add sample ID to feature_slice, if not present + feature_slice_src = os.path.join( + spaceranger_dir, "feature_slice.h5" + ) + feature_slice_dst = os.path.join( + spaceranger_dir, f"{sample_id_clean}_feature_slice.h5" + ) + if (os.path.exists(feature_slice_src) + and not os.path.exists(feature_slice_dst)): + print(f"Copying {feature_slice_src} to {feature_slice_dst}") + shutil.copyfile(feature_slice_src, feature_slice_dst) + + sdata = spatialdata_io.visium_hd( + spaceranger_dir, + bin_size=[hd_bin_size], + dataset_id=sample_id_clean, + ) + table_name = f"square_{hd_bin_size:03d}um" + + return sdata, table_name + + +def read_visium_standard(spaceranger_dir, sample_id_clean): + """Read standard Visium data.""" + print("Reading standard Visium data") + sdata = spatialdata_io.visium( + spaceranger_dir, + counts_file="raw_feature_bc_matrix.h5", + dataset_id=sample_id_clean, + ) + table_name = "table" + return sdata, table_name + + +def read_visium_data(spaceranger_dir, sample_id_clean, hd_bin_size): + """Read Visium or Visium HD data from Space Ranger output.""" + print(f"Reading data from: {spaceranger_dir}") + print(f"Sample ID: {sample_id_clean}") + + is_hd_data = os.path.isdir(os.path.join(spaceranger_dir, "binned_outputs")) + print(f"Visium HD: {is_hd_data}") + + if is_hd_data: + sdata, table_name = read_visium_hd( + spaceranger_dir, + sample_id_clean, + hd_bin_size + ) + else: + sdata, table_name = read_visium_standard( + spaceranger_dir, + sample_id_clean + ) + + print("SpatialData object created:") + print(f" Tables: {list(sdata.tables.keys())}") + print(f" Shapes: {list(sdata.shapes.keys())}") + print(f" Images: {list(sdata.images.keys())}") + + return sdata, table_name + + +def validate_table(sdata, table_name, sample_id_clean): + """Validate table exists and process it.""" + if table_name not in sdata.tables: + raise ValueError( + f"Expected table '{table_name}' not found in SpatialData. " + f"Available tables: {list(sdata.tables.keys())}" + ) + + # Get table and print info + adata = sdata.tables[table_name] + print(f"Table '{table_name}' shape: {adata.shape}") + print(f"Number of genes: {adata.n_vars}") + print(f"Number of observations: {adata.n_obs}") + + # Remove `sample_id` metadata from table uns, if present + if sample_id_clean in adata.uns.keys(): + print(f"Removing '{sample_id_clean}' from table uns") + del adata.uns[sample_id_clean] + + adata.var_names_make_unique() + + # Rename table to include sample ID + new_table_name = f"{sample_id_clean}_table" + if table_name != new_table_name: + print(f"Renaming table: '{table_name}' -> '{new_table_name}'") + sdata.tables[new_table_name] = adata + del sdata.tables[table_name] + + # Validate final table + final_table = sdata.tables[new_table_name] + print(f"Final table '{new_table_name}' shape: {final_table.shape}") + + return sdata + + +def write_versions(process_name): + """Write software versions to a YAML file.""" + versions = { + process_name: { + "python": platform.python_version(), + "spatialdata": importlib.metadata.version("spatialdata"), + "spatialdata-io": importlib.metadata.version("spatialdata-io"), + } + } + with open("versions.yml", "w") as f: + yaml.dump(versions, f) + + +def main(): + """Read Visium data into SpatialData format.""" + # Template variables + spaceranger_dir = "${spaceranger_dir}" + sample_id = "${meta.id}" + hd_bin_size = int("${hd_bin_size}") + output_sdata = "${prefix}.zarr" + process_name = "${task.process}" + + # Sample ID must only contain alphanumerics, underscores and dashes + sample_id_clean = re.sub(r"[^a-zA-Z0-9_-]", "", sample_id) + + sdata, table_name = read_visium_data( + spaceranger_dir, + sample_id_clean, + hd_bin_size + ) + + sdata = validate_table(sdata, table_name, sample_id_clean) + + print(f"Writing SpatialData to: {output_sdata}") + sdata.write(output_sdata, overwrite=True) + + write_versions(process_name) + + +if __name__ == "__main__": + main() diff --git a/modules/local/sdata/read_visium/tests/main.nf.test b/modules/local/sdata/read_visium/tests/main.nf.test new file mode 100644 index 00000000..1ace6a81 --- /dev/null +++ b/modules/local/sdata/read_visium/tests/main.nf.test @@ -0,0 +1,93 @@ +nextflow_process { + + name "Test Process SDATA_READ_VISIUM" + script "../main.nf" + process "SDATA_READ_VISIUM" + + tag "modules" + tag "modules_local" + tag "sdata_read_visium" + + test("homo_sapiens - outs") { + + setup { + run("UNTAR") { + script "../../../../nf-core/untar/main.nf" + process { + // TODO: Add module test data (or is it okay to use pipeline-level test data?) + """ + input[0] = [ + [ id: 'CytAssist_11mm_FFPE_Human_Glioblastoma_2' ], file("https://raw.githubusercontent.com/nf-core/test-datasets/spatialvi/testdata/human-brain-cancer-11-mm-capture-area-ffpe-2-standard_v2_ffpe_cytassist/outs.tar.gz", checkIfExists: true) + ] + """ + } + } + } + + when { + process { + """ + input[0] = UNTAR.out.untar + input[1] = 8 // hd_bin_size + """ + } + } + + then { + + // Names of all SpatialData (.zarr) files and directories (unstable contents) + def stable_name_zarr = getAllFilesFromDir( + process.out.sdata[0][1], + relative: true, + includeDir: true + ) + + assertAll( + { assert process.success }, + { assert snapshot( + process.out.versions, + stable_name_zarr + ).match() } + ) + } + } + + // N.B. + // Currently, there is only non-HD Space Ranger output to use for testing + // this module; the `outs.tar.gz` file from the HD test data is 1.5 GB in + // size, so likely too large to store in nf-core/test-datasets. + + test("homo_sapiens - outs - stub") { + + options "-stub" + + setup { + run("UNTAR") { + script "../../../../nf-core/untar/main.nf" + process { + """ + input[0] = [ + [ id: 'CytAssist_11mm_FFPE_Human_Glioblastoma_2' ], file("https://raw.githubusercontent.com/nf-core/test-datasets/spatialvi/testdata/human-brain-cancer-11-mm-capture-area-ffpe-2-standard_v2_ffpe_cytassist/outs.tar.gz", checkIfExists: true) + ] + """ + } + } + } + + when { + process { + """ + input[0] = UNTAR.out.untar + input[1] = 8 // hd_bin_size + """ + } + } + + then { + assertAll( + { assert process.success }, + { assert snapshot(process.out).match() } + ) + } + } +} diff --git a/modules/local/sdata/read_visium/tests/main.nf.test.snap b/modules/local/sdata/read_visium/tests/main.nf.test.snap new file mode 100644 index 00000000..3f9c5877 --- /dev/null +++ b/modules/local/sdata/read_visium/tests/main.nf.test.snap @@ -0,0 +1,210 @@ +{ + "homo_sapiens - outs - stub": { + "content": [ + { + "0": [ + [ + { + "id": "CytAssist_11mm_FFPE_Human_Glioblastoma_2" + }, + [ + ".zgroup:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ] + ], + "1": [ + "versions.yml:md5,d41d8cd98f00b204e9800998ecf8427e" + ], + "sdata": [ + [ + { + "id": "CytAssist_11mm_FFPE_Human_Glioblastoma_2" + }, + [ + ".zgroup:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ] + ], + "versions": [ + "versions.yml:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + } + ], + "timestamp": "2026-04-01T21:08:30.103249", + "meta": { + "nf-test": "0.9.5", + "nextflow": "25.10.4" + } + }, + "homo_sapiens - outs": { + "content": [ + [ + "versions.yml:md5,a147d9821aeb6b76fb93a01c84e5bcc5" + ], + [ + "", + ".zattrs", + ".zgroup", + "images", + "images/.zgroup", + "images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image", + "images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/.zattrs", + "images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/.zgroup", + "images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/0", + "images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/0/.zarray", + "images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/0/0", + "images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/0/0/0", + "images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/0/0/0/0", + "images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_lowres_image", + "images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_lowres_image/.zattrs", + "images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_lowres_image/.zgroup", + "images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_lowres_image/0", + "images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_lowres_image/0/.zarray", + "images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_lowres_image/0/0", + "images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_lowres_image/0/0/0", + "images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_lowres_image/0/0/0/0", + "shapes", + "shapes/.zgroup", + "shapes/CytAssist_11mm_FFPE_Human_Glioblastoma_2", + "shapes/CytAssist_11mm_FFPE_Human_Glioblastoma_2/.zattrs", + "shapes/CytAssist_11mm_FFPE_Human_Glioblastoma_2/.zgroup", + "shapes/CytAssist_11mm_FFPE_Human_Glioblastoma_2/shapes.parquet", + "tables", + "tables/.zgroup", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/.zgroup", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/X", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/X/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/X/.zgroup", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/X/data", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/X/data/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/X/data/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/X/indices", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/X/indices/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/X/indices/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/X/indptr", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/X/indptr/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/X/indptr/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/layers", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/layers/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/layers/.zgroup", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/.zgroup", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/_index", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/_index/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/_index/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/_index/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/array_col", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/array_col/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/array_col/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/array_col/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/array_row", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/array_row/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/array_row/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/array_row/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/in_tissue", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/in_tissue/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/in_tissue/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/in_tissue/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/region", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/region/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/region/.zgroup", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/region/categories", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/region/categories/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/region/categories/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/region/categories/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/region/codes", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/region/codes/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/region/codes/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/region/codes/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/spot_id", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/spot_id/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/spot_id/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/spot_id/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/.zgroup", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/spatial", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/spatial/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/spatial/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/spatial/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/spatial/0/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/.zgroup", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/raw", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/raw/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/raw/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/raw/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/.zgroup", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/.zgroup", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2/.zgroup", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2/metadata", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2/metadata/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2/metadata/.zgroup", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2/metadata/chemistry_description", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2/metadata/chemistry_description/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2/metadata/chemistry_description/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2/metadata/chemistry_description/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2/metadata/software_version", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2/metadata/software_version/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2/metadata/software_version/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2/metadata/software_version/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/.zgroup", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/instance_key", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/instance_key/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/instance_key/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/instance_key/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/region", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/region/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/region/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/region/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/region_key", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/region_key/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/region_key/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/region_key/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/.zgroup", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/_index", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/_index/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/_index/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/_index/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/feature_types", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/feature_types/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/feature_types/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/feature_types/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/gene_ids", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/gene_ids/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/gene_ids/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/gene_ids/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/genome", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/genome/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/genome/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/genome/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/varm", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/varm/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/varm/.zgroup", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/varp", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/varp/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/varp/.zgroup", + "zmetadata" + ] + ], + "timestamp": "2026-04-01T21:08:08.273545", + "meta": { + "nf-test": "0.9.5", + "nextflow": "25.10.4" + } + } +} \ No newline at end of file diff --git a/modules/local/sdata/to_legacy_anndata/main.nf b/modules/local/sdata/to_legacy_anndata/main.nf new file mode 100644 index 00000000..6afe867f --- /dev/null +++ b/modules/local/sdata/to_legacy_anndata/main.nf @@ -0,0 +1,27 @@ +process SDATA_TO_LEGACY_ANNDATA { + tag "${meta.id}" + label 'process_single' + + container "community.wave.seqera.io/library/harmonypy_scanorama_gcc_gxx_pruned:95f731fde0b9ddef" + + input: + tuple val(meta), path(sdata) + + output: + tuple val(meta), path("${prefix}.h5ad"), emit: adata + path "versions.yml" , emit: versions, topic: versions + + when: + task.ext.when == null || task.ext.when + + script: + prefix = task.ext.prefix ?: "${meta.id}" + template 'to_legacy_anndata.py' + + stub: + prefix = task.ext.prefix ?: "${meta.id}" + """ + touch ${prefix}.h5ad + touch versions.yml + """ +} diff --git a/modules/local/sdata/to_legacy_anndata/templates/to_legacy_anndata.py b/modules/local/sdata/to_legacy_anndata/templates/to_legacy_anndata.py new file mode 100644 index 00000000..5f526a33 --- /dev/null +++ b/modules/local/sdata/to_legacy_anndata/templates/to_legacy_anndata.py @@ -0,0 +1,127 @@ +#!/usr/bin/env python3 +""" +Extract a legacy AnnData object from a SpatialData object. The legacy format +includes spatial coordinates and images compatible with scanpy. +""" + +# Disable OpenMP CPU topology detection for macOS compatibility +import os +os.environ["KMP_AFFINITY"] = "disabled" + +import importlib.metadata +import platform +import re + +import scipy.sparse +import spatialdata +import yaml +from spatialdata_io.experimental import to_legacy_anndata + + +def find_table_name(sdata, sample_id): + """Find the appropriate table name in a SpatialData object.""" + expected_name = f"{sample_id}_table" + if expected_name in sdata.tables: + return expected_name + available_tables = list(sdata.tables.keys()) + raise ValueError( + f"Expected table '{expected_name}' not found in SpatialData. " + f"Available tables: {available_tables}" + ) + + +def find_coordinate_system(sdata, sample_id): + """Find the appropriate coordinate system in a SpatialData object.""" + expected_name = f"{sample_id}_downscaled_hires" + if expected_name in sdata.coordinate_systems: + return expected_name + available_systems = list(sdata.coordinate_systems) + raise ValueError( + f"Expected coordinate system '{expected_name}' not found in SpatialData. " + f"Available coordinate systems: {available_systems}" + ) + + +def extract_to_legacy_anndata(sdata, table_name, coord_system): + """Convert SpatialData to the legacy AnnData format.""" + print(f"Using table: {table_name}") + print(f"Using coordinate system: {coord_system}") + adata = to_legacy_anndata( + sdata, + coordinate_system=coord_system, + table_name=table_name, + include_images=True + ) + return adata + + +def ensure_sparse_csc(adata): + """Convert `.X` matrix to CSC sparse format for compatibility.""" + if not scipy.sparse.issparse(adata.X): + adata.X = scipy.sparse.csc_matrix(adata.X) + elif not scipy.sparse.isspmatrix_csc(adata.X): + adata.X = scipy.sparse.csc_matrix(adata.X) + return adata + + +def add_metadata(adata, sample_id, table_name, coord_system): + """Add raw counts layer and metadata to an AnnData object.""" + if "raw" not in adata.layers: + adata.layers["raw"] = adata.X.copy() + # Store additional metadata in `.uns` + adata.uns["sample_id"] = sample_id + adata.uns["table_name"] = table_name + adata.uns["coordinate_system"] = coord_system + return adata + + +def write_versions(process_name): + """Write software versions to a YAML file.""" + versions = { + process_name: { + "python": platform.python_version(), + "anndata": importlib.metadata.version("anndata"), + "spatialdata": importlib.metadata.version("spatialdata"), + "spatialdata-io": importlib.metadata.version("spatialdata-io"), + } + } + with open("versions.yml", "w") as f: + yaml.dump(versions, f) + + +def main(): + """Extract legacy AnnData from SpatialData.""" + # Template variables + input_sdata = "${sdata}" + sample_id = "${meta.id}" + output_adata = "${prefix}.h5ad" + process_name = "${task.process}" + + # Sample ID must only contain alphanumerics, underscores and dashes + sample_id = re.sub(r"[^a-zA-Z0-9_-]", "", sample_id) + + print(f"Processing SpatialData from: {input_sdata}") + print(f"Sample ID: {sample_id}") + sdata = spatialdata.read_zarr(input_sdata) + print(f"Tables found: {list(sdata.tables.keys())}") + print(f"Coordinate systems: {list(sdata.coordinate_systems)}") + + table_name = find_table_name(sdata, sample_id) + coord_system = find_coordinate_system(sdata, sample_id) + + adata = extract_to_legacy_anndata(sdata, table_name, coord_system) + + adata = ensure_sparse_csc(adata) + adata = add_metadata(adata, sample_id, table_name, coord_system) + + print(f"AnnData shape: {adata.shape}") + print(f"Spatial keys: {list(adata.uns.get("spatial", {}).keys())}") + + adata.write_h5ad(output_adata) + print(f"Written legacy AnnData to: {output_adata}") + + write_versions(process_name) + + +if __name__ == "__main__": + main() diff --git a/modules/local/sdata/to_legacy_anndata/tests/main.nf.test b/modules/local/sdata/to_legacy_anndata/tests/main.nf.test new file mode 100644 index 00000000..ce7f3779 --- /dev/null +++ b/modules/local/sdata/to_legacy_anndata/tests/main.nf.test @@ -0,0 +1,77 @@ +nextflow_process { + + name "Test Process SDATA_TO_LEGACY_ANNDATA" + script "../main.nf" + process "SDATA_TO_LEGACY_ANNDATA" + + tag "modules" + tag "modules_local" + tag "sdata_to_legacy_anndata" + + test("homo_sapiens - zarr") { + + setup { + run("UNTAR") { + script "../../../../nf-core/untar/main.nf" + process { + """ + input[0] = [ + [ id: 'CytAssist_11mm_FFPE_Human_Glioblastoma_2' ], file("https://raw.githubusercontent.com/fasterius/test-datasets/modules/data/spatial_omics/visium/homo_sapiens/CytAssist_11mm_FFPE_Human_Glioblastoma_2.zarr.tar.gz", checkIfExists: true) + ] + """ + } + } + } + + when { + process { + """ + input[0] = UNTAR.out.untar + """ + } + } + + then { + assertAll( + { assert process.success }, + { assert snapshot( + process.out.versions, + anndata(process.out.adata[0][1]).yaml + ).match() } + ) + } + } + + test("homo_sapiens - zarr - stub") { + + options "-stub" + + setup { + run("UNTAR") { + script "../../../../nf-core/untar/main.nf" + process { + """ + input[0] = [ + [ id: 'CytAssist_11mm_FFPE_Human_Glioblastoma_2' ], file("https://raw.githubusercontent.com/fasterius/test-datasets/modules/data/spatial_omics/visium/homo_sapiens/CytAssist_11mm_FFPE_Human_Glioblastoma_2.zarr.tar.gz", checkIfExists: true) + ] + """ + } + } + } + + when { + process { + """ + input[0] = UNTAR.out.untar + """ + } + } + + then { + assertAll( + { assert process.success }, + { assert snapshot(process.out).match() } + ) + } + } +} diff --git a/modules/local/sdata/to_legacy_anndata/tests/main.nf.test.snap b/modules/local/sdata/to_legacy_anndata/tests/main.nf.test.snap new file mode 100644 index 00000000..b73390c0 --- /dev/null +++ b/modules/local/sdata/to_legacy_anndata/tests/main.nf.test.snap @@ -0,0 +1,91 @@ +{ + "homo_sapiens - zarr": { + "content": [ + [ + "versions.yml:md5,f06afd6f97a6444b6f887d36e397792b" + ], + { + "n_obs": 11397, + "n_vars": 19023, + "obs": { + "index": "_index", + "columns": [ + "array_col", + "array_row", + "in_tissue", + "region", + "spot_id" + ] + }, + "var": { + "index": "_index", + "columns": [ + "feature_types", + "gene_ids", + "genome" + ] + }, + "layers": [ + "raw" + ], + "obsm": [ + "spatial" + ], + "varm": [ + + ], + "obsp": [ + + ], + "varp": [ + + ], + "uns": [ + "coordinate_system", + "sample_id", + "spatial", + "spatialdata_attrs", + "table_name" + ] + } + ], + "timestamp": "2026-03-30T16:33:30.157422", + "meta": { + "nf-test": "0.9.5", + "nextflow": "25.10.4" + } + }, + "homo_sapiens - zarr - stub": { + "content": [ + { + "0": [ + [ + { + "id": "CytAssist_11mm_FFPE_Human_Glioblastoma_2" + }, + "CytAssist_11mm_FFPE_Human_Glioblastoma_2.h5ad:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ], + "1": [ + "versions.yml:md5,d41d8cd98f00b204e9800998ecf8427e" + ], + "adata": [ + [ + { + "id": "CytAssist_11mm_FFPE_Human_Glioblastoma_2" + }, + "CytAssist_11mm_FFPE_Human_Glioblastoma_2.h5ad:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ], + "versions": [ + "versions.yml:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + } + ], + "timestamp": "2026-04-01T20:53:13.597475", + "meta": { + "nf-test": "0.9.5", + "nextflow": "25.10.4" + } + } +} \ No newline at end of file diff --git a/modules/local/sdata/update_table/main.nf b/modules/local/sdata/update_table/main.nf new file mode 100644 index 00000000..c8c29869 --- /dev/null +++ b/modules/local/sdata/update_table/main.nf @@ -0,0 +1,29 @@ +process SDATA_UPDATE_TABLE { + tag "${meta.id}" + label 'process_single' + + container "community.wave.seqera.io/library/harmonypy_scanorama_gcc_gxx_pruned:95f731fde0b9ddef" + + input: + tuple val(meta), path(sdata, stageAs: "input.zarr"), path(adata) + val library_key + + output: + tuple val(meta), path("${prefix}.zarr"), emit: sdata + path "versions.yml" , emit: versions, topic: versions + + when: + task.ext.when == null || task.ext.when + + script: + prefix = task.ext.prefix ?: "${meta.id}" + template 'update_table.py' + + stub: + prefix = task.ext.prefix ?: "${meta.id}" + """ + mkdir -p ${prefix}.zarr + touch ${prefix}.zarr/.zgroup + touch versions.yml + """ +} diff --git a/modules/local/sdata/update_table/templates/update_table.py b/modules/local/sdata/update_table/templates/update_table.py new file mode 100644 index 00000000..2a71530d --- /dev/null +++ b/modules/local/sdata/update_table/templates/update_table.py @@ -0,0 +1,327 @@ +#!/usr/bin/env python3 +""" +Update SpatialData tables with processed AnnData objects. Also updates +associated spatial elements to match filtered observations. + +Supports: +- Single-sample: replace table entirely. +- Multi-sample: update tables from concatenated AnnData using library_key. +""" + +# Disable OpenMP CPU topology detection for macOS compatibility +import os +os.environ["KMP_AFFINITY"] = "disabled" + +# Fix numba caching issue in read-only containers +os.environ["NUMBA_CACHE_DIR"] = "/tmp/numba_cache" +os.environ["MPLCONFIGDIR"] = "/tmp/matplotlib" +os.environ["XDG_CACHE_HOME"] = "/tmp/cache" + +import importlib.metadata +import platform +import re +import shutil + +import anndata as ad +import numpy as np +import spatialdata +import yaml +from spatialdata.models import TableModel + +# ----------------------------------------------------------------------------- +# Single-sample operations +# ----------------------------------------------------------------------------- + + +def find_table_name(sdata, adata, sample_id): + """ + Determine which table to update for single-sample mode. + + Parameters + ---------- + sdata : SpatialData + SpatialData object. + adata : AnnData + AnnData object with potential table_name in uns. + sample_id : str + Sample identifier. + + Returns + ------- + str + Table name to update. + """ + if "table_name" in adata.uns: + return adata.uns["table_name"] + elif f"{sample_id}_table" in sdata.tables: + return f"{sample_id}_table" + elif len(sdata.tables) > 0: + return list(sdata.tables.keys())[0] + else: + raise ValueError("No tables found in SpatialData object") + + +def replace_table(sdata, adata, table_name): + """ + Replace a table entirely, preserving SpatialData metadata. + + Parameters + ---------- + sdata : SpatialData + SpatialData object. + adata : AnnData + New AnnData to replace the table with. + table_name : str + Name of table to replace. + """ + print(f"Replacing table '{table_name}'") + print(f"Original table shape: {sdata.tables[table_name].shape}") + print(f"New AnnData shape: {adata.shape}") + + original_table = sdata.tables[table_name] + spatialdata_attrs = original_table.uns.get("spatialdata_attrs", {}) + region = spatialdata_attrs.get("region") + region_key = spatialdata_attrs.get("region_key") + instance_key = spatialdata_attrs.get("instance_key") + print(f"Original region: {region}") + print(f"Original region_key: {region_key}") + print(f"Original instance_key: {instance_key}") + + # Handle region being a numpy array (convert to list/string) + if isinstance(region, np.ndarray): + region = region.tolist() + if isinstance(region, list) and len(region) == 1: + region = region[0] + + # Ensure instance_key column exists in the new AnnData + if instance_key and instance_key not in adata.obs.columns: + if instance_key in original_table.obs.columns: + common_idx = adata.obs.index.intersection(original_table.obs.index) + if len(common_idx) == len(adata.obs.index): + adata.obs[instance_key] = original_table.obs.loc[adata.obs.index, instance_key] + else: + print(f"WARNING: Could not match all indices for {instance_key}") + else: + print(f"WARNING: instance_key '{instance_key}' not found in original table") + + # Restore region_key column if missing + if region_key and region_key not in adata.obs.columns: + if region_key in original_table.obs.columns: + common_idx = adata.obs.index.intersection(original_table.obs.index) + if len(common_idx) == len(adata.obs.index): + adata.obs[region_key] = original_table.obs.loc[adata.obs.index, region_key] + elif region: + region_value = region if isinstance(region, str) else region[0] + adata.obs[region_key] = region_value + + # Create new table with proper metadata + try: + if region and instance_key: + new_table = TableModel.parse( + adata, + region=region, + region_key=region_key, + instance_key=instance_key + ) + print("Created new table using TableModel.parse()") + else: + # Fallback: copy uns from original + print("WARNING: Missing region/instance_key metadata, copying from original") + adata.uns["spatialdata_attrs"] = spatialdata_attrs.copy() + new_table = adata + except Exception as e: + print(f"WARNING: TableModel.parse failed ({e}), copying from original") + adata.uns["spatialdata_attrs"] = spatialdata_attrs.copy() + new_table = adata + + # Replace table + del sdata.tables[table_name] + try: + sdata.tables[table_name] = new_table + print(f"Successfully updated table '{table_name}'") + except Exception as e: + print(f"WARNING: Failed to set table via sdata.tables: {e}") + print("Attempting to set table using internal method...") + + # Update spatial elements if observations were filtered + if region and adata.shape[0] < original_table.shape[0]: + print(f"Observations were filtered: {original_table.shape[0]} -> {adata.shape[0]}") + region_name = region if isinstance(region, str) else region[0] + if region_name in sdata.shapes: + try: + matched, _ = spatialdata.match_element_to_table( + sdata, + element_name=region_name, + table_name=table_name + ) + sdata.shapes[region_name] = matched[region_name] + print(f"Updated shapes '{region_name}' to match filtered table") + except Exception as e: + print(f" WARNING: Could not update shapes: {e}") + else: + print("No filtering detected or no region to update") + + +# ----------------------------------------------------------------------------- +# Multi-sample operations +# ----------------------------------------------------------------------------- + + +def find_table_for_library(sdata, library_id): + """ + Find matching table name for a library ID. First tries matching exactly, + secondly with a `_table` suffix, with `None` as fallback. + """ + if library_id in sdata.tables: + return library_id + if f"{library_id}_table" in sdata.tables: + return f"{library_id}_table" + return None + + +def build_library_to_table_dict(sdata, library_ids): + """Build library-to-table dictionary.""" + library_to_table_dict = {} + for library_id in library_ids: + table_name = find_table_for_library(sdata, library_id) + if table_name: + library_to_table_dict[library_id] = table_name + else: + print(f"WARNING: No matching table found for library '{library_id}'") + print(f"Library-to-table mapping: {library_to_table_dict}") + return library_to_table_dict + + +def update_tables_from_concat(sdata, adata_concat, library_key): + """ + Update multiple tables from concatenated AnnData. + + Parameters + ---------- + sdata : SpatialData + SpatialData object. + adata_concat : AnnData + Concatenated AnnData with library_key column. + library_key : str + Column in obs containing library identifiers. + """ + if library_key not in adata_concat.obs.columns: + raise ValueError(f"Column '{library_key}' not found in AnnData") + + library_ids = adata_concat.obs[library_key].unique() + print(f"Found {len(library_ids)} libraries: {library_ids.tolist()}") + print(f"Available tables: {list(sdata.tables.keys())}") + + library_to_table_dict = build_library_to_table_dict(sdata, library_ids) + + for library_id, table_name in library_to_table_dict.items(): + mask = adata_concat.obs[library_key] == library_id + if not mask.any(): + print(f"WARNING: No observations for library '{library_id}'") + continue + + adata_subset = adata_concat[mask].copy() + table = sdata.tables[table_name] + print( + f"Updating table '{table_name}' from library '{library_id}' " + f"({adata_subset.shape[0]} obs)" + ) + + # Build index mapping (remove concatenation suffix) + index_map = {idx: idx.rsplit("-", 1)[0] for idx in adata_subset.obs_names} + + # Add obsm fields + for key in adata_subset.obsm.keys(): + n_features = adata_subset.obsm[key].shape[1] + if key not in table.obsm: + table.obsm[key] = np.full( + (table.n_obs, n_features), np.nan, dtype=np.float32 + ) + + for i, new_idx in enumerate(adata_subset.obs_names): + orig_idx = index_map[new_idx] + if orig_idx in table.obs_names: + pos = table.obs_names.get_loc(orig_idx) + table.obsm[key][pos] = adata_subset.obsm[key][i] + + print(f" Added obsm['{key}']") + + # Add obs columns + skip = {library_key} + new_cols = set(adata_subset.obs.columns) - set(table.obs.columns) - skip + + for col in new_cols: + table.obs[col] = np.nan + for i, new_idx in enumerate(adata_subset.obs_names): + orig_idx = index_map[new_idx] + if orig_idx in table.obs_names: + table.obs.loc[orig_idx, col] = adata_subset.obs.iloc[i][col] + + print(f" Added obs['{col}']") + + +# ----------------------------------------------------------------------------- +# Main +# ----------------------------------------------------------------------------- + + +def write_versions(process_name): + """Write software versions to YAML.""" + versions = { + process_name: { + "python": platform.python_version(), + "anndata": importlib.metadata.version("anndata"), + "spatialdata": importlib.metadata.version("spatialdata"), + } + } + with open("versions.yml", "w") as f: + yaml.dump(versions, f) + + +def main(): + """Synchronize AnnData back to SpatialData.""" + # Template variables + zarr = "${sdata}" + h5ad = "${adata}" + sample_id = "${meta.id}" + library_key = "${library_key}" + output_sdata = "${prefix}.zarr" + process_name = "${task.process}" + + # Sample ID must only contain alphanumerics, underscores and dashes + sample_id = re.sub(r"[^a-zA-Z0-9_-]", "", sample_id) + + print(f"Input SpatialData: {zarr}") + print(f"Input AnnData: {h5ad}") + print(f"Output: {output_sdata} SpatialData") + print(f"Mode: {'multi-sample' if library_key else 'single-sample'}") + + if os.path.abspath(zarr) == os.path.abspath(output_sdata): + raise ValueError("Input and output paths are the same!") + + if os.path.exists(output_sdata): + print(f"Removing existing output directory: {output_sdata}") + shutil.rmtree(output_sdata) + + # Read data + sdata = spatialdata.read_zarr(zarr) + adata = ad.read_h5ad(h5ad) + print(f"Available tables: {list(sdata.tables.keys())}") + print(f"Available shapes: {list(sdata.shapes.keys())}") + + # Process based on mode + if library_key: + update_tables_from_concat(sdata, adata, library_key) + else: + table_name = find_table_name(sdata, adata, sample_id) + replace_table(sdata, adata, table_name) + + # Write output + sdata.write(output_sdata) + print(f"Written: {output_sdata}") + + write_versions(process_name) + + +if __name__ == "__main__": + main() diff --git a/modules/local/sdata/update_table/tests/main.nf.test b/modules/local/sdata/update_table/tests/main.nf.test new file mode 100644 index 00000000..db7401a6 --- /dev/null +++ b/modules/local/sdata/update_table/tests/main.nf.test @@ -0,0 +1,224 @@ +nextflow_process { + + name "Test Process SDATA_UPDATE_TABLE" + script "../main.nf" + process "SDATA_UPDATE_TABLE" + + tag "modules" + tag "modules_local" + tag "sdata_update_table" + + test("homo_sapiens - zarr - single sample") { + + setup { + run("UNTAR") { + script "../../../../nf-core/untar/main.nf" + process { + """ + input[0] = [ + [ id: 'CytAssist_11mm_FFPE_Human_Glioblastoma_2' ], file("https://raw.githubusercontent.com/fasterius/test-datasets/modules/data/spatial_omics/visium/homo_sapiens/CytAssist_11mm_FFPE_Human_Glioblastoma_2.zarr.tar.gz", checkIfExists: true) + ] + """ + } + } + run("SDATA_TO_LEGACY_ANNDATA") { + script "../../to_legacy_anndata/main.nf" + process { + """ + input[0] = UNTAR.out.untar + """ + } + } + run("SCANPY_PCA") { + script "../../../scanpy/pca/main.nf" + process { + """ + input[0] = SDATA_TO_LEGACY_ANNDATA.out.adata + input[1] = 50 // n_pcs + input[2] = false // use_highly_variable + """ + } + } + } + + when { + process { + """ + input[0] = UNTAR.out.untar.join(SCANPY_PCA.out.adata) + input[1] = '' // library_key + """ + } + } + + then { + + // Names of all SpatialData (.zarr) files and directories (unstable contents) + def stable_name_zarr = getAllFilesFromDir( + process.out.sdata[0][1], + relative: true, + includeDir: true + ) + + assertAll( + { assert process.success }, + { assert snapshot( + process.out.versions, + stable_name_zarr + ).match() } + ) + } + } + + test("homo_sapiens - zarr - multiple samples") { + + setup { + run("UNTAR") { + script "../../../../nf-core/untar/main.nf" + process { + """ + input[0] = channel.fromList([ + tuple([ id: 'CytAssist_11mm_FFPE_Human_Glioblastoma_2' ], file("https://raw.githubusercontent.com/fasterius/test-datasets/modules/data/spatial_omics/visium/homo_sapiens/CytAssist_11mm_FFPE_Human_Glioblastoma_2.zarr.tar.gz", checkIfExists: true)), + tuple([ id: 'CytAssist_11mm_FFPE_Human_Glioblastoma_2.2' ], file("https://raw.githubusercontent.com/fasterius/test-datasets/modules/data/spatial_omics/visium/homo_sapiens/CytAssist_11mm_FFPE_Human_Glioblastoma_2.2.zarr.tar.gz", checkIfExists: true)), + ]) + """ + } + } + run("SDATA_MERGE") { + script "../../merge/main.nf" + process { + """ + input[0] = UNTAR.out.untar + .toSortedList { a, b -> a[0].id <=> b[0].id } + .flatMap { it } + .map { _meta, zarr -> zarr } + .collect() + """ + } + } + run("SDATA_TO_LEGACY_ANNDATA") { + script "../../to_legacy_anndata/main.nf" + process { + """ + input[0] = UNTAR.out.untar + """ + } + } + run("SCANPY_PCA") { + script "../../../scanpy/pca/main.nf" + process { + """ + input[0] = SDATA_TO_LEGACY_ANNDATA.out.adata + input[1] = 50 // n_pcs + input[2] = false // use_highly_variable + """ + } + } + run("ADATA_MERGE") { + script "../../../adata/merge/main.nf" + process { + """ + input[0] = SCANPY_PCA.out.adata + .map { _meta, zarr -> zarr } + .collect() + input[1] = 'inner' // join + input[2] = 'library_id' // label + input[3] = false // preserve_var + input[4] = false // preserve_spatial + """ + } + } + run("SCANPY_HARMONY") { + script "../../../scanpy/harmony/main.nf" + process { + """ + input[0] = ADATA_MERGE.out.adata + input[1] = 'library_id' // key + input[2] = 'X_harmony' // embedding_added + """ + } + } + } + + when { + process { + """ + input[0] = SDATA_MERGE.out.sdata + .map { zarr -> [[id: 'merged'], zarr] } + .join(SCANPY_HARMONY.out.adata + .map { h5ad -> [[id: 'merged'], h5ad]} + ) + input[1] = 'library_id' // library_key + """ + } + } + + then { + + def stable_name_zarr = getAllFilesFromDir( + process.out.sdata[0][1], + relative: true, + includeDir: true + ) + + assertAll( + { assert process.success }, + { assert snapshot( + process.out.versions, + stable_name_zarr + ).match() } + ) + } + } + + test("homo_sapiens - zarr - stub") { + + options "-stub" + + setup { + run("UNTAR") { + script "../../../../nf-core/untar/main.nf" + process { + """ + input[0] = [ + [ id: 'CytAssist_11mm_FFPE_Human_Glioblastoma_2' ], file("https://raw.githubusercontent.com/fasterius/test-datasets/modules/data/spatial_omics/visium/homo_sapiens/CytAssist_11mm_FFPE_Human_Glioblastoma_2.zarr.tar.gz", checkIfExists: true) + ] + """ + } + } + run("SDATA_TO_LEGACY_ANNDATA") { + script "../../to_legacy_anndata/main.nf" + process { + """ + input[0] = UNTAR.out.untar + """ + } + } + run("SCANPY_PCA") { + script "../../../scanpy/pca/main.nf" + process { + """ + input[0] = SDATA_TO_LEGACY_ANNDATA.out.adata + input[1] = 50 // n_pcs + input[2] = false // use_highly_variable + """ + } + } + } + + when { + process { + """ + input[0] = UNTAR.out.untar.join(SCANPY_PCA.out.adata) + input[1] = '' // library_key + """ + } + } + + then { + assertAll( + { assert process.success }, + { assert snapshot(process.out).match() } + ) + } + } +} diff --git a/modules/local/sdata/update_table/tests/main.nf.test.snap b/modules/local/sdata/update_table/tests/main.nf.test.snap new file mode 100644 index 00000000..6b610672 --- /dev/null +++ b/modules/local/sdata/update_table/tests/main.nf.test.snap @@ -0,0 +1,741 @@ +{ + "homo_sapiens - zarr - single sample": { + "content": [ + [ + "versions.yml:md5,80c2a6c0d2661e7b69644d075b91015e" + ], + [ + "", + ".zattrs", + ".zgroup", + "images", + "images/.zgroup", + "images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image", + "images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/.zattrs", + "images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/.zgroup", + "images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/0", + "images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/0/.zarray", + "images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/0/0", + "images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/0/0/0", + "images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/0/0/0/0", + "images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_lowres_image", + "images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_lowres_image/.zattrs", + "images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_lowres_image/.zgroup", + "images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_lowres_image/0", + "images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_lowres_image/0/.zarray", + "images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_lowres_image/0/0", + "images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_lowres_image/0/0/0", + "images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_lowres_image/0/0/0/0", + "shapes", + "shapes/.zgroup", + "shapes/CytAssist_11mm_FFPE_Human_Glioblastoma_2", + "shapes/CytAssist_11mm_FFPE_Human_Glioblastoma_2/.zattrs", + "shapes/CytAssist_11mm_FFPE_Human_Glioblastoma_2/.zgroup", + "shapes/CytAssist_11mm_FFPE_Human_Glioblastoma_2/shapes.parquet", + "tables", + "tables/.zgroup", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/.zgroup", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/X", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/X/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/X/.zgroup", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/X/data", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/X/data/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/X/data/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/X/indices", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/X/indices/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/X/indices/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/X/indptr", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/X/indptr/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/X/indptr/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/layers", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/layers/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/layers/.zgroup", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/layers/raw", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/layers/raw/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/layers/raw/.zgroup", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/layers/raw/data", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/layers/raw/data/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/layers/raw/data/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/layers/raw/indices", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/layers/raw/indices/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/layers/raw/indices/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/layers/raw/indptr", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/layers/raw/indptr/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/layers/raw/indptr/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/.zgroup", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/_index", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/_index/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/_index/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/_index/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/array_col", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/array_col/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/array_col/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/array_col/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/array_row", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/array_row/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/array_row/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/array_row/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/in_tissue", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/in_tissue/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/in_tissue/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/in_tissue/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/region", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/region/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/region/.zgroup", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/region/categories", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/region/categories/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/region/categories/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/region/categories/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/region/codes", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/region/codes/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/region/codes/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/region/codes/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/spot_id", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/spot_id/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/spot_id/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/spot_id/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/.zgroup", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/X_pca", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/X_pca/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/X_pca/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/X_pca/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/X_pca/0/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/X_pca/0/1", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/X_pca/1", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/X_pca/1/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/X_pca/1/1", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/X_pca/2", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/X_pca/2/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/X_pca/2/1", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/X_pca/3", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/X_pca/3/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/X_pca/3/1", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/spatial", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/spatial/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/spatial/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/spatial/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/spatial/0/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/.zgroup", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/raw", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/raw/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/raw/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/raw/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/.zgroup", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/coordinate_system", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/coordinate_system/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/coordinate_system/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/coordinate_system/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca/.zgroup", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca/params", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca/params/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca/params/.zgroup", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca/params/mask_var", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca/params/mask_var/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca/params/mask_var/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca/params/mask_var/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca/params/use_highly_variable", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca/params/use_highly_variable/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca/params/use_highly_variable/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca/params/use_highly_variable/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca/params/zero_center", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca/params/zero_center/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca/params/zero_center/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca/params/zero_center/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca/variance", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca/variance/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca/variance/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca/variance/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca/variance_ratio", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca/variance_ratio/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca/variance_ratio/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca/variance_ratio/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/sample_id", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/sample_id/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/sample_id/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/sample_id/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/.zgroup", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2/.zgroup", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2/metadata", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2/metadata/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2/metadata/.zgroup", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2/metadata/chemistry_description", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2/metadata/chemistry_description/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2/metadata/chemistry_description/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2/metadata/chemistry_description/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2/metadata/software_version", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2/metadata/software_version/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2/metadata/software_version/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2/metadata/software_version/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/.zgroup", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/.zgroup", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/0/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/0/0/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/0/0/1", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/0/1", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/0/1/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/0/1/1", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/0/2", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/0/2/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/0/2/1", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/0/3", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/0/3/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/0/3/1", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/1", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/1/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/1/0/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/1/0/1", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/1/1", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/1/1/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/1/1/1", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/1/2", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/1/2/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/1/2/1", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/1/3", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/1/3/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/1/3/1", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/2", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/2/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/2/0/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/2/0/1", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/2/1", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/2/1/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/2/1/1", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/2/2", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/2/2/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/2/2/1", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/2/3", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/2/3/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/2/3/1", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/3", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/3/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/3/0/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/3/0/1", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/3/1", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/3/1/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/3/1/1", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/3/2", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/3/2/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/3/2/1", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/3/3", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/3/3/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/3/3/1", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/lowres", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/lowres/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/lowres/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/lowres/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/lowres/0/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/lowres/0/0/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/lowres/0/1", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/lowres/0/1/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/lowres/1", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/lowres/1/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/lowres/1/0/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/lowres/1/1", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/lowres/1/1/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/scalefactors", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/scalefactors/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/scalefactors/.zgroup", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/scalefactors/spot_diameter_fullres", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/scalefactors/spot_diameter_fullres/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/scalefactors/spot_diameter_fullres/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/scalefactors/spot_diameter_fullres/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/scalefactors/tissue_hires_scalef", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/scalefactors/tissue_hires_scalef/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/scalefactors/tissue_hires_scalef/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/scalefactors/tissue_hires_scalef/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/scalefactors/tissue_lowres_scalef", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/scalefactors/tissue_lowres_scalef/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/scalefactors/tissue_lowres_scalef/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/scalefactors/tissue_lowres_scalef/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/.zgroup", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/instance_key", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/instance_key/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/instance_key/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/instance_key/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/region", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/region/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/region/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/region/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/region_key", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/region_key/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/region_key/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/region_key/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/table_name", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/table_name/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/table_name/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/table_name/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/.zgroup", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/_index", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/_index/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/_index/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/_index/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/feature_types", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/feature_types/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/feature_types/.zgroup", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/feature_types/categories", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/feature_types/categories/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/feature_types/categories/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/feature_types/categories/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/feature_types/codes", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/feature_types/codes/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/feature_types/codes/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/feature_types/codes/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/gene_ids", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/gene_ids/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/gene_ids/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/gene_ids/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/genome", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/genome/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/genome/.zgroup", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/genome/categories", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/genome/categories/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/genome/categories/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/genome/categories/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/genome/codes", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/genome/codes/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/genome/codes/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/genome/codes/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/varm", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/varm/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/varm/.zgroup", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/varm/PCs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/varm/PCs/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/varm/PCs/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/varm/PCs/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/varm/PCs/0/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/varm/PCs/0/1", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/varm/PCs/1", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/varm/PCs/1/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/varm/PCs/1/1", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/varm/PCs/2", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/varm/PCs/2/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/varm/PCs/2/1", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/varm/PCs/3", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/varm/PCs/3/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/varm/PCs/3/1", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/varp", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/varp/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/varp/.zgroup", + "zmetadata" + ] + ], + "timestamp": "2026-04-01T21:09:32.590136", + "meta": { + "nf-test": "0.9.5", + "nextflow": "25.10.4" + } + }, + "homo_sapiens - zarr - multiple samples": { + "content": [ + [ + "versions.yml:md5,80c2a6c0d2661e7b69644d075b91015e" + ], + [ + "", + ".zattrs", + ".zgroup", + "images", + "images/.zgroup", + "images/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image", + "images/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/.zattrs", + "images/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/.zgroup", + "images/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/0", + "images/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/0/.zarray", + "images/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/0/0", + "images/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/0/0/0", + "images/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/0/0/0/0", + "images/CytAssist_11mm_FFPE_Human_Glioblastoma_22_lowres_image", + "images/CytAssist_11mm_FFPE_Human_Glioblastoma_22_lowres_image/.zattrs", + "images/CytAssist_11mm_FFPE_Human_Glioblastoma_22_lowres_image/.zgroup", + "images/CytAssist_11mm_FFPE_Human_Glioblastoma_22_lowres_image/0", + "images/CytAssist_11mm_FFPE_Human_Glioblastoma_22_lowres_image/0/.zarray", + "images/CytAssist_11mm_FFPE_Human_Glioblastoma_22_lowres_image/0/0", + "images/CytAssist_11mm_FFPE_Human_Glioblastoma_22_lowres_image/0/0/0", + "images/CytAssist_11mm_FFPE_Human_Glioblastoma_22_lowres_image/0/0/0/0", + "images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image", + "images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/.zattrs", + "images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/.zgroup", + "images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/0", + "images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/0/.zarray", + "images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/0/0", + "images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/0/0/0", + "images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/0/0/0/0", + "images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_lowres_image", + "images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_lowres_image/.zattrs", + "images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_lowres_image/.zgroup", + "images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_lowres_image/0", + "images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_lowres_image/0/.zarray", + "images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_lowres_image/0/0", + "images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_lowres_image/0/0/0", + "images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_lowres_image/0/0/0/0", + "shapes", + "shapes/.zgroup", + "shapes/CytAssist_11mm_FFPE_Human_Glioblastoma_2", + "shapes/CytAssist_11mm_FFPE_Human_Glioblastoma_2/.zattrs", + "shapes/CytAssist_11mm_FFPE_Human_Glioblastoma_2/.zgroup", + "shapes/CytAssist_11mm_FFPE_Human_Glioblastoma_2/shapes.parquet", + "shapes/CytAssist_11mm_FFPE_Human_Glioblastoma_22", + "shapes/CytAssist_11mm_FFPE_Human_Glioblastoma_22/.zattrs", + "shapes/CytAssist_11mm_FFPE_Human_Glioblastoma_22/.zgroup", + "shapes/CytAssist_11mm_FFPE_Human_Glioblastoma_22/shapes.parquet", + "tables", + "tables/.zgroup", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/.zgroup", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/X", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/X/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/X/.zgroup", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/X/data", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/X/data/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/X/data/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/X/indices", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/X/indices/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/X/indices/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/X/indptr", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/X/indptr/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/X/indptr/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/layers", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/layers/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/layers/.zgroup", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/.zgroup", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/_index", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/_index/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/_index/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/_index/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/array_col", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/array_col/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/array_col/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/array_col/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/array_row", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/array_row/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/array_row/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/array_row/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/in_tissue", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/in_tissue/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/in_tissue/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/in_tissue/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/region", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/region/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/region/.zgroup", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/region/categories", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/region/categories/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/region/categories/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/region/categories/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/region/codes", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/region/codes/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/region/codes/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/region/codes/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/spot_id", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/spot_id/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/spot_id/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/spot_id/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsm", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsm/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsm/.zgroup", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsm/spatial", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsm/spatial/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsm/spatial/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsm/spatial/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsm/spatial/0/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsp", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsp/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsp/.zgroup", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/raw", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/raw/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/raw/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/raw/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/.zgroup", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/.zgroup", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22/.zgroup", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22/metadata", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22/metadata/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22/metadata/.zgroup", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22/metadata/chemistry_description", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22/metadata/chemistry_description/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22/metadata/chemistry_description/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22/metadata/chemistry_description/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22/metadata/software_version", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22/metadata/software_version/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22/metadata/software_version/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22/metadata/software_version/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatialdata_attrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatialdata_attrs/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatialdata_attrs/.zgroup", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatialdata_attrs/instance_key", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatialdata_attrs/instance_key/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatialdata_attrs/instance_key/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatialdata_attrs/instance_key/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatialdata_attrs/region", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatialdata_attrs/region/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatialdata_attrs/region/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatialdata_attrs/region/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatialdata_attrs/region_key", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatialdata_attrs/region_key/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatialdata_attrs/region_key/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatialdata_attrs/region_key/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/.zgroup", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/_index", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/_index/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/_index/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/_index/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/feature_types", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/feature_types/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/feature_types/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/feature_types/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/gene_ids", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/gene_ids/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/gene_ids/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/gene_ids/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/genome", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/genome/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/genome/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/genome/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/varm", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/varm/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/varm/.zgroup", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/varp", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/varp/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/varp/.zgroup", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/.zgroup", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/X", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/X/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/X/.zgroup", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/X/data", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/X/data/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/X/data/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/X/indices", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/X/indices/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/X/indices/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/X/indptr", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/X/indptr/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/X/indptr/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/layers", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/layers/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/layers/.zgroup", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/.zgroup", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/_index", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/_index/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/_index/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/_index/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/array_col", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/array_col/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/array_col/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/array_col/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/array_row", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/array_row/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/array_row/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/array_row/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/in_tissue", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/in_tissue/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/in_tissue/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/in_tissue/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/region", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/region/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/region/.zgroup", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/region/categories", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/region/categories/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/region/categories/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/region/categories/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/region/codes", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/region/codes/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/region/codes/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/region/codes/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/spot_id", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/spot_id/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/spot_id/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/spot_id/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/.zgroup", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/X_harmony", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/X_harmony/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/X_harmony/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/X_harmony/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/X_harmony/0/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/X_harmony/0/1", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/X_harmony/1", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/X_harmony/1/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/X_harmony/1/1", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/X_harmony/2", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/X_harmony/2/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/X_harmony/2/1", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/X_harmony/3", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/X_harmony/3/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/X_harmony/3/1", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/X_pca", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/X_pca/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/X_pca/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/X_pca/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/X_pca/0/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/X_pca/0/1", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/X_pca/1", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/X_pca/1/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/X_pca/1/1", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/X_pca/2", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/X_pca/2/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/X_pca/2/1", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/X_pca/3", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/X_pca/3/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/X_pca/3/1", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/spatial", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/spatial/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/spatial/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/spatial/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/spatial/0/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/.zgroup", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/raw", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/raw/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/raw/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/raw/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/.zgroup", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/.zgroup", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2/.zgroup", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2/metadata", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2/metadata/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2/metadata/.zgroup", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2/metadata/chemistry_description", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2/metadata/chemistry_description/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2/metadata/chemistry_description/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2/metadata/chemistry_description/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2/metadata/software_version", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2/metadata/software_version/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2/metadata/software_version/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2/metadata/software_version/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/.zgroup", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/instance_key", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/instance_key/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/instance_key/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/instance_key/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/region", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/region/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/region/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/region/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/region_key", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/region_key/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/region_key/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/region_key/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/.zgroup", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/_index", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/_index/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/_index/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/_index/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/feature_types", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/feature_types/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/feature_types/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/feature_types/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/gene_ids", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/gene_ids/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/gene_ids/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/gene_ids/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/genome", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/genome/.zarray", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/genome/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/genome/0", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/varm", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/varm/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/varm/.zgroup", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/varp", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/varp/.zattrs", + "tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/varp/.zgroup", + "zmetadata" + ] + ], + "timestamp": "2026-04-01T21:10:21.025954", + "meta": { + "nf-test": "0.9.5", + "nextflow": "25.10.4" + } + }, + "homo_sapiens - zarr - stub": { + "content": [ + { + "0": [ + [ + { + "id": "CytAssist_11mm_FFPE_Human_Glioblastoma_2" + }, + [ + ".zgroup:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ] + ], + "1": [ + "versions.yml:md5,d41d8cd98f00b204e9800998ecf8427e" + ], + "sdata": [ + [ + { + "id": "CytAssist_11mm_FFPE_Human_Glioblastoma_2" + }, + [ + ".zgroup:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ] + ], + "versions": [ + "versions.yml:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + } + ], + "timestamp": "2026-04-01T21:10:40.697045", + "meta": { + "nf-test": "0.9.5", + "nextflow": "25.10.4" + } + } +} \ No newline at end of file diff --git a/modules/local/squidpy/interaction_matrix/main.nf b/modules/local/squidpy/interaction_matrix/main.nf new file mode 100644 index 00000000..d4e36580 --- /dev/null +++ b/modules/local/squidpy/interaction_matrix/main.nf @@ -0,0 +1,28 @@ +process SQUIDPY_INTERACTION_MATRIX { + tag "${meta.id}" + label 'process_medium' + + container "community.wave.seqera.io/library/harmonypy_scanorama_gcc_gxx_pruned:95f731fde0b9ddef" + + input: + tuple val(meta), path(adata, stageAs: "input.h5ad") + val cluster_key + + output: + tuple val(meta), path("${prefix}.h5ad"), emit: adata + path "versions.yml", emit: versions, topic: versions + + when: + task.ext.when == null || task.ext.when + + script: + prefix = task.ext.prefix ?: "${meta.id}" + template 'interaction_matrix.py' + + stub: + prefix = task.ext.prefix ?: "${meta.id}" + """ + touch ${prefix}.h5ad + touch versions.yml + """ +} diff --git a/modules/local/squidpy/interaction_matrix/templates/interaction_matrix.py b/modules/local/squidpy/interaction_matrix/templates/interaction_matrix.py new file mode 100644 index 00000000..c200b940 --- /dev/null +++ b/modules/local/squidpy/interaction_matrix/templates/interaction_matrix.py @@ -0,0 +1,70 @@ +#!/usr/bin/env python3 +""" +Compute interaction matrix between clusters based on spatial neighbors. +""" + +# Disable OpenMP CPU topology detection for macOS compatibility +import os +os.environ["KMP_AFFINITY"] = "disabled" + +import importlib.metadata +import platform + +import anndata as ad +import squidpy as sq +import yaml + + +def validate_adata(adata, cluster_key): + """Check that required data exists in the AnnData object.""" + if cluster_key not in adata.obs.columns: + raise ValueError(f"Column '{cluster_key}' not found in adata.obs") + if "spatial_connectivities" not in adata.obsp: + raise ValueError("Spatial connectivities not found; run squidpy.gr.spatial_neighbors first.") + + +def write_versions(process_name): + """Write software versions to a YAML file.""" + versions = { + process_name: { + "python": platform.python_version(), + "anndata": importlib.metadata.version("anndata"), + "squidpy": importlib.metadata.version("squidpy") + } + } + with open("versions.yml", "w") as f: + yaml.dump(versions, f) + + +def main(): + """Compute interaction matrix between clusters from spatial neighbors.""" + # Template variables + h5ad = "${adata}" + cluster_key = "${cluster_key}" + output_h5ad = "${prefix}.h5ad" + process_name = "${task.process}" + + print(f"Reading: {h5ad}") + adata = ad.read_h5ad(h5ad) + print(f"AnnData shape: {adata.shape}") + print(f"Cluster key: {cluster_key}") + + validate_adata(adata, cluster_key) + + sq.gr.interaction_matrix( + adata, + cluster_key=cluster_key, + ) + + n_clusters = adata.obs[cluster_key].nunique() + print(f"Computed interaction matrix for {n_clusters} clusters") + print(f"Results stored in adata.uns['{cluster_key}_interactions']") + + adata.write_h5ad(output_h5ad) + print(f"Written AnnData with interaction matrix to: {output_h5ad}") + + write_versions(process_name) + + +if __name__ == "__main__": + main() diff --git a/modules/local/squidpy/interaction_matrix/tests/main.nf.test b/modules/local/squidpy/interaction_matrix/tests/main.nf.test new file mode 100644 index 00000000..67fb0bd4 --- /dev/null +++ b/modules/local/squidpy/interaction_matrix/tests/main.nf.test @@ -0,0 +1,175 @@ +nextflow_process { + + name "Test Process SQUIDPY_INTERACTION_MATRIX" + script "../main.nf" + process "SQUIDPY_INTERACTION_MATRIX" + + tag "modules" + tag "modules_local" + tag "squidpy_interaction_matrix" + + test("homo_sapiens - h5ad") { + + setup { + run("UNTAR") { + script "../../../../nf-core/untar/main.nf" + process { + """ + input[0] = [ + [ id: 'CytAssist_11mm_FFPE_Human_Glioblastoma_2' ], file("https://raw.githubusercontent.com/nf-core/test-datasets/spatialvi/testdata/human-brain-cancer-11-mm-capture-area-ffpe-2-standard_v2_ffpe_cytassist/outs.tar.gz", checkIfExists: true) + ] + """ + } + } + run("SDATA_READ_VISIUM") { + script "../../../sdata/read_visium/main.nf" + process { + """ + input[0] = UNTAR.out.untar + input[1] = 8 // hd_bin_size + """ + } + } + run("SDATA_TO_LEGACY_ANNDATA") { + script "../../../sdata/to_legacy_anndata/main.nf" + process { + """ + input[0] = SDATA_READ_VISIUM.out.sdata + """ + } + } + run("SQUIDPY_SPATIAL_NEIGHBORS") { + script "../../spatial_neighbors/main.nf" + process { + """ + input[0] = SDATA_TO_LEGACY_ANNDATA.out.adata + input[1] = "grid" // coord_type + input[2] = 6 // n_neighs + """ + } + } + run("SCANPY_NEIGHBORS") { + script "../../../scanpy/neighbors/main.nf" + process { + """ + input[0] = SQUIDPY_SPATIAL_NEIGHBORS.out.adata + input[1] = 15 // n_neighbors + input[2] = 50 // n_pcs + input[3] = '' // use_rep + """ + } + } + run("SCANPY_LEIDEN") { + script "../../../scanpy/leiden/main.nf" + process { + """ + input[0] = SCANPY_NEIGHBORS.out.adata + input[1] = 1.0 // resolution + input[2] = 'clusters' // key_added + """ + } + } + } + + when { + process { + """ + input[0] = SCANPY_LEIDEN.out.adata + input[1] = 'clusters' // cluster_key + """ + } + } + + then { + assertAll( + { assert process.success }, + { assert snapshot( + process.out.versions, + anndata(process.out.adata[0][1]).yaml + ).match() } + ) + } + } + + test("homo_sapiens - h5ad - stub") { + + options "-stub" + + setup { + run("UNTAR") { + script "../../../../nf-core/untar/main.nf" + process { + """ + input[0] = [ + [ id: 'CytAssist_11mm_FFPE_Human_Glioblastoma_2' ], file("https://raw.githubusercontent.com/nf-core/test-datasets/spatialvi/testdata/human-brain-cancer-11-mm-capture-area-ffpe-2-standard_v2_ffpe_cytassist/outs.tar.gz", checkIfExists: true) + ] + """ + } + } + run("SDATA_READ_VISIUM") { + script "../../../sdata/read_visium/main.nf" + process { + """ + input[0] = UNTAR.out.untar + input[1] = 8 // hd_bin_size + """ + } + } + run("SDATA_TO_LEGACY_ANNDATA") { + script "../../../sdata/to_legacy_anndata/main.nf" + process { + """ + input[0] = SDATA_READ_VISIUM.out.sdata + """ + } + } + run("SQUIDPY_SPATIAL_NEIGHBORS") { + script "../../spatial_neighbors/main.nf" + process { + """ + input[0] = SDATA_TO_LEGACY_ANNDATA.out.adata + input[1] = "grid" // coord_type + input[2] = 6 // n_neighs + """ + } + } + run("SCANPY_NEIGHBORS") { + script "../../../scanpy/neighbors/main.nf" + process { + """ + input[0] = SQUIDPY_SPATIAL_NEIGHBORS.out.adata + input[1] = 15 // n_neighbors + input[2] = 50 // n_pcs + input[3] = '' // use_rep + """ + } + } + run("SCANPY_LEIDEN") { + script "../../../scanpy/leiden/main.nf" + process { + """ + input[0] = SCANPY_NEIGHBORS.out.adata + input[1] = 1.0 // resolution + input[2] = 'clusters' // key_added + """ + } + } + } + + when { + process { + """ + input[0] = SCANPY_LEIDEN.out.adata + input[1] = 'clusters' // cluster_key + """ + } + } + + then { + assertAll( + { assert process.success }, + { assert snapshot(process.out).match() } + ) + } + } +} diff --git a/modules/local/squidpy/interaction_matrix/tests/main.nf.test.snap b/modules/local/squidpy/interaction_matrix/tests/main.nf.test.snap new file mode 100644 index 00000000..dc954136 --- /dev/null +++ b/modules/local/squidpy/interaction_matrix/tests/main.nf.test.snap @@ -0,0 +1,102 @@ +{ + "homo_sapiens - h5ad": { + "content": [ + [ + "versions.yml:md5,78677e1663cf16b9059e86c4765cfd1f" + ], + { + "n_obs": 11397, + "n_vars": 19023, + "obs": { + "index": "_index", + "columns": [ + "array_col", + "array_row", + "clusters", + "in_tissue", + "region", + "spot_id" + ] + }, + "var": { + "index": "_index", + "columns": [ + "feature_types", + "gene_ids", + "genome" + ] + }, + "layers": [ + "raw" + ], + "obsm": [ + "X_pca", + "spatial" + ], + "varm": [ + "PCs" + ], + "obsp": [ + "connectivities", + "distances", + "spatial_connectivities", + "spatial_distances" + ], + "varp": [ + + ], + "uns": [ + "clusters", + "clusters_interactions", + "coordinate_system", + "leiden", + "neighbors", + "pca", + "sample_id", + "spatial", + "spatial_neighbors", + "spatialdata_attrs", + "table_name" + ] + } + ], + "timestamp": "2026-04-01T19:12:08.169831", + "meta": { + "nf-test": "0.9.5", + "nextflow": "25.10.4" + } + }, + "homo_sapiens - h5ad - stub": { + "content": [ + { + "0": [ + [ + { + "id": "CytAssist_11mm_FFPE_Human_Glioblastoma_2" + }, + "CytAssist_11mm_FFPE_Human_Glioblastoma_2.h5ad:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ], + "1": [ + "versions.yml:md5,d41d8cd98f00b204e9800998ecf8427e" + ], + "adata": [ + [ + { + "id": "CytAssist_11mm_FFPE_Human_Glioblastoma_2" + }, + "CytAssist_11mm_FFPE_Human_Glioblastoma_2.h5ad:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ], + "versions": [ + "versions.yml:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + } + ], + "timestamp": "2026-04-01T21:12:34.2875", + "meta": { + "nf-test": "0.9.5", + "nextflow": "25.10.4" + } + } +} \ No newline at end of file diff --git a/modules/local/squidpy/nhood_enrichment/main.nf b/modules/local/squidpy/nhood_enrichment/main.nf new file mode 100644 index 00000000..d98b4657 --- /dev/null +++ b/modules/local/squidpy/nhood_enrichment/main.nf @@ -0,0 +1,28 @@ +process SQUIDPY_NHOOD_ENRICHMENT { + tag "${meta.id}" + label 'process_medium' + + container "community.wave.seqera.io/library/harmonypy_scanorama_gcc_gxx_pruned:95f731fde0b9ddef" + + input: + tuple val(meta), path(adata, stageAs: "input.h5ad") + val cluster_key + + output: + tuple val(meta), path("${prefix}.h5ad"), emit: adata + path "versions.yml", emit: versions, topic: versions + + when: + task.ext.when == null || task.ext.when + + script: + prefix = task.ext.prefix ?: "${meta.id}" + template 'nhood_enrichment.py' + + stub: + prefix = task.ext.prefix ?: "${meta.id}" + """ + touch ${prefix}.h5ad + touch versions.yml + """ +} diff --git a/modules/local/squidpy/nhood_enrichment/templates/nhood_enrichment.py b/modules/local/squidpy/nhood_enrichment/templates/nhood_enrichment.py new file mode 100644 index 00000000..a4b0941a --- /dev/null +++ b/modules/local/squidpy/nhood_enrichment/templates/nhood_enrichment.py @@ -0,0 +1,78 @@ +#!/usr/bin/env python3 +""" +Compute neighborhood enrichment by permutation test. + +Neighborhood enrichment analysis tests whether clusters are spatially +co-localized more or less frequently than expected by chance. +Results are stored in adata.uns. +""" + +# Disable OpenMP CPU topology detection for macOS compatibility +import os +os.environ["KMP_AFFINITY"] = "disabled" +os.environ["KMP_INIT_AT_FORK"] = "FALSE" + +import importlib.metadata +import platform + +import anndata as ad +import squidpy as sq +import yaml + + +def validate_adata(adata, cluster_key): + """Check that required data exists in the AnnData object.""" + if cluster_key not in adata.obs.columns: + raise ValueError(f"Column '{cluster_key}' not found in adata.obs") + if "spatial_connectivities" not in adata.obsp: + raise ValueError( + "Spatial connectivities not found; " + "run squidpy.gr.spatial_neighbors first." + ) + + +def write_versions(process_name): + """Write software versions to a YAML file.""" + versions = { + process_name: { + "python": platform.python_version(), + "anndata": importlib.metadata.version("anndata"), + "squidpy": importlib.metadata.version("squidpy") + } + } + with open("versions.yml", "w") as f: + yaml.dump(versions, f) + + +def main(): + """Compute neighborhood enrichment by permutation test.""" + # Template variables + h5ad = "${adata}" + cluster_key = "${cluster_key}" + output_adata = "${prefix}.h5ad" + process_name = "${task.process}" + + print(f"Reading: {h5ad}") + adata = ad.read_h5ad(h5ad) + print(f"AnnData shape: {adata.shape}") + print(f"Cluster key: {cluster_key}") + + validate_adata(adata, cluster_key) + + sq.gr.nhood_enrichment( + adata, + cluster_key=cluster_key, + ) + + n_clusters = adata.obs[cluster_key].nunique() + print(f"Computed neighborhood enrichment for {n_clusters} clusters") + print(f"Results stored in adata.uns['{cluster_key}_nhood_enrichment']") + + adata.write_h5ad(output_adata) + print(f"Written AnnData with neighborhood enrichment to: {output_adata}") + + write_versions(process_name) + + +if __name__ == "__main__": + main() diff --git a/modules/local/squidpy/nhood_enrichment/tests/main.nf.test b/modules/local/squidpy/nhood_enrichment/tests/main.nf.test new file mode 100644 index 00000000..a8601fa1 --- /dev/null +++ b/modules/local/squidpy/nhood_enrichment/tests/main.nf.test @@ -0,0 +1,175 @@ +nextflow_process { + + name "Test Process SQUIDPY_NHOOD_ENRICHMENT" + script "../main.nf" + process "SQUIDPY_NHOOD_ENRICHMENT" + + tag "modules" + tag "modules_local" + tag "squidpy_nhood_enrichment" + + test("homo_sapiens - h5ad") { + + setup { + run("UNTAR") { + script "../../../../nf-core/untar/main.nf" + process { + """ + input[0] = [ + [ id: 'CytAssist_11mm_FFPE_Human_Glioblastoma_2' ], file("https://raw.githubusercontent.com/nf-core/test-datasets/spatialvi/testdata/human-brain-cancer-11-mm-capture-area-ffpe-2-standard_v2_ffpe_cytassist/outs.tar.gz", checkIfExists: true) + ] + """ + } + } + run("SDATA_READ_VISIUM") { + script "../../../sdata/read_visium/main.nf" + process { + """ + input[0] = UNTAR.out.untar + input[1] = 8 // hd_bin_size + """ + } + } + run("SDATA_TO_LEGACY_ANNDATA") { + script "../../../sdata/to_legacy_anndata/main.nf" + process { + """ + input[0] = SDATA_READ_VISIUM.out.sdata + """ + } + } + run("SQUIDPY_SPATIAL_NEIGHBORS") { + script "../../spatial_neighbors/main.nf" + process { + """ + input[0] = SDATA_TO_LEGACY_ANNDATA.out.adata + input[1] = "grid" // coord_type + input[2] = 6 // n_neighs + """ + } + } + run("SCANPY_NEIGHBORS") { + script "../../../scanpy/neighbors/main.nf" + process { + """ + input[0] = SQUIDPY_SPATIAL_NEIGHBORS.out.adata + input[1] = 15 // n_neighbors + input[2] = 50 // n_pcs + input[3] = '' // use_rep + """ + } + } + run("SCANPY_LEIDEN") { + script "../../../scanpy/leiden/main.nf" + process { + """ + input[0] = SCANPY_NEIGHBORS.out.adata + input[1] = 1.0 // resolution + input[2] = 'clusters' // key_added + """ + } + } + } + + when { + process { + """ + input[0] = SCANPY_LEIDEN.out.adata + input[1] = 'clusters' // cluster_key + """ + } + } + + then { + assertAll( + { assert process.success }, + { assert snapshot( + process.out.versions, + anndata(process.out.adata[0][1]).yaml + ).match() } + ) + } + } + + test("homo_sapiens - h5ad - stub") { + + options "-stub" + + setup { + run("UNTAR") { + script "../../../../nf-core/untar/main.nf" + process { + """ + input[0] = [ + [ id: 'CytAssist_11mm_FFPE_Human_Glioblastoma_2' ], file("https://raw.githubusercontent.com/nf-core/test-datasets/spatialvi/testdata/human-brain-cancer-11-mm-capture-area-ffpe-2-standard_v2_ffpe_cytassist/outs.tar.gz", checkIfExists: true) + ] + """ + } + } + run("SDATA_READ_VISIUM") { + script "../../../sdata/read_visium/main.nf" + process { + """ + input[0] = UNTAR.out.untar + input[1] = 8 // hd_bin_size + """ + } + } + run("SDATA_TO_LEGACY_ANNDATA") { + script "../../../sdata/to_legacy_anndata/main.nf" + process { + """ + input[0] = SDATA_READ_VISIUM.out.sdata + """ + } + } + run("SQUIDPY_SPATIAL_NEIGHBORS") { + script "../../spatial_neighbors/main.nf" + process { + """ + input[0] = SDATA_TO_LEGACY_ANNDATA.out.adata + input[1] = "grid" // coord_type + input[2] = 6 // n_neighs + """ + } + } + run("SCANPY_NEIGHBORS") { + script "../../../scanpy/neighbors/main.nf" + process { + """ + input[0] = SQUIDPY_SPATIAL_NEIGHBORS.out.adata + input[1] = 15 // n_neighbors + input[2] = 50 // n_pcs + input[3] = '' // use_rep + """ + } + } + run("SCANPY_LEIDEN") { + script "../../../scanpy/leiden/main.nf" + process { + """ + input[0] = SCANPY_NEIGHBORS.out.adata + input[1] = 1.0 // resolution + input[2] = 'clusters' // key_added + """ + } + } + } + + when { + process { + """ + input[0] = SCANPY_LEIDEN.out.adata + input[1] = 'clusters' // cluster_key + """ + } + } + + then { + assertAll( + { assert process.success }, + { assert snapshot(process.out).match() } + ) + } + } +} diff --git a/modules/local/squidpy/nhood_enrichment/tests/main.nf.test.snap b/modules/local/squidpy/nhood_enrichment/tests/main.nf.test.snap new file mode 100644 index 00000000..f1eef2c0 --- /dev/null +++ b/modules/local/squidpy/nhood_enrichment/tests/main.nf.test.snap @@ -0,0 +1,102 @@ +{ + "homo_sapiens - h5ad": { + "content": [ + [ + "versions.yml:md5,3a9dec789188d5283280cd9de9897f53" + ], + { + "n_obs": 11397, + "n_vars": 19023, + "obs": { + "index": "_index", + "columns": [ + "array_col", + "array_row", + "clusters", + "in_tissue", + "region", + "spot_id" + ] + }, + "var": { + "index": "_index", + "columns": [ + "feature_types", + "gene_ids", + "genome" + ] + }, + "layers": [ + "raw" + ], + "obsm": [ + "X_pca", + "spatial" + ], + "varm": [ + "PCs" + ], + "obsp": [ + "connectivities", + "distances", + "spatial_connectivities", + "spatial_distances" + ], + "varp": [ + + ], + "uns": [ + "clusters", + "clusters_nhood_enrichment", + "coordinate_system", + "leiden", + "neighbors", + "pca", + "sample_id", + "spatial", + "spatial_neighbors", + "spatialdata_attrs", + "table_name" + ] + } + ], + "timestamp": "2026-04-01T19:14:30.789391", + "meta": { + "nf-test": "0.9.5", + "nextflow": "25.10.4" + } + }, + "homo_sapiens - h5ad - stub": { + "content": [ + { + "0": [ + [ + { + "id": "CytAssist_11mm_FFPE_Human_Glioblastoma_2" + }, + "CytAssist_11mm_FFPE_Human_Glioblastoma_2.h5ad:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ], + "1": [ + "versions.yml:md5,d41d8cd98f00b204e9800998ecf8427e" + ], + "adata": [ + [ + { + "id": "CytAssist_11mm_FFPE_Human_Glioblastoma_2" + }, + "CytAssist_11mm_FFPE_Human_Glioblastoma_2.h5ad:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ], + "versions": [ + "versions.yml:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + } + ], + "timestamp": "2026-04-01T21:15:01.607161", + "meta": { + "nf-test": "0.9.5", + "nextflow": "25.10.4" + } + } +} \ No newline at end of file diff --git a/modules/local/squidpy/spatial_autocorr/main.nf b/modules/local/squidpy/spatial_autocorr/main.nf new file mode 100644 index 00000000..efe2364d --- /dev/null +++ b/modules/local/squidpy/spatial_autocorr/main.nf @@ -0,0 +1,30 @@ +process SQUIDPY_SPATIAL_AUTOCORR { + tag "${meta.id}" + label 'process_high' + + container "community.wave.seqera.io/library/harmonypy_scanorama_gcc_gxx_pruned:95f731fde0b9ddef" + + input: + tuple val(meta), path(adata, stageAs: "input.h5ad") + val mode + + output: + tuple val(meta), path("${prefix}.h5ad"), emit: adata + tuple val(meta), path("${prefix}_svg.csv"), emit: csv + path "versions.yml", emit: versions, topic: versions + + when: + task.ext.when == null || task.ext.when + + script: + prefix = task.ext.prefix ?: "${meta.id}" + template 'spatial_autocorr.py' + + stub: + prefix = task.ext.prefix ?: "${meta.id}" + """ + touch ${prefix}.h5ad + touch ${prefix}_svg.csv + touch versions.yml + """ +} diff --git a/modules/local/squidpy/spatial_autocorr/templates/spatial_autocorr.py b/modules/local/squidpy/spatial_autocorr/templates/spatial_autocorr.py new file mode 100644 index 00000000..dbde290a --- /dev/null +++ b/modules/local/squidpy/spatial_autocorr/templates/spatial_autocorr.py @@ -0,0 +1,102 @@ +#!/usr/bin/env python3 +""" +Compute spatial autocorrelation statistics to identify spatially variable +genes. + +Supports Moran's I and Geary's C statistics for identifying genes with +spatially variable expression patterns. Results are stored in adata.uns +and exported to CSV. +""" + +# Disable OpenMP CPU topology detection for macOS compatibility +import os +os.environ["KMP_AFFINITY"] = "disabled" + +import importlib.metadata +import platform + +import anndata as ad +import squidpy as sq +import yaml + + +def get_results_key(mode): + """Get the uns key for results based on mode.""" + + +def compute_spatial_autocorr(adata, mode): + """Compute spatial autocorrelation statistics.""" + print(f"Shape: {adata.shape}") + print(f"Mode: {mode}") + + # Validate input + if "spatial_connectivities" not in adata.obsp: + raise ValueError( + "Spatial connectivities not found; " + "run squidpy.gr.spatial_neighbors first." + ) + + # Make var names unique + adata.var_names_make_unique() + + # Compute spatial autocorrelation + sq.gr.spatial_autocorr( + adata, + mode=mode + ) + + return adata + + +def write_svg_to_csv(adata, mode, output_csv): + """Export spatially variable genes results to CSV.""" + if mode == "moran": + results_key = "moranI" + elif mode == "geary": + results_key = "gearyC" + else: + raise ValueError(f"Unknown mode: {mode}. Use 'moran' or 'geary'.") + + svg_df = adata.uns[results_key] + svg_df.to_csv(output_csv) + print(f"Exported SVG results to: {output_csv}") + + +def write_versions(process_name): + """Write software versions to a YAML file.""" + versions = { + process_name: { + "python": platform.python_version(), + "squidpy": importlib.metadata.version("squidpy"), + "anndata": importlib.metadata.version("anndata"), + } + } + with open("versions.yml", "w") as f: + yaml.dump(versions, f) + + +def main(): + """Compute spatial autocorrelation for an AnnData object.""" + + # Template variables + h5ad = "${adata}" + mode = "${mode}" + output_adata = "${prefix}.h5ad" + output_csv = "${prefix}_svg.csv" + process_name = "${task.process}" + + adata = ad.read_h5ad(h5ad) + print(f"Computing spatial autocorrelation for: {h5ad}") + + adata = compute_spatial_autocorr(adata, mode) + + write_svg_to_csv(adata, mode, output_csv) + + adata.write_h5ad(output_adata) + print(f"Written AnnData with spatial autocorrelation to: {output_adata}") + + write_versions(process_name) + + +if __name__ == "__main__": + main() diff --git a/modules/local/squidpy/spatial_autocorr/tests/main.nf.test b/modules/local/squidpy/spatial_autocorr/tests/main.nf.test new file mode 100644 index 00000000..bee39914 --- /dev/null +++ b/modules/local/squidpy/spatial_autocorr/tests/main.nf.test @@ -0,0 +1,197 @@ +nextflow_process { + + name "Test Process SQUIDPY_SPATIAL_AUTOCORR" + script "../main.nf" + process "SQUIDPY_SPATIAL_AUTOCORR" + + tag "modules" + tag "modules_local" + tag "squidpy_spatial_autocorr" + + test("homo_sapiens - h5ad - moran") { + + setup { + run("UNTAR") { + script "../../../../nf-core/untar/main.nf" + process { + """ + input[0] = [ + [ id: 'CytAssist_11mm_FFPE_Human_Glioblastoma_2' ], file("https://raw.githubusercontent.com/nf-core/test-datasets/spatialvi/testdata/human-brain-cancer-11-mm-capture-area-ffpe-2-standard_v2_ffpe_cytassist/outs.tar.gz", checkIfExists: true) + ] + """ + } + } + run("SDATA_READ_VISIUM") { + script "../../../sdata/read_visium/main.nf" + process { + """ + input[0] = UNTAR.out.untar + input[1] = 8 // hd_bin_size + """ + } + } + run("SDATA_TO_LEGACY_ANNDATA") { + script "../../../sdata/to_legacy_anndata/main.nf" + process { + """ + input[0] = SDATA_READ_VISIUM.out.sdata + """ + } + } + run("SQUIDPY_SPATIAL_NEIGHBORS") { + script "../../spatial_neighbors/main.nf" + process { + """ + input[0] = SDATA_TO_LEGACY_ANNDATA.out.adata + input[1] = 'grid' // coord_type + input[2] = 6 // n_neighs + """ + } + } + } + + when { + process { + """ + input[0] = SQUIDPY_SPATIAL_NEIGHBORS.out.adata + input[1] = 'moran' // mode + """ + } + } + + then { + assertAll( + { assert process.success }, + { assert snapshot( + process.out.versions, + anndata(process.out.adata[0][1]).yaml + ).match() }, + { assert path(process.out.csv[0][1]).readLines().size() == 19024} + ) + } + } + + test("homo_sapiens - h5ad - geary") { + + setup { + run("UNTAR") { + script "../../../../nf-core/untar/main.nf" + process { + """ + input[0] = [ + [ id: 'CytAssist_11mm_FFPE_Human_Glioblastoma_2' ], file("https://raw.githubusercontent.com/nf-core/test-datasets/spatialvi/testdata/human-brain-cancer-11-mm-capture-area-ffpe-2-standard_v2_ffpe_cytassist/outs.tar.gz", checkIfExists: true) + ] + """ + } + } + run("SDATA_READ_VISIUM") { + script "../../../sdata/read_visium/main.nf" + process { + """ + input[0] = UNTAR.out.untar + input[1] = 8 // hd_bin_size + """ + } + } + run("SDATA_TO_LEGACY_ANNDATA") { + script "../../../sdata/to_legacy_anndata/main.nf" + process { + """ + input[0] = SDATA_READ_VISIUM.out.sdata + """ + } + } + run("SQUIDPY_SPATIAL_NEIGHBORS") { + script "../../spatial_neighbors/main.nf" + process { + """ + input[0] = SDATA_TO_LEGACY_ANNDATA.out.adata + input[1] = 'grid' // coord_type + input[2] = 6 // n_neighs + """ + } + } + } + + when { + process { + """ + input[0] = SQUIDPY_SPATIAL_NEIGHBORS.out.adata + input[1] = 'geary' // mode + """ + } + } + + then { + assertAll( + { assert process.success }, + { assert snapshot( + process.out.versions, + anndata(process.out.adata[0][1]).yaml + ).match() }, + { assert path(process.out.csv[0][1]).readLines().size() == 19024} + ) + } + } + + test("homo_sapiens - h5ad - stub") { + + options "-stub" + + setup { + run("UNTAR") { + script "../../../../nf-core/untar/main.nf" + process { + """ + input[0] = [ + [ id: 'CytAssist_11mm_FFPE_Human_Glioblastoma_2' ], file("https://raw.githubusercontent.com/nf-core/test-datasets/spatialvi/testdata/human-brain-cancer-11-mm-capture-area-ffpe-2-standard_v2_ffpe_cytassist/outs.tar.gz", checkIfExists: true) + ] + """ + } + } + run("SDATA_READ_VISIUM") { + script "../../../sdata/read_visium/main.nf" + process { + """ + input[0] = UNTAR.out.untar + input[1] = 8 // hd_bin_size + """ + } + } + run("SDATA_TO_LEGACY_ANNDATA") { + script "../../../sdata/to_legacy_anndata/main.nf" + process { + """ + input[0] = SDATA_READ_VISIUM.out.sdata + """ + } + } + run("SQUIDPY_SPATIAL_NEIGHBORS") { + script "../../spatial_neighbors/main.nf" + process { + """ + input[0] = SDATA_TO_LEGACY_ANNDATA.out.adata + input[1] = 'grid' // coord_type + input[2] = 6 // n_neighs + """ + } + } + } + + when { + process { + """ + input[0] = SQUIDPY_SPATIAL_NEIGHBORS.out.adata + input[1] = 'moran' // mode + """ + } + } + + then { + assertAll( + { assert process.success }, + { assert snapshot(process.out).match() } + ) + } + } +} diff --git a/modules/local/squidpy/spatial_autocorr/tests/main.nf.test.snap b/modules/local/squidpy/spatial_autocorr/tests/main.nf.test.snap new file mode 100644 index 00000000..8e927c16 --- /dev/null +++ b/modules/local/squidpy/spatial_autocorr/tests/main.nf.test.snap @@ -0,0 +1,169 @@ +{ + "homo_sapiens - h5ad - moran": { + "content": [ + [ + "versions.yml:md5,47a9ced7fad317df79a0be23f28c3642" + ], + { + "n_obs": 11397, + "n_vars": 19023, + "obs": { + "index": "_index", + "columns": [ + "array_col", + "array_row", + "in_tissue", + "region", + "spot_id" + ] + }, + "var": { + "index": "_index", + "columns": [ + "feature_types", + "gene_ids", + "genome" + ] + }, + "layers": [ + "raw" + ], + "obsm": [ + "spatial" + ], + "varm": [ + + ], + "obsp": [ + "spatial_connectivities", + "spatial_distances" + ], + "varp": [ + + ], + "uns": [ + "coordinate_system", + "moranI", + "sample_id", + "spatial", + "spatial_neighbors", + "spatialdata_attrs", + "table_name" + ] + } + ], + "timestamp": "2026-04-01T19:15:56.311204", + "meta": { + "nf-test": "0.9.5", + "nextflow": "25.10.4" + } + }, + "homo_sapiens - h5ad - geary": { + "content": [ + [ + "versions.yml:md5,47a9ced7fad317df79a0be23f28c3642" + ], + { + "n_obs": 11397, + "n_vars": 19023, + "obs": { + "index": "_index", + "columns": [ + "array_col", + "array_row", + "in_tissue", + "region", + "spot_id" + ] + }, + "var": { + "index": "_index", + "columns": [ + "feature_types", + "gene_ids", + "genome" + ] + }, + "layers": [ + "raw" + ], + "obsm": [ + "spatial" + ], + "varm": [ + + ], + "obsp": [ + "spatial_connectivities", + "spatial_distances" + ], + "varp": [ + + ], + "uns": [ + "coordinate_system", + "gearyC", + "sample_id", + "spatial", + "spatial_neighbors", + "spatialdata_attrs", + "table_name" + ] + } + ], + "timestamp": "2026-04-01T19:16:54.537333", + "meta": { + "nf-test": "0.9.5", + "nextflow": "25.10.4" + } + }, + "homo_sapiens - h5ad - stub": { + "content": [ + { + "0": [ + [ + { + "id": "CytAssist_11mm_FFPE_Human_Glioblastoma_2" + }, + "CytAssist_11mm_FFPE_Human_Glioblastoma_2.h5ad:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ], + "1": [ + [ + { + "id": "CytAssist_11mm_FFPE_Human_Glioblastoma_2" + }, + "CytAssist_11mm_FFPE_Human_Glioblastoma_2_svg.csv:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ], + "2": [ + "versions.yml:md5,d41d8cd98f00b204e9800998ecf8427e" + ], + "adata": [ + [ + { + "id": "CytAssist_11mm_FFPE_Human_Glioblastoma_2" + }, + "CytAssist_11mm_FFPE_Human_Glioblastoma_2.h5ad:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ], + "csv": [ + [ + { + "id": "CytAssist_11mm_FFPE_Human_Glioblastoma_2" + }, + "CytAssist_11mm_FFPE_Human_Glioblastoma_2_svg.csv:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ], + "versions": [ + "versions.yml:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + } + ], + "timestamp": "2026-04-01T21:17:27.392373", + "meta": { + "nf-test": "0.9.5", + "nextflow": "25.10.4" + } + } +} \ No newline at end of file diff --git a/modules/local/squidpy/spatial_neighbors/main.nf b/modules/local/squidpy/spatial_neighbors/main.nf new file mode 100644 index 00000000..0a178768 --- /dev/null +++ b/modules/local/squidpy/spatial_neighbors/main.nf @@ -0,0 +1,29 @@ +process SQUIDPY_SPATIAL_NEIGHBORS { + tag "${meta.id}" + label 'process_medium' + + container "community.wave.seqera.io/library/harmonypy_scanorama_gcc_gxx_pruned:95f731fde0b9ddef" + + input: + tuple val(meta), path(adata, stageAs: "input.h5ad") + val coord_type + val n_neighs + + output: + tuple val(meta), path("${prefix}.h5ad"), emit: adata + path "versions.yml", emit: versions, topic: versions + + when: + task.ext.when == null || task.ext.when + + script: + prefix = task.ext.prefix ?: "${meta.id}" + template 'spatial_neighbors.py' + + stub: + prefix = task.ext.prefix ?: "${meta.id}" + """ + touch ${prefix}.h5ad + touch versions.yml + """ +} diff --git a/modules/local/squidpy/spatial_neighbors/templates/spatial_neighbors.py b/modules/local/squidpy/spatial_neighbors/templates/spatial_neighbors.py new file mode 100644 index 00000000..c8ab2f67 --- /dev/null +++ b/modules/local/squidpy/spatial_neighbors/templates/spatial_neighbors.py @@ -0,0 +1,68 @@ +#!/usr/bin/env python3 +""" +Compute spatial neighbors graph based on spatial coordinates. + +Creates a spatial connectivity graph where observations are connected +to their nearest neighbors in physical space. Results are stored in +adata.obsp as sparse matrices. +""" + +# Disable OpenMP CPU topology detection for macOS compatibility +import os +os.environ["KMP_AFFINITY"] = "disabled" + +import importlib.metadata +import platform + +import anndata as ad +import squidpy as sq +import yaml + + +def write_versions(process_name): + """Write software versions to a YAML file.""" + versions = { + process_name: { + "python": platform.python_version(), + "anndata": importlib.metadata.version("anndata"), + "squidpy": importlib.metadata.version("squidpy") + } + } + with open("versions.yml", "w") as f: + yaml.dump(versions, f) + + +def main(): + """Compute spatial neighbors graph based on spatial coordinates.""" + # Template variables + h5ad = "${adata}" + coord_type = "${coord_type}" + n_neighs = int("${n_neighs}") + output_adata = "${prefix}.h5ad" + process_name = "${task.process}" + + print(f"Reading: {h5ad}") + adata = ad.read_h5ad(h5ad) + print(f"AnnData shape: {adata.shape}") + print(f"Coord type: {coord_type}") + print(f"Number of neighbors: {n_neighs}") + + if "spatial" not in adata.obsm: + raise ValueError( + "Spatial coordinates not found in adata.obsm['spatial']" + ) + + sq.gr.spatial_neighbors(adata, coord_type=coord_type, n_neighs=n_neighs) + + print("Computed spatial neighbor graph") + print(f"Connectivities shape: {adata.obsp['spatial_connectivities'].shape}") + print(f"Distances shape: {adata.obsp['spatial_distances'].shape}") + + adata.write_h5ad(output_adata) + print(f"Written AnnData with spatial neighbors to: {output_adata}") + + write_versions(process_name) + + +if __name__ == "__main__": + main() diff --git a/modules/local/squidpy/spatial_neighbors/tests/main.nf.test b/modules/local/squidpy/spatial_neighbors/tests/main.nf.test new file mode 100644 index 00000000..55d7c7e6 --- /dev/null +++ b/modules/local/squidpy/spatial_neighbors/tests/main.nf.test @@ -0,0 +1,168 @@ +nextflow_process { + + name "Test Process SQUIDPY_SPATIAL_NEIGHBORS" + script "../main.nf" + process "SQUIDPY_SPATIAL_NEIGHBORS" + + tag "modules" + tag "modules_local" + tag "squidpy_spatial_neighbors" + + test("homo_sapiens - h5ad - grid") { + + setup { + run("UNTAR") { + script "../../../../nf-core/untar/main.nf" + process { + """ + input[0] = [ + [ id: 'CytAssist_11mm_FFPE_Human_Glioblastoma_2' ], file("https://raw.githubusercontent.com/nf-core/test-datasets/spatialvi/testdata/human-brain-cancer-11-mm-capture-area-ffpe-2-standard_v2_ffpe_cytassist/outs.tar.gz", checkIfExists: true) + ] + """ + } + } + run("SDATA_READ_VISIUM") { + script "../../../sdata/read_visium/main.nf" + process { + """ + input[0] = UNTAR.out.untar + input[1] = 8 // hd_bin_size + """ + } + } + run("SDATA_TO_LEGACY_ANNDATA") { + script "../../../sdata/to_legacy_anndata/main.nf" + process { + """ + input[0] = SDATA_READ_VISIUM.out.sdata + """ + } + } + } + + when { + process { + """ + input[0] = SDATA_TO_LEGACY_ANNDATA.out.adata + input[1] = 'grid' // coord_type + input[2] = 6 // n_neighs + """ + } + } + + then { + assertAll( + { assert process.success }, + { assert snapshot( + process.out.versions, + anndata(process.out.adata[0][1]).yaml + ).match() } + ) + } + } + + test("homo_sapiens - h5ad - generic") { + + setup { + run("UNTAR") { + script "../../../../nf-core/untar/main.nf" + process { + """ + input[0] = [ + [ id: 'CytAssist_11mm_FFPE_Human_Glioblastoma_2' ], file("https://raw.githubusercontent.com/nf-core/test-datasets/spatialvi/testdata/human-brain-cancer-11-mm-capture-area-ffpe-2-standard_v2_ffpe_cytassist/outs.tar.gz", checkIfExists: true) + ] + """ + } + } + run("SDATA_READ_VISIUM") { + script "../../../sdata/read_visium/main.nf" + process { + """ + input[0] = UNTAR.out.untar + input[1] = 8 // hd_bin_size + """ + } + } + run("SDATA_TO_LEGACY_ANNDATA") { + script "../../../sdata/to_legacy_anndata/main.nf" + process { + """ + input[0] = SDATA_READ_VISIUM.out.sdata + """ + } + } + } + + when { + process { + """ + input[0] = SDATA_TO_LEGACY_ANNDATA.out.adata + input[1] = 'generic' // coord_type + input[2] = 6 // n_neighs + """ + } + } + + then { + assertAll( + { assert process.success }, + { assert snapshot( + process.out.versions, + anndata(process.out.adata[0][1]).yaml + ).match() } + ) + } + } + + test("homo_sapiens - h5ad - stub") { + + options "-stub" + + setup { + run("UNTAR") { + script "../../../../nf-core/untar/main.nf" + process { + """ + input[0] = [ + [ id: 'CytAssist_11mm_FFPE_Human_Glioblastoma_2' ], file("https://raw.githubusercontent.com/nf-core/test-datasets/spatialvi/testdata/human-brain-cancer-11-mm-capture-area-ffpe-2-standard_v2_ffpe_cytassist/outs.tar.gz", checkIfExists: true) + ] + """ + } + } + run("SDATA_READ_VISIUM") { + script "../../../sdata/read_visium/main.nf" + process { + """ + input[0] = UNTAR.out.untar + input[1] = 8 // hd_bin_size + """ + } + } + run("SDATA_TO_LEGACY_ANNDATA") { + script "../../../sdata/to_legacy_anndata/main.nf" + process { + """ + input[0] = SDATA_READ_VISIUM.out.sdata + """ + } + } + } + + when { + process { + """ + input[0] = SDATA_TO_LEGACY_ANNDATA.out.adata + input[1] = 'grid' // coord_type + input[2] = 6 // n_neighs + """ + } + } + + then { + assertAll( + { assert process.success }, + { assert snapshot(process.out).match() } + ) + } + } +} diff --git a/modules/local/squidpy/spatial_neighbors/tests/main.nf.test.snap b/modules/local/squidpy/spatial_neighbors/tests/main.nf.test.snap new file mode 100644 index 00000000..42d6aa52 --- /dev/null +++ b/modules/local/squidpy/spatial_neighbors/tests/main.nf.test.snap @@ -0,0 +1,151 @@ +{ + "homo_sapiens - h5ad - generic": { + "content": [ + [ + "versions.yml:md5,1af8ea16ef6f0a48c58bca6f26a978a0" + ], + { + "n_obs": 11397, + "n_vars": 19023, + "obs": { + "index": "_index", + "columns": [ + "array_col", + "array_row", + "in_tissue", + "region", + "spot_id" + ] + }, + "var": { + "index": "_index", + "columns": [ + "feature_types", + "gene_ids", + "genome" + ] + }, + "layers": [ + "raw" + ], + "obsm": [ + "spatial" + ], + "varm": [ + + ], + "obsp": [ + "spatial_connectivities", + "spatial_distances" + ], + "varp": [ + + ], + "uns": [ + "coordinate_system", + "sample_id", + "spatial", + "spatial_neighbors", + "spatialdata_attrs", + "table_name" + ] + } + ], + "timestamp": "2026-04-01T19:18:48.567672", + "meta": { + "nf-test": "0.9.5", + "nextflow": "25.10.4" + } + }, + "homo_sapiens - h5ad - stub": { + "content": [ + { + "0": [ + [ + { + "id": "CytAssist_11mm_FFPE_Human_Glioblastoma_2" + }, + "CytAssist_11mm_FFPE_Human_Glioblastoma_2.h5ad:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ], + "1": [ + "versions.yml:md5,d41d8cd98f00b204e9800998ecf8427e" + ], + "adata": [ + [ + { + "id": "CytAssist_11mm_FFPE_Human_Glioblastoma_2" + }, + "CytAssist_11mm_FFPE_Human_Glioblastoma_2.h5ad:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + ], + "versions": [ + "versions.yml:md5,d41d8cd98f00b204e9800998ecf8427e" + ] + } + ], + "timestamp": "2026-04-01T21:19:20.858772", + "meta": { + "nf-test": "0.9.5", + "nextflow": "25.10.4" + } + }, + "homo_sapiens - h5ad - grid": { + "content": [ + [ + "versions.yml:md5,1af8ea16ef6f0a48c58bca6f26a978a0" + ], + { + "n_obs": 11397, + "n_vars": 19023, + "obs": { + "index": "_index", + "columns": [ + "array_col", + "array_row", + "in_tissue", + "region", + "spot_id" + ] + }, + "var": { + "index": "_index", + "columns": [ + "feature_types", + "gene_ids", + "genome" + ] + }, + "layers": [ + "raw" + ], + "obsm": [ + "spatial" + ], + "varm": [ + + ], + "obsp": [ + "spatial_connectivities", + "spatial_distances" + ], + "varp": [ + + ], + "uns": [ + "coordinate_system", + "sample_id", + "spatial", + "spatial_neighbors", + "spatialdata_attrs", + "table_name" + ] + } + ], + "timestamp": "2026-04-01T19:18:02.601779", + "meta": { + "nf-test": "0.9.5", + "nextflow": "25.10.4" + } + } +} \ No newline at end of file diff --git a/nextflow.config b/nextflow.config index 9df69911..5bb9f4b8 100644 --- a/nextflow.config +++ b/nextflow.config @@ -10,74 +10,99 @@ params { // Input options - input = null + input = null // Spaceranger options - spaceranger_reference = "https://cf.10xgenomics.com/supp/spatial-exp/refdata-gex-GRCh38-2020-A.tar.gz" - spaceranger_probeset = null - spaceranger_save_reference = false + spaceranger_reference = "https://cf.10xgenomics.com/supp/spatial-exp/refdata-gex-GRCh38-2020-A.tar.gz" + spaceranger_probeset = null - // Visium HD data specific options - hd_bin_size = 8 + // Visium HD options + hd_bin_size = 8 - // Quality controls and filtering - qc_min_counts = 500 - qc_min_genes = 250 - qc_min_spots = 1 - qc_mito_threshold = 20.0 - qc_ribo_threshold = 0.0 - qc_hb_threshold = 100.0 + // Filtering options + qc_min_counts = 500 + qc_min_genes = 250 + qc_min_spots = 1 + qc_mito_threshold = 20.0 + qc_ribo_threshold = 0.0 + qc_hb_threshold = 100.0 - // Clustering - cluster_n_hvgs = 2000 - cluster_resolution = 1.0 + // Normalization options + normalize_target_sum = 0 + + // Highly variable genes options + n_highly_variable_genes = 2000 + hvg_flavor = "seurat" + + // Principal component analysis options + n_principal_components = 50 + pca_use_highly_variable = true + + // Nearest neighbors options + n_neighbors = 15 + neighbors_n_pcs = 50 + + // Dimensionality reduction options + umap_min_dist = 0.5 + umap_spread = 1.0 + + // Clustering options + cluster_resolution = 1.0 + + // Rank genes groups options + rank_genes_method = "wilcoxon" + + // Spatial neighborhood options + spatial_coord_type = "grid" + spatial_n_neighbors = 6 // Spatially variable genes - svg_autocorr_method = "moran" - n_top_svgs = 14 + svg_autocorr_method = "moran" + n_top_svgs = 15 - // Data aggregation - merge_sdata = false - integrate_sdata = false + // Integration options + integrate_data = true + integration_method = 'harmony' integration_cluster_resolution = 1.0 - integration_n_hvgs = 2000 // MultiQC options - multiqc_config = null - multiqc_title = null - multiqc_logo = null - max_multiqc_email_size = '25.MB' - multiqc_methods_description = null + multiqc_config = null + multiqc_title = null + multiqc_logo = null + max_multiqc_email_size = '25.MB' + multiqc_methods_description = null - // Untar options - save_untar_output = false + // Optional outputs + spaceranger_save_reference = false + save_untar_output = false + skip_downstream = false // Boilerplate options - outdir = null - publish_dir_mode = 'copy' - email = null - email_on_fail = null - plaintext_email = false - monochrome_logs = false - hook_url = System.getenv('HOOK_URL') - help = false - help_full = false - show_hidden = false - version = false - pipelines_testdata_base_path = 'https://raw.githubusercontent.com/nf-core/test-datasets/' - trace_report_suffix = new java.util.Date().format( 'yyyy-MM-dd_HH-mm-ss') + outdir = null + publish_dir_mode = 'copy' + email = null + email_on_fail = null + plaintext_email = false + monochrome_logs = false + hook_url = System.getenv('HOOK_URL') + help = false + help_full = false + show_hidden = false + version = false + pipelines_testdata_base_path = 'https://raw.githubusercontent.com/nf-core/test-datasets/' + trace_report_suffix = new java.util.Date().format( 'yyyy-MM-dd_HH-mm-ss') // Config options - config_profile_name = null - config_profile_description = null + config_profile_name = null + config_profile_description = null - custom_config_version = 'master' - custom_config_base = "https://raw.githubusercontent.com/nf-core/configs/${params.custom_config_version}" - config_profile_contact = null - config_profile_url = null + custom_config_version = 'master' + custom_config_base = "https://raw.githubusercontent.com/nf-core/configs/${params.custom_config_version}" + config_profile_contact = null + config_profile_url = null // Schema validation default options - validate_params = true + validate_params = true } // Load base.config by default for all pipelines @@ -143,6 +168,8 @@ profiles { shifter.enabled = false charliecloud.enabled = false apptainer.enabled = false + // In nextflow.config + envWhitelist = 'NUMBA_CACHE_DIR,MPLCONFIGDIR,HOME' } podman { podman.enabled = true @@ -193,11 +220,12 @@ profiles { apptainer.runOptions = '--nv' singularity.runOptions = '--nv' } - test { includeConfig 'conf/test.config' } - test_spaceranger_hd { includeConfig 'conf/test_spaceranger_hd.config' } - test_spaceranger_v1 { includeConfig 'conf/test_spaceranger_v1.config' } - test_downstream { includeConfig 'conf/test_downstream.config' } - test_full { includeConfig 'conf/test_full.config' } + test { includeConfig 'conf/test.config' } + test_spaceranger_hd { includeConfig 'conf/test_spaceranger_hd.config' } + test_spaceranger_v1 { includeConfig 'conf/test_spaceranger_v1.config' } + test_downstream { includeConfig 'conf/test_downstream.config' } + test_skip_downstream { includeConfig 'conf/test_skip_downstream.config' } + test_full { includeConfig 'conf/test_full.config' } } // Load nf-core custom profiles from different institutions @@ -228,6 +256,8 @@ env { R_PROFILE_USER = "/.Rprofile" R_ENVIRON_USER = "/.Renviron" JULIA_DEPOT_PATH = "/usr/local/share/julia" + NUMBA_CACHE_DIR = '/tmp/numba_cache' + MPLCONFIGDIR = '/tmp/matplotlib' } // Set bash options diff --git a/nextflow_schema.json b/nextflow_schema.json index f4d65705..3f716d9f 100644 --- a/nextflow_schema.json +++ b/nextflow_schema.json @@ -71,40 +71,28 @@ } }, - "optional_outputs": { - "title": "Optional outputs", + "visium_hd_options": { + "title": "Visium HD options", "type": "object", - "fa_icon": "fas fa-floppy-disk", - "description": "Additional intermediate output files that can be optionally saved.", + "fa_icon": "fas fa-table-cells", + "description": "Options specific to the analysis of Visium HD data.", "properties": { - "spaceranger_save_reference": { - "type": "boolean", - "description": "Save the extracted tar archive of the Space Ranger reference.", - "help_text": "By default, extracted versions of archived Space Ranger reference data will not be saved to the results directory. Specify this flag (or set to true in your config file) to copy these files to the results directory when complete.", - "fa_icon": "fas fa-floppy-disk" - }, - "save_untar_output": { - "type": "boolean", - "description": "Save extracted tar archives of input data.", - "help_text": "By default, extracted versions of archived input data will not be saved to the results directory. Specify this flag (or set to true in your config file) to copy these files to the results directory when complete.", - "fa_icon": "fas fa-floppy-disk" + "hd_bin_size": { + "type": "integer", + "default": 8, + "enum": [2, 8, 16], + "description": "Bin size for Visium HD data. Allowed values: 2, 8, 16.", + "fa_icon": "fas fa-expand" } } }, - "analysis_options": { - "title": "Analysis options", + "filtering_options": { + "title": "Filtering options", "type": "object", - "fa_icon": "fas fa-magnifying-glass-chart", - "description": "Options related to the downstream analyses performed by the pipeline.", + "fa_icon": "fas fa-filter", + "description": "Filtering settings and thresholds used by the pipeline", "properties": { - "hd_bin_size": { - "type": "integer", - "description": "Bin size for Visium HD data. Only used for Visium HD. Allowed values: 2, 8, 16.", - "enum": [2, 8, 16], - "default": 8, - "fa_icon": "fas fa-expand" - }, "qc_min_counts": { "type": "integer", "default": 500, @@ -141,51 +129,194 @@ "default": 100, "description": "The maximum proportion of haemoglobin content that a spot is allowed to have to pass the filtering (no filtering is done by default).", "fa_icon": "fas fa-hashtag" - }, - "cluster_n_hvgs": { + } + } + }, + + "normalization_options": { + "title": "Normalization options", + "type": "object", + "fa_icon": "fas fa-filter", + "description": "Normalization options used by the pipeline.", + "properties": { + "normalize_target_sum": { + "type": "integer", + "default": 0, + "description": "Target sum for normalization of counts per cell.", + "help_text": "By default (with value 0), normalizes so that each cell has a total count equal to the median cell total before normalization. By specifying `1000000` the normalization become CPM normalization; `10000` is another common option for scRNA-seq data.", + "fa_icon": "fas fa-crosshairs" + } + } + }, + + "hvg_options": { + "title": "Highly variable genes options", + "type": "object", + "fa_icon": "fas fa-arrow-trend-up", + "description": "Options for calculating highly variable genes.", + "properties": { + "n_highly_variable_genes": { "type": "integer", "default": 2000, "description": "The number of top highly variable genes to use for the analyses.", "fa_icon": "fas fa-hashtag" }, + "hvg_flavor": { + "type": "string", + "default": "seurat", + "enum": ["seurat", "cell_ranger"], + "description": "The method for identifying highly variable genes", + "fa_icon": "fas fa-cookie-bite" + } + } + }, + + "pca_options": { + "title": "Principal component analysis options", + "type": "object", + "fa_icon": "fas fa-uncharted", + "description": "Options for principal component analyses used in the pipeline.", + "properties": { + "n_principal_components": { + "type": "integer", + "default": 50, + "description": "The number of principal components to use for downstream analyses.", + "fa_icon": "fas fa-hashtag" + }, + "pca_use_highly_variable": { + "type": "boolean", + "description": "Whether to use highly variable genes only for principal component analyses.", + "fa_icon": "fas fa-arrow-trend-up" + } + } + }, + + "nearest_neighbors_options": { + "title": "Nearest neighbors options", + "type": "object", + "fa_icon": "fas fa-square-share-nodes", + "description": "Options for nearest neighbors calculations.", + "properties": { + "n_neighbors": { + "type": "integer", + "default": 15, + "description": "The number of nearest neighbors to use for the neighborhood graph calculation.", + "fa_icon": "fas fa-hashtag" + }, + "neighbors_n_pcs": { + "type": "integer", + "default": 50, + "description": "The number of principal components to use for the nearest neighbors calculation.", + "fa_icon": "fas fa-hashtag" + } + } + }, + + "dimensionality_reduction_options": { + "title": "Dimensionality reduction options", + "type": "object", + "fa_icon": "fas fa-down-left-and-up-right-to-center", + "description": "Options for the dimensionality reductions performed by the pipeline.", + "properties": { + "umap_min_dist": { + "type": "number", + "default": 0.5, + "description": "Minimium distance between points in the UMAP embedding, where lower values produces tigher clusters.", + "fa_icon": "fas fa-hashtag" + }, + "umap_spread": { + "type": "number", + "default": 1.0, + "description": "Scale of the UMAP embedding, where larger values spread points further away from each other.", + "fa_icon": "fas fa-hashtag" + } + } + }, + + "clustering_options": { + "title": "Clustering options", + "type": "object", + "fa_icon": "fas fa-circle-nodes", + "description": "Options for the dimensionality reductions performed by the pipeline.", + "properties": { "cluster_resolution": { "type": "number", "default": 1, "description": "The resolution for the clustering of the spots.", "help_text": "The resolution controls the coarseness of the clustering, where a higher resolution leads to more clusters.", - "fa_icon": "fas fa-circle-nodes" + "fa_icon": "fas fa-hashtag" + } + } + }, + + "rank_genes_groups_options": { + "title": "Rank genes groups options", + "type": "object", + "fa_icon": "fas fa-chart-gantt", + "description": "Options for determinig spatially variable genes.", + "properties": { + "rank_genes_method": { + "type": "string", + "default": "wilcoxon", + "description": "Statistical method to use for differential expression testing.", + "enum": ["logreg", "t-test", "t-test_overestim_var", "wilcoxon"], + "fa_icon": "fas fa-tag" + } + } + }, + + "spatial_analysis_options": { + "title": "Spatial analysis options", + "type": "object", + "fa_icon": "fas fa-circle-nodes", + "description": "Options for the various spatial analyses performed by the pipeline.", + "properties": { + "spatial_coord_type": { + "type": "string", + "default": "grid", + "enum": ["generic", "grid"], + "description": "The coordinate type to use for spatial neighborhood enrichment.", + "fa_icon": "fas fa-tag" + }, + "spatial_n_neighbors": { + "type": "integer", + "default": 6, + "description": "Number of neighborhoods to use for spatial neighborhood enrichment.", + "fa_icon": "fas fa-hashtag" }, "svg_autocorr_method": { "type": "string", "default": "moran", - "description": "The method to use for spatially variable gene autocorrelation.", "enum": ["moran", "geary"], - "fa_icon": "fas fa-circle-nodes" + "description": "The method to use for spatially variable gene autocorrelation.", + "fa_icon": "fas fa-tag" }, "n_top_svgs": { "type": "integer", - "default": 14, + "default": 15, "description": "The number of top spatially variable genes to plot.", "fa_icon": "fas fa-hashtag" } } }, - "aggregation_options": { - "title": "Data aggregation options", + "integration_options": { + "title": "Integration options", "type": "object", "fa_icon": "fas fa-rocket", "description": "Options related to aggregation of final data objects", "properties": { - "merge_sdata": { + "integrate_data": { "type": "boolean", - "description": "Merge per-sample SpatialData objects into one.", + "description": "Integrate per-sample objects into one and output a integration report.", "fa_icon": "fas fa-arrows-to-dot" }, - "integrate_sdata": { - "type": "boolean", - "description": "Integrate per-sample SpatialData objects into one and output a integration report.", - "fa_icon": "fas fa-arrows-to-dot" + "integration_method": { + "type": "string", + "default": "harmony", + "enum": ["harmony", "scanorama"], + "description": "The integration method to use", + "fa_icon": "fas fa-tag" }, "integration_cluster_resolution": { "type": "number", @@ -193,12 +324,33 @@ "description": "The resolution for the clustering of the spots after integration of samples.", "help_text": "The resolution controls the coarseness of the clustering, where a higher resolution leads to more clusters.", "fa_icon": "fas fa-circle-nodes" + } + } + }, + + "optional_outputs": { + "title": "Optional outputs", + "type": "object", + "fa_icon": "fas fa-floppy-disk", + "description": "Additional intermediate output files that can be optionally saved.", + "properties": { + "spaceranger_save_reference": { + "type": "boolean", + "description": "Save the extracted tar archive of the Space Ranger reference.", + "help_text": "By default, extracted versions of archived Space Ranger reference data will not be saved to the results directory. Specify this flag (or set to true in your config file) to copy these files to the results directory when complete.", + "fa_icon": "fas fa-floppy-disk" }, - "integration_n_hvgs": { - "type": "integer", - "default": 2000, - "description": "Number of highly variable genes to use for integration of samples.", - "fa_icon": "fas fa-hashtag" + "save_untar_output": { + "type": "boolean", + "description": "Save extracted tar archives of input data.", + "help_text": "By default, extracted versions of archived input data will not be saved to the results directory. Specify this flag (or set to true in your config file) to copy these files to the results directory when complete.", + "fa_icon": "fas fa-floppy-disk" + }, + "skip_downstream": { + "type": "boolean", + "description": "Skip downstream analyses.", + "help_text": "This option will only give Space Ranger outputs, a MultiQC report and unmodified SpatialData objects (both per-sample and merged).", + "fa_icon": "fas fa-ban" } } }, @@ -251,6 +403,7 @@ } } }, + "generic_options": { "title": "Generic options", "type": "object", @@ -297,7 +450,7 @@ }, "monochrome_logs": { "type": "boolean", - "description": "Do not use coloured log outputs.", + "description": "Do not use colored log outputs.", "fa_icon": "fas fa-palette", "hidden": true }, @@ -369,13 +522,40 @@ "$ref": "#/$defs/spaceranger_options" }, { - "$ref": "#/$defs/optional_outputs" + "$ref": "#/$defs/visium_hd_options" }, { - "$ref": "#/$defs/analysis_options" + "$ref": "#/$defs/filtering_options" }, { - "$ref": "#/$defs/aggregation_options" + "$ref": "#/$defs/normalization_options" + }, + { + "$ref": "#/$defs/hvg_options" + }, + { + "$ref": "#/$defs/pca_options" + }, + { + "$ref": "#/$defs/nearest_neighbors_options" + }, + { + "$ref": "#/$defs/dimensionality_reduction_options" + }, + { + "$ref": "#/$defs/clustering_options" + }, + { + "$ref": "#/$defs/rank_genes_groups_options" + }, + { + "$ref": "#/$defs/spatial_analysis_options" + }, + { + "$ref": "#/$defs/integration_options" + }, + { + "$ref": "#/$defs/optional_outputs" }, { "$ref": "#/$defs/institutional_config_options" diff --git a/nf-test.config b/nf-test.config index 3a1fff59..45b95daa 100644 --- a/nf-test.config +++ b/nf-test.config @@ -20,5 +20,6 @@ config { // load the necessary plugins plugins { load "nft-utils@0.0.3" + load "nft-anndata@0.4.1" } } diff --git a/ro-crate-metadata.json b/ro-crate-metadata.json index 39514a5c..4b1726cd 100644 --- a/ro-crate-metadata.json +++ b/ro-crate-metadata.json @@ -23,7 +23,7 @@ "@type": "Dataset", "creativeWorkStatus": "InProgress", "datePublished": "2025-11-20T09:32:25+00:00", - "description": "

\n \n \n \"nf-core/spatialvi\"\n \n

\n\n[![Open in GitHub Codespaces](https://img.shields.io/badge/Open_In_GitHub_Codespaces-black?labelColor=grey&logo=github)](https://github.com/codespaces/new/nf-core/spatialvi)\n[![GitHub Actions CI Status](https://github.com/nf-core/spatialvi/actions/workflows/nf-test.yml/badge.svg)](https://github.com/nf-core/spatialvi/actions/workflows/nf-test.yml)\n[![GitHub Actions Linting Status](https://github.com/nf-core/spatialvi/actions/workflows/linting.yml/badge.svg)](https://github.com/nf-core/spatialvi/actions/workflows/linting.yml)[![AWS CI](https://img.shields.io/badge/CI%20tests-full%20size-FF9900?labelColor=000000&logo=Amazon%20AWS)](https://nf-co.re/spatialvi/results)[![Cite with Zenodo](http://img.shields.io/badge/DOI-10.5281/zenodo.XXXXXXX-1073c8?labelColor=000000)](https://doi.org/10.5281/zenodo.XXXXXXX)\n[![nf-test](https://img.shields.io/badge/unit_tests-nf--test-337ab7.svg)](https://www.nf-test.com)\n\n[![Nextflow](https://img.shields.io/badge/version-%E2%89%A525.04.0-green?style=flat&logo=nextflow&logoColor=white&color=%230DC09D&link=https%3A%2F%2Fnextflow.io)](https://www.nextflow.io/)\n[![nf-core template version](https://img.shields.io/badge/nf--core_template-3.5.1-green?style=flat&logo=nfcore&logoColor=white&color=%2324B064&link=https%3A%2F%2Fnf-co.re)](https://github.com/nf-core/tools/releases/tag/3.5.1)\n[![run with conda](http://img.shields.io/badge/run%20with-conda-3EB049?labelColor=000000&logo=anaconda)](https://docs.conda.io/en/latest/)\n[![run with docker](https://img.shields.io/badge/run%20with-docker-0db7ed?labelColor=000000&logo=docker)](https://www.docker.com/)\n[![run with singularity](https://img.shields.io/badge/run%20with-singularity-1d355c.svg?labelColor=000000)](https://sylabs.io/docs/)\n[![Launch on Seqera Platform](https://img.shields.io/badge/Launch%20%F0%9F%9A%80-Seqera%20Platform-%234256e7)](https://cloud.seqera.io/launch?pipeline=https://github.com/nf-core/spatialvi)\n\n[![Get help on Slack](http://img.shields.io/badge/slack-nf--core%20%23spatialvi-4A154B?labelColor=000000&logo=slack)](https://nfcore.slack.com/channels/spatialvi)[![Follow on Bluesky](https://img.shields.io/badge/bluesky-%40nf__core-1185fe?labelColor=000000&logo=bluesky)](https://bsky.app/profile/nf-co.re)[![Follow on Mastodon](https://img.shields.io/badge/mastodon-nf__core-6364ff?labelColor=FFFFFF&logo=mastodon)](https://mstdn.science/@nf_core)[![Watch on YouTube](http://img.shields.io/badge/youtube-nf--core-FF0000?labelColor=000000&logo=youtube)](https://www.youtube.com/c/nf-core)\n\n## Introduction\n\n**nf-core/spatialvi** is a bioinformatics analysis pipeline for Visium spatial\ntranscriptomics data from 10x Genomics. It can process and analyse spatial data\neither directly from raw data by running [Space Ranger](https://support.10xgenomics.com/spatial-gene-expression/software/pipelines/latest/what-is-space-ranger)\nor data already processed by Space Ranger. The pipeline currently consists of\nthe following steps:\n\n

\n \n

\n\n0. Raw data processing with Space Ranger (optional)\n1. Quality controls and filtering\n2. Normalisation\n3. Dimensionality reduction and clustering\n4. Differential gene expression testing\n\nThe pipeline is built using [Nextflow](https://www.nextflow.io), a workflow tool\nto run tasks across multiple compute infrastructures in a very portable manner.\nIt uses Docker/Singularity containers making installation trivial and results\nhighly reproducible. The [Nextflow DSL2](https://www.nextflow.io/docs/latest/dsl2.html)\nimplementation of this pipeline uses one container per process which makes it\nmuch easier to maintain and update software dependencies. Where possible, these\nprocesses have been submitted to and installed from [nf-core/modules](https://github.com/nf-core/modules)\nin order to make them available to all nf-core pipelines, and to everyone within\nthe Nextflow community!\n\nOn release, automated continuous integration tests run the pipeline on a\nfull-sized dataset on the AWS cloud infrastructure. This ensures that the\npipeline runs on AWS, has sensible resource allocation defaults set to run on\nreal-world datasets, and permits the persistent storage of results to benchmark\nbetween pipeline releases and other analysis sources. The results obtained from\nthe full-sized test can be viewed on the [nf-core website](https://nf-co.re/spatialvi/results).\n\n## Usage\n\n> [!NOTE]\n> If you are new to Nextflow and nf-core, please refer to [this page](https://nf-co.re/docs/usage/installation) on how to set-up Nextflow. Make sure to [test your setup](https://nf-co.re/docs/usage/introduction#how-to-run-a-pipeline) with `-profile test` before running the workflow on actual data.\n\nYou can run the pipeline using:\n\n```bash\nnextflow run nf-core/spatialvi \\\n -profile \\\n --input samplesheet.csv \\\n --outdir \n```\n\n> [!WARNING]\n> Please provide pipeline parameters via the CLI or Nextflow `-params-file` option. Custom config files including those provided by the `-c` Nextflow option can be used to provide any configuration _**except for parameters**_; see [docs](https://nf-co.re/docs/usage/getting_started/configuration#custom-configuration-files).\n\nFor more details and further functionality, please refer to the [usage documentation](https://nf-co.re/spatialvi/usage) and the [parameter documentation](https://nf-co.re/spatialvi/parameters).\n\n## Pipeline output\n\nTo see the results of an example test run with a full size dataset refer to the [results](https://nf-co.re/spatialvi/results) tab on the nf-core website pipeline page.\nFor more details about the output files and reports, please refer to the\n[output documentation](https://nf-co.re/spatialvi/output).\n\n## Credits\n\nnf-core/spatialvi was originally developed by the Jackson\nLaboratory1, up to the [0.1.0](https://github.com/nf-core/spatialvi/releases/tag/0.1.0)\ntag. It was further developed in a collaboration between the [National\nBioinformatics Infrastructure Sweden](https://nbis.se/) and [National Genomics\nInfrastructure](https://ngisweden.scilifelab.se/) within [SciLifeLab](https://scilifelab.se/);\nit is currently developed and maintained by [Erik Fasterius](https://github.com/fasterius)\nand [Christophe Avenel](https://github.com/cavenel).\n\nMany thanks to others who have helped out along the way too, especially [Gregor\nSturm](https://github.com/grst)!\n\n_1 Supported by grants from the US National Institutes of Health\n[U24CA224067](https://reporter.nih.gov/project-details/10261367) and\n[U54AG075941](https://reporter.nih.gov/project-details/10376627). Original\nauthors [Dr. Sergii Domanskyi](https://github.com/sdomanskyi), Prof. Jeffrey\nChuang and Dr. Anuj Srivastava._\n\n## Contributions and Support\n\nIf you would like to contribute to this pipeline, please see the [contributing guidelines](.github/CONTRIBUTING.md).\n\nFor further information or help, don't hesitate to get in touch on the [Slack `#spatialvi` channel](https://nfcore.slack.com/channels/spatialvi) (you can join with [this invite](https://nf-co.re/join/slack)).\n\n## Citations\n\n\n\n\n\n\nAn extensive list of references for the tools used by the pipeline can be found in the [`CITATIONS.md`](CITATIONS.md) file.\n\nYou can cite the `nf-core` publication as follows:\n\n> **The nf-core framework for community-curated bioinformatics pipelines.**\n>\n> Philip Ewels, Alexander Peltzer, Sven Fillinger, Harshil Patel, Johannes Alneberg, Andreas Wilm, Maxime Ulysse Garcia, Paolo Di Tommaso & Sven Nahnsen.\n>\n> _Nat Biotechnol._ 2020 Feb 13. doi: [10.1038/s41587-020-0439-x](https://dx.doi.org/10.1038/s41587-020-0439-x).\n", + "description": "

\n \n \n \"nf-core/spatialvi\"\n \n

\n\n[![Open in GitHub Codespaces](https://img.shields.io/badge/Open_In_GitHub_Codespaces-black?labelColor=grey&logo=github)](https://github.com/codespaces/new/nf-core/spatialvi)\n[![GitHub Actions CI Status](https://github.com/nf-core/spatialvi/actions/workflows/nf-test.yml/badge.svg)](https://github.com/nf-core/spatialvi/actions/workflows/nf-test.yml)\n[![GitHub Actions Linting Status](https://github.com/nf-core/spatialvi/actions/workflows/linting.yml/badge.svg)](https://github.com/nf-core/spatialvi/actions/workflows/linting.yml)[![AWS CI](https://img.shields.io/badge/CI%20tests-full%20size-FF9900?labelColor=000000&logo=Amazon%20AWS)](https://nf-co.re/spatialvi/results)[![Cite with Zenodo](http://img.shields.io/badge/DOI-10.5281/zenodo.XXXXXXX-1073c8?labelColor=000000)](https://doi.org/10.5281/zenodo.XXXXXXX)\n[![nf-test](https://img.shields.io/badge/unit_tests-nf--test-337ab7.svg)](https://www.nf-test.com)\n\n[![Nextflow](https://img.shields.io/badge/version-%E2%89%A525.04.0-green?style=flat&logo=nextflow&logoColor=white&color=%230DC09D&link=https%3A%2F%2Fnextflow.io)](https://www.nextflow.io/)\n[![nf-core template version](https://img.shields.io/badge/nf--core_template-3.5.1-green?style=flat&logo=nfcore&logoColor=white&color=%2324B064&link=https%3A%2F%2Fnf-co.re)](https://github.com/nf-core/tools/releases/tag/3.5.1)\n[![run with conda](http://img.shields.io/badge/run%20with-conda-3EB049?labelColor=000000&logo=anaconda)](https://docs.conda.io/en/latest/)\n[![run with docker](https://img.shields.io/badge/run%20with-docker-0db7ed?labelColor=000000&logo=docker)](https://www.docker.com/)\n[![run with singularity](https://img.shields.io/badge/run%20with-singularity-1d355c.svg?labelColor=000000)](https://sylabs.io/docs/)\n[![Launch on Seqera Platform](https://img.shields.io/badge/Launch%20%F0%9F%9A%80-Seqera%20Platform-%234256e7)](https://cloud.seqera.io/launch?pipeline=https://github.com/nf-core/spatialvi)\n\n[![Get help on Slack](http://img.shields.io/badge/slack-nf--core%20%23spatialvi-4A154B?labelColor=000000&logo=slack)](https://nfcore.slack.com/channels/spatialvi)[![Follow on Bluesky](https://img.shields.io/badge/bluesky-%40nf__core-1185fe?labelColor=000000&logo=bluesky)](https://bsky.app/profile/nf-co.re)[![Follow on Mastodon](https://img.shields.io/badge/mastodon-nf__core-6364ff?labelColor=FFFFFF&logo=mastodon)](https://mstdn.science/@nf_core)[![Watch on YouTube](http://img.shields.io/badge/youtube-nf--core-FF0000?labelColor=000000&logo=youtube)](https://www.youtube.com/c/nf-core)\n\n## Introduction\n\n**nf-core/spatialvi** is a bioinformatics analysis pipeline for Visium spatial\ntranscriptomics data from 10x Genomics. It can process and analyse spatial data\neither directly from raw data by running [Space Ranger](https://support.10xgenomics.com/spatial-gene-expression/software/pipelines/latest/what-is-space-ranger)\nor data already processed by Space Ranger. The pipeline currently consists of\nthe following steps:\n\n

\n \n

\n\n0. Raw data processing with Space Ranger (optional)\n1. Quality controls and filtering\n2. Normalization\n3. Dimensionality reduction and clustering\n4. Differential gene expression testing\n\nThe pipeline is built using [Nextflow](https://www.nextflow.io), a workflow tool\nto run tasks across multiple compute infrastructures in a very portable manner.\nIt uses Docker/Singularity containers making installation trivial and results\nhighly reproducible. The [Nextflow DSL2](https://www.nextflow.io/docs/latest/dsl2.html)\nimplementation of this pipeline uses one container per process which makes it\nmuch easier to maintain and update software dependencies. Where possible, these\nprocesses have been submitted to and installed from [nf-core/modules](https://github.com/nf-core/modules)\nin order to make them available to all nf-core pipelines, and to everyone within\nthe Nextflow community!\n\nOn release, automated continuous integration tests run the pipeline on a\nfull-sized dataset on the AWS cloud infrastructure. This ensures that the\npipeline runs on AWS, has sensible resource allocation defaults set to run on\nreal-world datasets, and permits the persistent storage of results to benchmark\nbetween pipeline releases and other analysis sources. The results obtained from\nthe full-sized test can be viewed on the [nf-core website](https://nf-co.re/spatialvi/results).\n\n## Usage\n\n> [!NOTE]\n> If you are new to Nextflow and nf-core, please refer to [this page](https://nf-co.re/docs/usage/installation) on how to set-up Nextflow. Make sure to [test your setup](https://nf-co.re/docs/usage/introduction#how-to-run-a-pipeline) with `-profile test` before running the workflow on actual data.\n\nYou can run the pipeline using:\n\n```bash\nnextflow run nf-core/spatialvi \\\n -profile \\\n --input samplesheet.csv \\\n --outdir \n```\n\n> [!WARNING]\n> Please provide pipeline parameters via the CLI or Nextflow `-params-file` option. Custom config files including those provided by the `-c` Nextflow option can be used to provide any configuration _**except for parameters**_; see [docs](https://nf-co.re/docs/usage/getting_started/configuration#custom-configuration-files).\n\nFor more details and further functionality, please refer to the [usage documentation](https://nf-co.re/spatialvi/usage) and the [parameter documentation](https://nf-co.re/spatialvi/parameters).\n\n## Pipeline output\n\nTo see the results of an example test run with a full size dataset refer to the [results](https://nf-co.re/spatialvi/results) tab on the nf-core website pipeline page.\nFor more details about the output files and reports, please refer to the\n[output documentation](https://nf-co.re/spatialvi/output).\n\n## Credits\n\nnf-core/spatialvi was originally developed by the Jackson\nLaboratory1, up to the [0.1.0](https://github.com/nf-core/spatialvi/releases/tag/0.1.0)\ntag. It was further developed in a collaboration between the [National\nBioinformatics Infrastructure Sweden](https://nbis.se/) and [National Genomics\nInfrastructure](https://ngisweden.scilifelab.se/) within [SciLifeLab](https://scilifelab.se/);\nit is currently developed and maintained by [Erik Fasterius](https://github.com/fasterius)\nand [Christophe Avenel](https://github.com/cavenel).\n\nMany thanks to others who have helped out along the way too, especially [Gregor\nSturm](https://github.com/grst)!\n\n_1 Supported by grants from the US National Institutes of Health\n[U24CA224067](https://reporter.nih.gov/project-details/10261367) and\n[U54AG075941](https://reporter.nih.gov/project-details/10376627). Original\nauthors [Dr. Sergii Domanskyi](https://github.com/sdomanskyi), Prof. Jeffrey\nChuang and Dr. Anuj Srivastava._\n\n## Contributions and Support\n\nIf you would like to contribute to this pipeline, please see the [contributing guidelines](.github/CONTRIBUTING.md).\n\nFor further information or help, don't hesitate to get in touch on the [Slack `#spatialvi` channel](https://nfcore.slack.com/channels/spatialvi) (you can join with [this invite](https://nf-co.re/join/slack)).\n\n## Citations\n\n\n\n\n\n\nAn extensive list of references for the tools used by the pipeline can be found in the [`CITATIONS.md`](CITATIONS.md) file.\n\nYou can cite the `nf-core` publication as follows:\n\n> **The nf-core framework for community-curated bioinformatics pipelines.**\n>\n> Philip Ewels, Alexander Peltzer, Sven Fillinger, Harshil Patel, Johannes Alneberg, Andreas Wilm, Maxime Ulysse Garcia, Paolo Di Tommaso & Sven Nahnsen.\n>\n> _Nat Biotechnol._ 2020 Feb 13. doi: [10.1038/s41587-020-0439-x](https://dx.doi.org/10.1038/s41587-020-0439-x).\n", "hasPart": [ { "@id": "main.nf" @@ -344,4 +344,4 @@ "name": "Sergii Domanskyi" } ] -} \ No newline at end of file +} diff --git a/subworkflows/local/aggregation/main.nf b/subworkflows/local/aggregation/main.nf deleted file mode 100644 index 5693950f..00000000 --- a/subworkflows/local/aggregation/main.nf +++ /dev/null @@ -1,81 +0,0 @@ -// -// Subworkflow for aggregation of sample data -// - -include { MERGE_SDATA } from "../../../modules/local/merge_sdata" -include { QUARTONOTEBOOK as INTEGRATE_SDATA } from "../../../modules/nf-core/quartonotebook/main" - -workflow AGGREGATION { - - take: - ch_sdata // channel: [ meta, zarr ] - merge_sdata // boolean: Whether to merge sdata or not - integrate_sdata // boolean: Whether to integrate sdata or not - integration_cluster_resolution // float : Integration cluster resolution - integration_n_hvgs // integer: Number of HVGs to use for integration - - main: - - // Quarto report and extensions files - integration_notebook = file("${projectDir}/bin/integration.qmd", checkIfExists: true) - extensions = channel.fromPath("${projectDir}/assets/_extensions").collect() - - // Get sdata files only - ch_sdata_files = ch_sdata - .map { - _meta, zarr -> - return [zarr] - } - - // - // MODULE: Merge per-sample SpatialData objects into one - // - ch_merged_sdata = channel.empty() - if (merge_sdata || integrate_sdata) { - MERGE_SDATA ( - ch_sdata_files.collect() - ) - ch_merged_sdata = MERGE_SDATA.out.sdata - } - - // - // MODULE: Aggregate and integrate per-sample SpatialData - // - ch_integrated_sdata = channel.empty() - ch_integrated_adata = channel.empty() - if (integrate_sdata) { - integration_params = [ - input_sdata: "merged_sdata.zarr", - cluster_resolution: integration_cluster_resolution, - n_hvgs: integration_n_hvgs, - artifact_dir: "artifacts", - output_adata: "integrated_adata.h5ad", - output_sdata: "integrated_sdata.zarr" - ] - INTEGRATE_SDATA ( - [[id:"integration"], integration_notebook], - integration_params, - ch_merged_sdata, - extensions - ) - ch_integration_artifacts = INTEGRATE_SDATA.out.artifacts - .map { - _meta, artifacts -> - return [artifacts] - } - .flatten ( ) - .branch { it -> - adata: it[1].name.endsWith('.h5ad') - sdata: it[1].name.endsWith('.zarr') - } - ch_integrated_adata = ch_integration_artifacts.adata - ch_integrated_sdata = ch_integration_artifacts.sdata - } - - emit: - merged_sdata = ch_merged_sdata // channel: [ zarr ] - - integrated_adata = ch_integrated_adata // channel: [ h5ad ] - integrated_sdata = ch_integrated_sdata // channel: [ zarr ] - -} diff --git a/subworkflows/local/clustering/main.nf b/subworkflows/local/clustering/main.nf new file mode 100644 index 00000000..274fe03e --- /dev/null +++ b/subworkflows/local/clustering/main.nf @@ -0,0 +1,51 @@ +include { SCANPY_LEIDEN } from '../../../modules/local/scanpy/leiden/main' +include { SCANPY_NEIGHBORS } from '../../../modules/local/scanpy/neighbors/main' +include { SCANPY_UMAP } from '../../../modules/local/scanpy/umap/main' + +workflow CLUSTERING { + + take: + ch_adata // channel: [ meta, h5ad ] + n_neighbors // integer: Number of nearest neighbors to compute + neighbors_n_pcs // integer: Number of PCs to use for nearest neighbors + use_rep // string: Embedding to use for nearest neighbors + umap_min_dist // float: Minimum distance between embedded points + umap_spread // float: Scale of embedded points + umap_key_added // string: Key in .obsm for storing UMAP coordinates + cluster_resolution // float: Spot clustering resolution + leiden_key_added // string: Key in .obs for storing cluster labels + + main: + + // + // MODULE: Neighborhood graph + // + SCANPY_NEIGHBORS ( + ch_adata, + n_neighbors, + neighbors_n_pcs, + use_rep + ) + + // + // MODULE: UMAP + // + SCANPY_UMAP ( + SCANPY_NEIGHBORS.out.adata, + umap_min_dist, + umap_spread, + umap_key_added + ) + + // + // MODULE: Leiden clustering + // + SCANPY_LEIDEN ( + SCANPY_UMAP.out.adata, + cluster_resolution, + leiden_key_added + ) + + emit: + adata = SCANPY_LEIDEN.out.adata // channel: [ meta, h5ad ] +} diff --git a/subworkflows/local/downstream/main.nf b/subworkflows/local/downstream/main.nf deleted file mode 100644 index 1f9e4d70..00000000 --- a/subworkflows/local/downstream/main.nf +++ /dev/null @@ -1,148 +0,0 @@ -// -// Subworkflow for downstream analyses of ST data -// - -include { QUARTONOTEBOOK as QUALITY_CONTROLS } from '../../../modules/nf-core/quartonotebook/main' -include { QUARTONOTEBOOK as SPATIALLY_VARIABLE_GENES } from '../../../modules/nf-core/quartonotebook/main' -include { QUARTONOTEBOOK as CLUSTERING } from '../../../modules/nf-core/quartonotebook/main' - -workflow DOWNSTREAM { - - take: - sdata_raw // channel: [ meta, zarr ] - qc_min_counts // integer: Minimum UMIs per spot - qc_min_genes // integer: Minimum genes per spot - qc_min_spots // integer: Minimum spots per gene - qc_mito_threshold // float : Maximum mitochondrial content per spot - qc_ribo_threshold // float : Minimum ribosomal content per spot - qc_hb_threshold // float : Maximum haemoglobin content per spot - cluster_n_hvgs // integer: Number of highly variable genes to use - cluster_resolution // float : Spot clustering resolution - svg_autocorr_method // string : Spatial variable gene autocorrelation method - n_top_svgs // integer: Number of top variable genes to plot - - main: - - // - // Quarto reports and extension files - // - quality_controls_notebook = file("${projectDir}/bin/quality_controls.qmd", checkIfExists: true) - clustering_notebook = file("${projectDir}/bin/clustering.qmd", checkIfExists: true) - spatially_variable_genes_notebook = file("${projectDir}/bin/spatially_variable_genes.qmd", checkIfExists: true) - extensions = channel.fromPath("${projectDir}/assets/_extensions").collect() - - // - // Quality controls and filtering - // - ch_quality_controls_input_data = sdata_raw - .map { it -> it[1] } - ch_quality_controls_notebook = sdata_raw - .map { it -> tuple(it[0], quality_controls_notebook) } - quality_controls_params = [ - input_sdata: "sdata_raw.zarr", - min_counts: qc_min_counts, - min_genes: qc_min_genes, - min_spots: qc_min_spots, - mito_threshold: qc_mito_threshold, - ribo_threshold: qc_ribo_threshold, - hb_threshold: qc_hb_threshold, - artifact_dir: "artifacts", - output_adata: "adata_filtered.h5ad", - output_sdata: "sdata_filtered.zarr", - ] - QUALITY_CONTROLS ( - ch_quality_controls_notebook, - quality_controls_params, - ch_quality_controls_input_data, - extensions - ) - ch_qc = QUALITY_CONTROLS.out.artifacts - .map { meta, artifacts -> [meta, artifacts[0], meta, artifacts[1]] } - .flatten ( ) - .collate ( 2 ) - .branch { it -> - sdata: it[1].name.endsWith('.zarr') - mqc: it[1].name.endsWith('.csv') - } - ch_qc_sdata = ch_qc.sdata - ch_qc_mqc = ch_qc.mqc - ch_qc_html = QUALITY_CONTROLS.out.html - ch_qc_nb = QUALITY_CONTROLS.out.notebook - ch_qc_yml = QUALITY_CONTROLS.out.params_yaml - - // - // Normalisation, dimensionality reduction and clustering - // - ch_clustering_input_data = QUALITY_CONTROLS.out.artifacts - .map { it -> it[1] } - ch_clustering_notebook = QUALITY_CONTROLS.out.artifacts - .map { it -> tuple(it[0], clustering_notebook) } - clustering_params = [ - input_sdata: "sdata_filtered.zarr", - n_hvgs: cluster_n_hvgs, - cluster_resolution: cluster_resolution, - artifact_dir: "artifacts", - output_adata: "adata_processed.h5ad", - output_sdata: "sdata_processed.zarr", - ] - CLUSTERING ( - ch_clustering_notebook, - clustering_params, - ch_clustering_input_data, - extensions - ) - ch_clustering_html = CLUSTERING.out.html - ch_clustering_sdata = CLUSTERING.out.artifacts - ch_clustering_nb = CLUSTERING.out.notebook - ch_clustering_params = CLUSTERING.out.params_yaml - - // - // Spatially variable genes - // - ch_spatially_variable_genes_input_data = CLUSTERING.out.artifacts - .map { it -> it[1] } - ch_spatially_variable_genes_notebook = CLUSTERING.out.artifacts - .map { it -> tuple(it[0], spatially_variable_genes_notebook) } - spatially_variable_genes_params = [ - input_sdata: "sdata_processed.zarr", - svg_autocorr_method: svg_autocorr_method, - n_top_svgs: n_top_svgs, - artifact_dir: "artifacts", - output_csv: "spatially_variable_genes.csv", - output_adata: "adata_spatially_variable_genes.h5ad", - output_sdata: "sdata.zarr", - ] - SPATIALLY_VARIABLE_GENES ( - ch_spatially_variable_genes_notebook, - spatially_variable_genes_params, - ch_spatially_variable_genes_input_data, - extensions - ) - ch_svg_html = SPATIALLY_VARIABLE_GENES.out.html - ch_svg_nb = SPATIALLY_VARIABLE_GENES.out.notebook - ch_svg_params = SPATIALLY_VARIABLE_GENES.out.params_yaml - ch_svg_artifacts = SPATIALLY_VARIABLE_GENES.out.artifacts - .transpose ( ) - .branch { it -> - csv: it[1].name.endsWith('.csv') - sdata: it[1].name.endsWith('.zarr') - } - - emit: - qc_html = ch_qc_html // channel: [ meta, html ] - qc_sdata = ch_qc_sdata // channel: [ meta, zarr ] - qc_mqc = ch_qc_mqc // channel: [ meta, csv ] - qc_nb = ch_qc_nb // channel: [ meta, qmd ] - qc_params = ch_qc_yml // channel: [ meta, yml ] - - clustering_html = ch_clustering_html // channel: [ meta, html ] - clustering_sdata = ch_clustering_sdata // channel: [ meta, zarr] - clustering_nb = ch_clustering_nb // channel: [ meta, qmd ] - clustering_params = ch_clustering_params // channel: [ meta, yml ] - - svg_html = ch_svg_html // channel: [ meta, html ] - svg_csv = ch_svg_artifacts.csv // channel: [ meta, csv ] - svg_sdata = ch_svg_artifacts.sdata // channel: [ meta, zarr ] - svg_nb = ch_svg_nb // channel: [ meta, qmd ] - svg_params = ch_svg_params // channel: [ meta, yml ] -} diff --git a/subworkflows/local/input_check/main.nf b/subworkflows/local/input_check/main.nf index 96ddb28b..d57609d6 100644 --- a/subworkflows/local/input_check/main.nf +++ b/subworkflows/local/input_check/main.nf @@ -37,7 +37,8 @@ workflow INPUT_CHECK { ch_spaceranger_combined = UNTAR_SPACERANGER_INPUT.out.untar .mix ( ch_spaceranger.dir.map { meta, dir -> [meta, file(dir)] } ) // Create final meta map and check input existance - ch_spaceranger_input = ch_spaceranger_combined.map { meta, dir -> create_channel_spaceranger(meta, dir) } + ch_spaceranger_input = ch_spaceranger_combined + .map { meta, dir -> create_channel_spaceranger(meta, dir) } // Downstream analysis: ---------------------------------------------------- @@ -58,7 +59,8 @@ workflow INPUT_CHECK { .map { meta, dir -> [meta, dir] } // Create final meta map and check input file existence - ch_downstream_input = ch_downstream_combined.map { it -> check_downstream_dir(it, hd_bin_size) } + ch_downstream_input = ch_downstream_combined + .map { it -> check_downstream_dir(it, hd_bin_size) } emit: ch_spaceranger_input // channel: [ val(meta), [ st data ] ] @@ -85,7 +87,8 @@ def check_downstream_dir(input, hd_bin_size) { "tissue_lowres_image.png" ] def dir_file_objs = file("${spaceranger_dir}/**") - def classic_files_present = classic_required_files.every { f -> dir_file_objs*.name.contains(f) } + def classic_files_present = classic_required_files + .every { f -> dir_file_objs*.name.contains(f) } // Visium HD required files (for specified bin size) def hd_bin_str = "square_${String.format('%03d', hd_bin_size)}um" @@ -114,7 +117,7 @@ def get_file_from_meta(meta, k) { return v ? file(v) : [] } -// Function to get list of [ meta, [ fastq_dir, tissue_hires_image, slide, area ]] +// Function to get [ meta, [fastq_dir, tissue_hires_image, slide, area] ] list def create_channel_spaceranger(meta, fastq_dir) { meta["id"] = meta.get("sample") def slide = meta.get("slide") @@ -123,7 +126,7 @@ def create_channel_spaceranger(meta, fastq_dir) { // Resolve symlinks for local filesystem paths only def scheme = fastq_dir.toUri().getScheme() if (scheme == null || scheme == 'file') { - fastq_dir = fastq_dir.toRealPath() // resolve symlink (if applicable) + fastq_dir = fastq_dir.toRealPath() } def fastq_files = fastq_dir.listFiles().findAll { file -> diff --git a/subworkflows/local/integration/main.nf b/subworkflows/local/integration/main.nf new file mode 100644 index 00000000..16b023df --- /dev/null +++ b/subworkflows/local/integration/main.nf @@ -0,0 +1,131 @@ +// +// Subworkflow for aggregation of sample data +// + +include { ADATA_MERGE } from "../../../modules/local/adata/merge" +include { QUARTONOTEBOOK as REPORT_INTEGRATED } from "../../../modules/nf-core/quartonotebook/main" +include { SCANPY_HARMONY } from "../../../modules/local/scanpy/harmony" +include { SCANPY_SCANORAMA } from "../../../modules/local/scanpy/scanorama" +include { SDATA_UPDATE_TABLE as SDATA_UPDATE_TABLE_INTEGRATION } from '../../../modules/local/sdata/update_table/main' + +include { CLUSTERING } from '../../../subworkflows/local/clustering' + +workflow INTEGRATION { + + take: + ch_sdata_merged // channel: [ meta, zarr ] + ch_adata // channel: [ meta, h5ad ] + integration_method // string: Integration method to use + n_neighbors // integer: Number of nearest neighbors to compute + neighbors_n_pcs // integer: Number of PCs to use for nearest neighbors + umap_min_dist // float: Minimum distance between embedded points + umap_spread // float: Scale of embedded points + integration_cluster_resolution // float: Integration cluster resolution + + main: + + // + // MODULE: Merge AnnData objects + // + ch_adata_collected = ch_adata + .toSortedList { a, b -> a[0].id <=> b[0].id } + .flatMap() + .map { _meta, zarr -> zarr } + .collect() + ADATA_MERGE ( + ch_adata_collected, + 'inner', // join + 'library_id', // label + 'true', // preserve_var + 'true' // preserve_spatial + ) + ch_adata_merged = ADATA_MERGE.out.adata + + // + // MODULE: Integration + // + if (integration_method == 'harmony') { + SCANPY_HARMONY ( + ch_adata_merged, + 'library_id', // key + 'X_harmony' // adjusted_basis + ) + ch_integrated = SCANPY_HARMONY.out.adata + } else if (integration_method == 'scanorama') { + SCANPY_SCANORAMA ( + ch_adata_merged, + 'library_id', // key + 'X_scanorama' // embedding_added + ) + ch_integrated = SCANPY_SCANORAMA.out.adata + } + + // Add `meta` to integrated AnnData channel + ch_adata_integrated = ch_integrated + .map { h5ad -> [[id: integration_method], h5ad] } + + // + // SUBWORKFLOW: Clustering + // + use_rep = 'X_' + integration_method + umap_key_added = 'X_umap_' + integration_method + leiden_key_added = 'clusters_' + integration_method + CLUSTERING ( + ch_adata_integrated, + n_neighbors, + neighbors_n_pcs, + use_rep, + umap_min_dist, + umap_spread, + umap_key_added, + integration_cluster_resolution, + leiden_key_added + ) + ch_adata_clustered = CLUSTERING.out.adata + .map { _meta, h5ad -> h5ad } + + // + // MODULE: Update SpatialData tables + // + library_key = 'library_id' + ch_sdata_adata = ch_sdata_merged + .map { zarr -> [[id: integration_method], zarr]} + .join ( CLUSTERING.out.adata ) + SDATA_UPDATE_TABLE_INTEGRATION ( + ch_sdata_adata, + library_key + ) + ch_sdata_integrated = SDATA_UPDATE_TABLE_INTEGRATION.out.sdata + + // + // MODULE: Aggregate and integrate per-sample SpatialData + // + integration_notebook = file("${projectDir}/bin/report-integrated.qmd", checkIfExists: true) + extensions = channel.fromPath("${projectDir}/assets/_extensions").collect() + integration_params = [ + input_adata: integration_method + ".h5ad", + input_sdata: integration_method + ".zarr", + sample_col: 'library_id', + cluster_col: 'clusters_' + integration_method, + artifact_dir: "artifacts", + ] + integration_inputs = ch_sdata_integrated + .map { _meta, zarr -> zarr } + .mix ( ch_adata_clustered ) + .collect() + REPORT_INTEGRATED ( + [[id: integration_method], integration_notebook], + integration_params, + integration_inputs, + extensions + ) + + emit: + sdata = ch_sdata_integrated // channel: [ zarr ] + adata = ch_adata_clustered // channel: [ h5ad ] + + html = REPORT_INTEGRATED.out.html // channel: [ meta, html ] + notebook = REPORT_INTEGRATED.out.notebook // channel: [ meta, qmd ] + params_yaml = REPORT_INTEGRATED.out.params_yaml // channel: [ meta, yml ] + artifacts = REPORT_INTEGRATED.out.artifacts // channel: [ meta, dir ] +} diff --git a/subworkflows/local/preprocessing/main.nf b/subworkflows/local/preprocessing/main.nf new file mode 100644 index 00000000..249effee --- /dev/null +++ b/subworkflows/local/preprocessing/main.nf @@ -0,0 +1,82 @@ +include { SCANPY_CALCULATE_QC_METRICS } from '../../../modules/local/scanpy/calculate_qc_metrics/main' +include { SCANPY_FILTER } from '../../../modules/local/scanpy/filter/main' +include { SCANPY_HIGHLY_VARIABLE_GENES } from '../../../modules/local/scanpy/highly_variable_genes/main' +include { SCANPY_LOG1P } from '../../../modules/local/scanpy/log1p/main' +include { SCANPY_NORMALIZE_TOTAL } from '../../../modules/local/scanpy/normalize_total/main' +include { SCANPY_PCA } from '../../../modules/local/scanpy/pca/main' + +workflow PREPROCESSING { + + take: + ch_adata_input // channel: [ meta, h5ad ] + qc_min_counts // integer: Minimum UMIs per spot + qc_min_genes // integer: Minimum genes per spot + qc_min_spots // integer: Minimum spots per gene + qc_mito_threshold // float: Maximum mitochondrial content per spot + qc_ribo_threshold // float: Minimum ribosomal content per spot + qc_hb_threshold // float: Maximum haemoglobin content per spot + normalize_target_sum // string: Target sum of total count normalization + n_highly_variable_genes // integer: Number of highly variable genes to use + hvg_flavor // string: Flavor for HVG calculations + n_principal_components // integer: Number of principal components to compute + pca_use_highly_variable // boolean: Whether to only use highly variable genes for PCA + + main: + + // + // MODULE: Calculate cuality control metrics + // + SCANPY_CALCULATE_QC_METRICS ( + ch_adata_input + ) + + // + // MODULE: Filtering + // + SCANPY_FILTER ( + SCANPY_CALCULATE_QC_METRICS.out.adata, + qc_min_counts, + qc_min_genes, + qc_min_spots, + qc_mito_threshold, + qc_ribo_threshold, + qc_hb_threshold + ) + + // + // MODULE: Normalization + // + SCANPY_NORMALIZE_TOTAL ( + SCANPY_FILTER.out.adata, + normalize_target_sum + ) + + // + // MODULE: Log-transformation + // + SCANPY_LOG1P ( + SCANPY_NORMALIZE_TOTAL.out.adata + ) + + // + // MODULE: Highly variable gene selection + // + SCANPY_HIGHLY_VARIABLE_GENES ( + SCANPY_LOG1P.out.adata, + n_highly_variable_genes, + hvg_flavor + ) + + // + // MODULE: Principal Component Analysis + // + SCANPY_PCA ( + SCANPY_HIGHLY_VARIABLE_GENES.out.adata, + n_principal_components, + pca_use_highly_variable + ) + + + emit: + adata = SCANPY_PCA.out.adata // channel: [ meta, h5ad ] +} diff --git a/subworkflows/local/spatial/main.nf b/subworkflows/local/spatial/main.nf new file mode 100644 index 00000000..3adfb631 --- /dev/null +++ b/subworkflows/local/spatial/main.nf @@ -0,0 +1,53 @@ +include { SQUIDPY_INTERACTION_MATRIX } from '../../../modules/local/squidpy/interaction_matrix/main' +include { SQUIDPY_NHOOD_ENRICHMENT } from '../../../modules/local/squidpy/nhood_enrichment/main' +include { SQUIDPY_SPATIAL_AUTOCORR } from '../../../modules/local/squidpy/spatial_autocorr/main' +include { SQUIDPY_SPATIAL_NEIGHBORS } from '../../../modules/local/squidpy/spatial_neighbors/main' + +workflow SPATIAL { + + take: + ch_adata // channel: [ meta, h5ad ] + spatial_coord_type // string: Type of spatial coordinate system + spatial_n_neighbors // integer: Number of spatial neighbors to use + svg_autocorr_method // string: Spatial autocorrelation method to use + + main: + + // + // Spatial neighbors + // + SQUIDPY_SPATIAL_NEIGHBORS ( + ch_adata, + spatial_coord_type, + spatial_n_neighbors + ) + + // + // Spatial neighborhood enrichment analysis + // + cluster_key = 'clusters' + SQUIDPY_NHOOD_ENRICHMENT ( + SQUIDPY_SPATIAL_NEIGHBORS.out.adata, + cluster_key + ) + + // + // Spatial interaction matrix + // + SQUIDPY_INTERACTION_MATRIX ( + SQUIDPY_NHOOD_ENRICHMENT.out.adata, + cluster_key + ) + + // + // Spatial autocorrelation (spatially variable genes) + // + SQUIDPY_SPATIAL_AUTOCORR ( + SQUIDPY_INTERACTION_MATRIX.out.adata, + svg_autocorr_method + ) + + emit: + adata = SQUIDPY_SPATIAL_AUTOCORR.out.adata // channel: [ meta, h5ad ] + svg_csv = SQUIDPY_SPATIAL_AUTOCORR.out.csv // channel: [ meta, csv ] +} diff --git a/tests/.nftignore b/tests/.nftignore index e128a128..0b684936 100644 --- a/tests/.nftignore +++ b/tests/.nftignore @@ -8,5 +8,17 @@ multiqc/multiqc_data/multiqc_software_versions.txt multiqc/multiqc_data/llms-full.txt multiqc/multiqc_plots/{svg,pdf,png}/*.{svg,pdf,png} multiqc/multiqc_report.html -fastqc/*_fastqc.{html,zip} +multiqc/multiqc_data/BETA-multiqc.parquet +fastqc/**/*_fastqc.{html,zip} pipeline_info/*.{html,json,txt,yml} + +**/*.{png,html,zip,h5ad,cloupe,parquet,geojson} +**/*.zarr/** +**/_extensions/** +**/*_svg.csv +**/{components,projection,variance,}.csv +**/{barcodes,features}.tsv.gz +**/{feature_slice,molecule_info,raw_feature_cell_matrix}.h5 +**/scalefactors_json.json +**/fastqc*.txt +**/{multiqc_fastqc,multiqc_general_stats}.txt diff --git a/tests/default.nf.test b/tests/default.nf.test index 3cd58ec6..23b8994d 100644 --- a/tests/default.nf.test +++ b/tests/default.nf.test @@ -14,35 +14,56 @@ nextflow_pipeline { } then { - assertAll( - // Workflow - { assert workflow.success }, - { assert snapshot(removeNextflowVersion("$outputDir/pipeline_info/nf_core_spatialvi_software_mqc_versions.yml")).match() }, + // Names of all output files and directories (unstable contents) + def stable_name = getAllFilesFromDir( + params.outdir, + relative: true, + includeDir: true, + ignore: ['pipeline_info/*.{html,json,txt}', '**/*.zarr/**'] + ) + + // Names of all SpatialData (.zarr) files and directories (unstable contents) + def stable_name_zarr = getAllFilesFromDir( + params.outdir, + relative: true, + includeDir: true, + include: ['**/*.zarr/**'], + ignore: ['**/*.zarr/**/[0-9]*'] + ) - // Data - { assert file("$outputDir/CytAssist_11mm_FFPE_Human_Glioblastoma_2/data/adata_processed.h5ad").exists() }, - { assert file("$outputDir/CytAssist_11mm_FFPE_Human_Glioblastoma_2/data/sdata_processed.zarr").exists() }, + // Paths of all output files (stable contents) + def stable_path = getAllFilesFromDir( + params.outdir, + ignoreFile: 'tests/.nftignore' + ) - // Reports - { assert file("$outputDir/CytAssist_11mm_FFPE_Human_Glioblastoma_2/reports/quality_controls.html").text.contains("final results of all the filtering") }, - { assert file("$outputDir/CytAssist_11mm_FFPE_Human_Glioblastoma_2/reports/clustering.html").text.contains("spatial distribution of clusters") }, - { assert file("$outputDir/CytAssist_11mm_FFPE_Human_Glioblastoma_2/reports/spatially_variable_genes.html").text.contains("Spatial transcriptomics data can give insight") }, + // JSON-formatted AnnData information (unstable contents) + def adata_files = getAllFilesFromDir( + params.outdir, + include: ['**/*.h5ad'] + ).sort { it.name } + .collect { file -> + [ + file: file.name, + contents: anndata(file.toPath()).yaml + ] + } - // Spatially variable genes - { assert file("$outputDir/CytAssist_11mm_FFPE_Human_Glioblastoma_2/data/spatially_variable_genes.csv").exists() }, + assertAll( - // Space Ranger - { assert file("$outputDir/CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/web_summary.html").exists() }, + { assert workflow.success}, { assert snapshot( - path("$outputDir/CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/raw_feature_bc_matrix.h5"), - path("$outputDir/CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/filtered_feature_bc_matrix.h5"), - )}, - { assert file("$outputDir/CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/raw_feature_bc_matrix.h5").exists() }, - { assert file("$outputDir/CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/spatial/tissue_positions.csv").exists() }, - - // MultiQC - { assert file("$outputDir/multiqc/multiqc_report.html").text.contains("CytAssist_11mm_FFPE_Human_Glioblastoma_2_4")} + // Number of successful tasks + workflow.trace.succeeded().size(), + // Pipeline versions.yml file for multiqc from which Nextflow version is removed because we tests pipelines on multiple Nextflow versions + removeNextflowVersion("$outputDir/pipeline_info/nf_core_spatialvi_software_mqc_versions.yml"), + stable_name, + stable_name_zarr, + stable_path, + adata_files + ).match() } + ) } } diff --git a/tests/default.nf.test.snap b/tests/default.nf.test.snap index bb2f6fd0..e0e7b70f 100644 --- a/tests/default.nf.test.snap +++ b/tests/default.nf.test.snap @@ -1,20 +1,104 @@ { "Space Ranger FFPE v2 CytAssist": { "content": [ + 31, { - "CLUSTERING": { - "papermill": "2.6.0", - "quarto": "1.8.25" + "ADATA_MERGE": { + "anndata": "0.12.4", + "python": "3.12.12" }, "FASTQC": { "fastqc": "0.12.1" }, - "QUALITY_CONTROLS": { + "REPORT": { "papermill": "2.6.0", "quarto": "1.8.25" }, - "READ_DATA": { - "read_data": "0.2.0" + "REPORT_INTEGRATED": { + "papermill": "2.6.0", + "quarto": "1.8.25" + }, + "SCANPY_CALCULATE_QC_METRICS": { + "anndata": "0.12.4", + "python": "3.12.12", + "scanpy": "1.11.5" + }, + "SCANPY_FILTER": { + "anndata": "0.12.4", + "python": "3.12.12", + "scanpy": "1.11.5" + }, + "SCANPY_HARMONY": { + "anndata": "0.12.4", + "harmonypy": "0.0.10", + "python": "3.12.12", + "scanpy": "1.11.5" + }, + "SCANPY_HIGHLY_VARIABLE_GENES": { + "anndata": "0.12.4", + "python": "3.12.12", + "scanpy": "1.11.5" + }, + "SCANPY_LEIDEN": { + "anndata": "0.12.4", + "leidenalg": "0.10.2", + "python": "3.12.12", + "scanpy": "1.11.5" + }, + "SCANPY_LOG1P": { + "anndata": "0.12.4", + "python": "3.12.12", + "scanpy": "1.11.5" + }, + "SCANPY_NEIGHBORS": { + "anndata": "0.12.4", + "python": "3.12.12", + "scanpy": "1.11.5" + }, + "SCANPY_NORMALIZE_TOTAL": { + "anndata": "0.12.4", + "python": "3.12.12", + "scanpy": "1.11.5" + }, + "SCANPY_PCA": { + "anndata": "0.12.4", + "python": "3.12.12", + "scanpy": "1.11.5" + }, + "SCANPY_RANK_GENES_GROUPS": { + "anndata": "0.12.4", + "python": "3.12.12", + "scanpy": "1.11.5" + }, + "SCANPY_UMAP": { + "anndata": "0.12.4", + "python": "3.12.12", + "scanpy": "1.11.5" + }, + "SDATA_MERGE": { + "python": "3.12.12", + "spatialdata": "0.5.0" + }, + "SDATA_READ_VISIUM": { + "python": "3.12.12", + "spatialdata": "0.5.0", + "spatialdata-io": "0.2.0" + }, + "SDATA_TO_LEGACY_ANNDATA": { + "anndata": "0.12.4", + "python": "3.12.12", + "spatialdata": "0.5.0", + "spatialdata-io": "0.2.0" + }, + "SDATA_UPDATE_TABLE": { + "anndata": "0.12.4", + "python": "3.12.12", + "spatialdata": "0.5.0" + }, + "SDATA_UPDATE_TABLE_INTEGRATION": { + "anndata": "0.12.4", + "python": "3.12.12", + "spatialdata": "0.5.0" }, "SPACERANGER_COUNT": { "spaceranger": "4.0.1" @@ -22,9 +106,25 @@ "SPACERANGER_UNTAR_REFERENCE": { "untar": 1.34 }, - "SPATIALLY_VARIABLE_GENES": { - "papermill": "2.6.0", - "quarto": "1.8.25" + "SQUIDPY_INTERACTION_MATRIX": { + "anndata": "0.12.4", + "python": "3.12.12", + "squidpy": "1.6.5" + }, + "SQUIDPY_NHOOD_ENRICHMENT": { + "anndata": "0.12.4", + "python": "3.12.12", + "squidpy": "1.6.5" + }, + "SQUIDPY_SPATIAL_AUTOCORR": { + "anndata": "0.12.4", + "python": "3.12.12", + "squidpy": "1.6.5" + }, + "SQUIDPY_SPATIAL_NEIGHBORS": { + "anndata": "0.12.4", + "python": "3.12.12", + "squidpy": "1.6.5" }, "UNTAR_SPACERANGER_INPUT": { "untar": 1.34 @@ -32,12 +132,1715 @@ "Workflow": { "nf-core/spatialvi": "v1.0dev" } - } + }, + [ + "CytAssist_11mm_FFPE_Human_Glioblastoma_2", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/data", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/data/CytAssist_11mm_FFPE_Human_Glioblastoma_2-raw.h5ad", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/data/CytAssist_11mm_FFPE_Human_Glioblastoma_2.h5ad", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/data/CytAssist_11mm_FFPE_Human_Glioblastoma_2_svg.csv", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/fastqc", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/fastqc/CytAssist_11mm_FFPE_Human_Glioblastoma_2_1_fastqc.html", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/fastqc/CytAssist_11mm_FFPE_Human_Glioblastoma_2_1_fastqc.zip", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/fastqc/CytAssist_11mm_FFPE_Human_Glioblastoma_2_2_fastqc.html", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/fastqc/CytAssist_11mm_FFPE_Human_Glioblastoma_2_2_fastqc.zip", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/fastqc/CytAssist_11mm_FFPE_Human_Glioblastoma_2_3_fastqc.html", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/fastqc/CytAssist_11mm_FFPE_Human_Glioblastoma_2_3_fastqc.zip", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/fastqc/CytAssist_11mm_FFPE_Human_Glioblastoma_2_4_fastqc.html", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/fastqc/CytAssist_11mm_FFPE_Human_Glioblastoma_2_4_fastqc.zip", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/plots", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/plots/cluster_sizes.png", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/plots/clusters-spatial.png", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/plots/deg-dotplot.png", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/plots/deg-heatmap.png", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/plots/highly-variable-genes.png", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/plots/interaction-matrix.png", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/plots/neighborhood-enrichment.png", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/plots/pca.png", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/plots/qc-distribution-n_genes_by_counts.png", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/plots/qc-distribution-pct_counts_hb.png", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/plots/qc-distribution-pct_counts_mt.png", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/plots/qc-distribution-pct_counts_ribo.png", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/plots/qc-distribution-total_counts.png", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/plots/qc-spatial-n_genes_by_counts.png", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/plots/qc-spatial-pct_counts_hb.png", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/plots/qc-spatial-pct_counts_mt.png", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/plots/qc-spatial-pct_counts_ribo.png", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/plots/qc-spatial-total_counts.png", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/plots/spatial-ENSG00000066294.png", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/plots/spatial-ENSG00000117707.png", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/plots/spatial-ENSG00000118785.png", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/plots/spatial-ENSG00000135838.png", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/plots/spatial-ENSG00000162734.png", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/plots/spatial-ENSG00000198695.png", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/plots/spatial-ENSG00000198899.png", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/plots/spatial-ENSG00000198938.png", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/plots/spatial-ENSG00000204388.png", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/plots/umap-clusters.png", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/plots/umap-n_genes_by_counts.png", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/plots/umap-pct_counts_hb.png", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/plots/umap-pct_counts_mt.png", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/plots/umap-pct_counts_ribo.png", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/plots/umap-total_counts.png", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/reports", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/reports/_extensions", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/reports/_extensions/nf-core", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/reports/_extensions/nf-core/_extension.yml", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/reports/_extensions/nf-core/nf-core-spatialvi_logo_light.png", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/reports/_extensions/nf-core/nf-core.scss", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/reports/_extensions/nf-core/nf-core.theme", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/reports/_extensions/nf-core/toc.html", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/reports/report-CytAssist_11mm_FFPE_Human_Glioblastoma_2.html", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/reports/report.qmd", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/reports/report.yml", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/analysis", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/analysis/clustering", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/analysis/clustering/gene_expression_graphclust", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/analysis/clustering/gene_expression_graphclust/clusters.csv", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/analysis/clustering/gene_expression_kmeans_10_clusters", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/analysis/clustering/gene_expression_kmeans_10_clusters/clusters.csv", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/analysis/clustering/gene_expression_kmeans_2_clusters", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/analysis/clustering/gene_expression_kmeans_2_clusters/clusters.csv", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/analysis/clustering/gene_expression_kmeans_3_clusters", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/analysis/clustering/gene_expression_kmeans_3_clusters/clusters.csv", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/analysis/clustering/gene_expression_kmeans_4_clusters", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/analysis/clustering/gene_expression_kmeans_4_clusters/clusters.csv", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/analysis/clustering/gene_expression_kmeans_5_clusters", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/analysis/clustering/gene_expression_kmeans_5_clusters/clusters.csv", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/analysis/clustering/gene_expression_kmeans_6_clusters", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/analysis/clustering/gene_expression_kmeans_6_clusters/clusters.csv", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/analysis/clustering/gene_expression_kmeans_7_clusters", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/analysis/clustering/gene_expression_kmeans_7_clusters/clusters.csv", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/analysis/clustering/gene_expression_kmeans_8_clusters", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/analysis/clustering/gene_expression_kmeans_8_clusters/clusters.csv", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/analysis/clustering/gene_expression_kmeans_9_clusters", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/analysis/clustering/gene_expression_kmeans_9_clusters/clusters.csv", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/analysis/diffexp", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/analysis/diffexp/gene_expression_graphclust", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/analysis/diffexp/gene_expression_graphclust/differential_expression.csv", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/analysis/diffexp/gene_expression_kmeans_10_clusters", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/analysis/diffexp/gene_expression_kmeans_10_clusters/differential_expression.csv", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/analysis/diffexp/gene_expression_kmeans_2_clusters", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/analysis/diffexp/gene_expression_kmeans_2_clusters/differential_expression.csv", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/analysis/diffexp/gene_expression_kmeans_3_clusters", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/analysis/diffexp/gene_expression_kmeans_3_clusters/differential_expression.csv", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/analysis/diffexp/gene_expression_kmeans_4_clusters", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/analysis/diffexp/gene_expression_kmeans_4_clusters/differential_expression.csv", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/analysis/diffexp/gene_expression_kmeans_5_clusters", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/analysis/diffexp/gene_expression_kmeans_5_clusters/differential_expression.csv", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/analysis/diffexp/gene_expression_kmeans_6_clusters", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/analysis/diffexp/gene_expression_kmeans_6_clusters/differential_expression.csv", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/analysis/diffexp/gene_expression_kmeans_7_clusters", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/analysis/diffexp/gene_expression_kmeans_7_clusters/differential_expression.csv", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/analysis/diffexp/gene_expression_kmeans_8_clusters", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/analysis/diffexp/gene_expression_kmeans_8_clusters/differential_expression.csv", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/analysis/diffexp/gene_expression_kmeans_9_clusters", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/analysis/diffexp/gene_expression_kmeans_9_clusters/differential_expression.csv", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/analysis/pca", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/analysis/pca/gene_expression_10_components", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/analysis/pca/gene_expression_10_components/components.csv", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/analysis/pca/gene_expression_10_components/dispersion.csv", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/analysis/pca/gene_expression_10_components/features_selected.csv", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/analysis/pca/gene_expression_10_components/projection.csv", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/analysis/pca/gene_expression_10_components/variance.csv", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/analysis/tsne", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/analysis/tsne/gene_expression_2_components", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/analysis/tsne/gene_expression_2_components/projection.csv", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/analysis/umap", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/analysis/umap/gene_expression_2_components", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/analysis/umap/gene_expression_2_components/projection.csv", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/cloupe.cloupe", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/filtered_feature_bc_matrix", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/filtered_feature_bc_matrix.h5", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/filtered_feature_bc_matrix/barcodes.tsv.gz", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/filtered_feature_bc_matrix/features.tsv.gz", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/filtered_feature_bc_matrix/matrix.mtx.gz", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/metrics_summary.csv", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/molecule_info.h5", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/probe_set.csv", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/raw_feature_bc_matrix", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/raw_feature_bc_matrix.h5", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/raw_feature_bc_matrix/barcodes.tsv.gz", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/raw_feature_bc_matrix/features.tsv.gz", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/raw_feature_bc_matrix/matrix.mtx.gz", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/raw_probe_bc_matrix.h5", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/spatial", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/spatial/aligned_fiducials.jpg", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/spatial/cytassist_image.tiff", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/spatial/detected_tissue_image.jpg", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/spatial/scalefactors_json.json", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/spatial/spatial_enrichment.csv", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/spatial/tissue_hires_image.png", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/spatial/tissue_lowres_image.png", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/spatial/tissue_positions.csv", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/web_summary.html", + "integration", + "integration/data", + "integration/data/harmony.h5ad", + "integration/data/harmony.zarr", + "integration/data/merged.zarr", + "integration/plots", + "integration/plots/spatial-CytAssist_11mm_FFPE_Human_Glioblastoma_2.png", + "integration/plots/umap-clusters_harmony.png", + "integration/plots/umap-library_id.png", + "integration/plots/umap-n_genes_by_counts.png", + "integration/plots/umap-pct_counts_hb.png", + "integration/plots/umap-pct_counts_mt.png", + "integration/plots/umap-pct_counts_ribo.png", + "integration/plots/umap-total_counts.png", + "integration/reports", + "integration/reports/_extensions", + "integration/reports/_extensions/nf-core", + "integration/reports/_extensions/nf-core/_extension.yml", + "integration/reports/_extensions/nf-core/nf-core-spatialvi_logo_light.png", + "integration/reports/_extensions/nf-core/nf-core.scss", + "integration/reports/_extensions/nf-core/nf-core.theme", + "integration/reports/_extensions/nf-core/toc.html", + "integration/reports/report-integrated.html", + "integration/reports/report-integrated.qmd", + "integration/reports/report-integrated.yml", + "multiqc", + "multiqc/multiqc_data", + "multiqc/multiqc_data/BETA-multiqc.parquet", + "multiqc/multiqc_data/fastqc-status-check-heatmap.txt", + "multiqc/multiqc_data/fastqc_adapter_content_plot.txt", + "multiqc/multiqc_data/fastqc_overrepresented_sequences_plot.txt", + "multiqc/multiqc_data/fastqc_per_base_n_content_plot.txt", + "multiqc/multiqc_data/fastqc_per_base_sequence_quality_plot.txt", + "multiqc/multiqc_data/fastqc_per_sequence_gc_content_plot_Counts.txt", + "multiqc/multiqc_data/fastqc_per_sequence_gc_content_plot_Percentages.txt", + "multiqc/multiqc_data/fastqc_per_sequence_quality_scores_plot.txt", + "multiqc/multiqc_data/fastqc_sequence_counts_plot.txt", + "multiqc/multiqc_data/fastqc_sequence_duplication_levels_plot.txt", + "multiqc/multiqc_data/fastqc_top_overrepresented_sequences_table.txt", + "multiqc/multiqc_data/mqc_spaceranger_count_genesXspot.txt", + "multiqc/multiqc_data/mqc_spaceranger_count_genomic_dna.txt", + "multiqc/multiqc_data/mqc_spaceranger_count_saturation.txt", + "multiqc/multiqc_data/multiqc.log", + "multiqc/multiqc_data/multiqc_citations.txt", + "multiqc/multiqc_data/multiqc_data.json", + "multiqc/multiqc_data/multiqc_fastqc.txt", + "multiqc/multiqc_data/multiqc_general_stats.txt", + "multiqc/multiqc_data/multiqc_software_versions.txt", + "multiqc/multiqc_data/multiqc_sources.txt", + "multiqc/multiqc_data/multiqc_spaceranger_count.txt", + "multiqc/multiqc_data/spaceranger-count-stats.txt", + "multiqc/multiqc_plots", + "multiqc/multiqc_plots/pdf", + "multiqc/multiqc_plots/pdf/fastqc-status-check-heatmap.pdf", + "multiqc/multiqc_plots/pdf/fastqc_adapter_content_plot.pdf", + "multiqc/multiqc_plots/pdf/fastqc_overrepresented_sequences_plot.pdf", + "multiqc/multiqc_plots/pdf/fastqc_per_base_n_content_plot.pdf", + "multiqc/multiqc_plots/pdf/fastqc_per_base_sequence_quality_plot.pdf", + "multiqc/multiqc_plots/pdf/fastqc_per_sequence_gc_content_plot_Counts.pdf", + "multiqc/multiqc_plots/pdf/fastqc_per_sequence_gc_content_plot_Percentages.pdf", + "multiqc/multiqc_plots/pdf/fastqc_per_sequence_quality_scores_plot.pdf", + "multiqc/multiqc_plots/pdf/fastqc_sequence_counts_plot-cnt.pdf", + "multiqc/multiqc_plots/pdf/fastqc_sequence_counts_plot-pct.pdf", + "multiqc/multiqc_plots/pdf/fastqc_sequence_duplication_levels_plot.pdf", + "multiqc/multiqc_plots/pdf/fastqc_top_overrepresented_sequences_table.pdf", + "multiqc/multiqc_plots/pdf/mqc_spaceranger_count_genesXspot.pdf", + "multiqc/multiqc_plots/pdf/mqc_spaceranger_count_genomic_dna.pdf", + "multiqc/multiqc_plots/pdf/mqc_spaceranger_count_saturation.pdf", + "multiqc/multiqc_plots/pdf/spaceranger-count-stats.pdf", + "multiqc/multiqc_plots/png", + "multiqc/multiqc_plots/png/fastqc-status-check-heatmap.png", + "multiqc/multiqc_plots/png/fastqc_adapter_content_plot.png", + "multiqc/multiqc_plots/png/fastqc_overrepresented_sequences_plot.png", + "multiqc/multiqc_plots/png/fastqc_per_base_n_content_plot.png", + "multiqc/multiqc_plots/png/fastqc_per_base_sequence_quality_plot.png", + "multiqc/multiqc_plots/png/fastqc_per_sequence_gc_content_plot_Counts.png", + "multiqc/multiqc_plots/png/fastqc_per_sequence_gc_content_plot_Percentages.png", + "multiqc/multiqc_plots/png/fastqc_per_sequence_quality_scores_plot.png", + "multiqc/multiqc_plots/png/fastqc_sequence_counts_plot-cnt.png", + "multiqc/multiqc_plots/png/fastqc_sequence_counts_plot-pct.png", + "multiqc/multiqc_plots/png/fastqc_sequence_duplication_levels_plot.png", + "multiqc/multiqc_plots/png/fastqc_top_overrepresented_sequences_table.png", + "multiqc/multiqc_plots/png/mqc_spaceranger_count_genesXspot.png", + "multiqc/multiqc_plots/png/mqc_spaceranger_count_genomic_dna.png", + "multiqc/multiqc_plots/png/mqc_spaceranger_count_saturation.png", + "multiqc/multiqc_plots/png/spaceranger-count-stats.png", + "multiqc/multiqc_plots/svg", + "multiqc/multiqc_plots/svg/fastqc-status-check-heatmap.svg", + "multiqc/multiqc_plots/svg/fastqc_adapter_content_plot.svg", + "multiqc/multiqc_plots/svg/fastqc_overrepresented_sequences_plot.svg", + "multiqc/multiqc_plots/svg/fastqc_per_base_n_content_plot.svg", + "multiqc/multiqc_plots/svg/fastqc_per_base_sequence_quality_plot.svg", + "multiqc/multiqc_plots/svg/fastqc_per_sequence_gc_content_plot_Counts.svg", + "multiqc/multiqc_plots/svg/fastqc_per_sequence_gc_content_plot_Percentages.svg", + "multiqc/multiqc_plots/svg/fastqc_per_sequence_quality_scores_plot.svg", + "multiqc/multiqc_plots/svg/fastqc_sequence_counts_plot-cnt.svg", + "multiqc/multiqc_plots/svg/fastqc_sequence_counts_plot-pct.svg", + "multiqc/multiqc_plots/svg/fastqc_sequence_duplication_levels_plot.svg", + "multiqc/multiqc_plots/svg/fastqc_top_overrepresented_sequences_table.svg", + "multiqc/multiqc_plots/svg/mqc_spaceranger_count_genesXspot.svg", + "multiqc/multiqc_plots/svg/mqc_spaceranger_count_genomic_dna.svg", + "multiqc/multiqc_plots/svg/mqc_spaceranger_count_saturation.svg", + "multiqc/multiqc_plots/svg/spaceranger-count-stats.svg", + "multiqc/multiqc_report.html", + "pipeline_info", + "pipeline_info/nf_core_spatialvi_software_mqc_versions.yml" + ], + [ + "integration/data/harmony.zarr/.zattrs", + "integration/data/harmony.zarr/.zgroup", + "integration/data/harmony.zarr/images", + "integration/data/harmony.zarr/images/.zgroup", + "integration/data/harmony.zarr/images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image", + "integration/data/harmony.zarr/images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/.zattrs", + "integration/data/harmony.zarr/images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/.zgroup", + "integration/data/harmony.zarr/images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/0/.zarray", + "integration/data/harmony.zarr/images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_lowres_image", + "integration/data/harmony.zarr/images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_lowres_image/.zattrs", + "integration/data/harmony.zarr/images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_lowres_image/.zgroup", + "integration/data/harmony.zarr/images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_lowres_image/0/.zarray", + "integration/data/harmony.zarr/shapes", + "integration/data/harmony.zarr/shapes/.zgroup", + "integration/data/harmony.zarr/shapes/CytAssist_11mm_FFPE_Human_Glioblastoma_2", + "integration/data/harmony.zarr/shapes/CytAssist_11mm_FFPE_Human_Glioblastoma_2/.zattrs", + "integration/data/harmony.zarr/shapes/CytAssist_11mm_FFPE_Human_Glioblastoma_2/.zgroup", + "integration/data/harmony.zarr/shapes/CytAssist_11mm_FFPE_Human_Glioblastoma_2/shapes.parquet", + "integration/data/harmony.zarr/tables", + "integration/data/harmony.zarr/tables/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/X", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/X/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/X/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/X/data", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/X/data/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/X/indices", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/X/indices/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/X/indptr", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/X/indptr/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/layers", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/layers/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/layers/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/layers/raw", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/layers/raw/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/layers/raw/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/layers/raw/data", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/layers/raw/data/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/layers/raw/indices", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/layers/raw/indices/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/layers/raw/indptr", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/layers/raw/indptr/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/_index", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/_index/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/_index/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/array_col", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/array_col/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/array_col/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/array_row", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/array_row/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/array_row/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/clusters", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/clusters/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/clusters/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/clusters/categories", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/clusters/categories/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/clusters/categories/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/clusters/codes", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/clusters/codes/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/clusters/codes/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/clusters_harmony", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/clusters_harmony/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/clusters_harmony/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/in_tissue", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/in_tissue/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/in_tissue/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/n_counts", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/n_counts/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/n_counts/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/n_genes", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/n_genes/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/n_genes/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/n_genes_by_counts", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/n_genes_by_counts/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/n_genes_by_counts/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/pct_counts_hb", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/pct_counts_hb/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/pct_counts_hb/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/pct_counts_in_top_100_genes", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/pct_counts_in_top_100_genes/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/pct_counts_in_top_100_genes/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/pct_counts_in_top_200_genes", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/pct_counts_in_top_200_genes/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/pct_counts_in_top_200_genes/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/pct_counts_in_top_500_genes", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/pct_counts_in_top_500_genes/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/pct_counts_in_top_500_genes/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/pct_counts_in_top_50_genes", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/pct_counts_in_top_50_genes/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/pct_counts_in_top_50_genes/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/pct_counts_mt", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/pct_counts_mt/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/pct_counts_mt/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/pct_counts_ribo", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/pct_counts_ribo/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/pct_counts_ribo/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/region", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/region/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/region/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/region/categories", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/region/categories/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/region/categories/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/region/codes", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/region/codes/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/region/codes/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/spot_id", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/spot_id/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/spot_id/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/total_counts", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/total_counts/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/total_counts/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/total_counts_hb", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/total_counts_hb/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/total_counts_hb/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/total_counts_mt", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/total_counts_mt/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/total_counts_mt/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/total_counts_normalized", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/total_counts_normalized/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/total_counts_normalized/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/total_counts_ribo", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/total_counts_ribo/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/total_counts_ribo/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/X_harmony", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/X_harmony/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/X_harmony/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/X_pca", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/X_pca/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/X_pca/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/X_umap", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/X_umap/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/X_umap/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/X_umap_harmony", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/X_umap_harmony/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/X_umap_harmony/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/spatial", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/spatial/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/spatial/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/connectivities", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/connectivities/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/connectivities/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/connectivities/data", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/connectivities/data/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/connectivities/indices", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/connectivities/indices/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/connectivities/indptr", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/connectivities/indptr/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/distances", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/distances/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/distances/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/distances/data", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/distances/data/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/distances/indices", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/distances/indices/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/distances/indptr", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/distances/indptr/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/spatial_connectivities", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/spatial_connectivities/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/spatial_connectivities/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/spatial_connectivities/data", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/spatial_connectivities/data/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/spatial_connectivities/indices", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/spatial_connectivities/indices/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/spatial_connectivities/indptr", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/spatial_connectivities/indptr/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/spatial_distances", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/spatial_distances/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/spatial_distances/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/spatial_distances/data", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/spatial_distances/data/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/spatial_distances/indices", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/spatial_distances/indices/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/spatial_distances/indptr", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/spatial_distances/indptr/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/raw", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/raw/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/raw/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/X_umap", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/X_umap/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/X_umap/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/X_umap/params", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/X_umap/params/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/X_umap/params/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/X_umap/params/a", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/X_umap/params/a/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/X_umap/params/a/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/X_umap/params/b", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/X_umap/params/b/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/X_umap/params/b/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters/params", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters/params/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters/params/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters/params/n_iterations", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters/params/n_iterations/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters/params/n_iterations/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters/params/random_state", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters/params/random_state/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters/params/random_state/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters/params/resolution", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters/params/resolution/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters/params/resolution/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters_interactions", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters_interactions/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters_interactions/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters_nhood_enrichment", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters_nhood_enrichment/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters_nhood_enrichment/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters_nhood_enrichment/count", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters_nhood_enrichment/count/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters_nhood_enrichment/count/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters_nhood_enrichment/zscore", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters_nhood_enrichment/zscore/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters_nhood_enrichment/zscore/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/coordinate_system", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/coordinate_system/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/coordinate_system/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/genes_filtered_min_obs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/genes_filtered_min_obs/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/genes_filtered_min_obs/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/hb_threshold", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/hb_threshold/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/hb_threshold/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/min_counts_threshold", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/min_counts_threshold/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/min_counts_threshold/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/min_genes_threshold", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/min_genes_threshold/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/min_genes_threshold/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/min_obs_threshold", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/min_obs_threshold/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/min_obs_threshold/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/mito_threshold", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/mito_threshold/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/mito_threshold/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/obs_filtered_hb", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/obs_filtered_hb/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/obs_filtered_hb/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/obs_filtered_min_counts", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/obs_filtered_min_counts/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/obs_filtered_min_counts/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/obs_filtered_min_genes", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/obs_filtered_min_genes/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/obs_filtered_min_genes/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/obs_filtered_mito", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/obs_filtered_mito/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/obs_filtered_mito/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/obs_filtered_outside_tissue", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/obs_filtered_outside_tissue/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/obs_filtered_outside_tissue/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/obs_filtered_ribo", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/obs_filtered_ribo/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/obs_filtered_ribo/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/ribo_threshold", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/ribo_threshold/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/ribo_threshold/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/sample_id", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/sample_id/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/sample_id/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/total_genes_after", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/total_genes_after/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/total_genes_after/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/total_genes_before", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/total_genes_before/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/total_genes_before/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/total_genes_filtered", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/total_genes_filtered/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/total_genes_filtered/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/total_obs_after", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/total_obs_after/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/total_obs_after/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/total_obs_before", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/total_obs_before/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/total_obs_before/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/total_obs_filtered", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/total_obs_filtered/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/total_obs_filtered/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/hvg", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/hvg/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/hvg/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/hvg/flavor", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/hvg/flavor/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/hvg/flavor/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/hvg/n_hvgs_found", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/hvg/n_hvgs_found/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/hvg/n_hvgs_found/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/hvg/n_hvgs_requested", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/hvg/n_hvgs_requested/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/hvg/n_hvgs_requested/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/leiden", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/leiden/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/leiden/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/leiden/n_clusters", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/leiden/n_clusters/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/leiden/n_clusters/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/leiden/resolution", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/leiden/resolution/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/leiden/resolution/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/log1p", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/log1p/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/log1p/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/log1p/base", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/log1p/base/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/log1p/base/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/moranI", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/moranI/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/moranI/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/moranI/I", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/moranI/I/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/moranI/I/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/moranI/_index", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/moranI/_index/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/moranI/_index/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/moranI/pval_norm", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/moranI/pval_norm/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/moranI/pval_norm/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/moranI/pval_norm_fdr_bh", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/moranI/pval_norm_fdr_bh/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/moranI/pval_norm_fdr_bh/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/moranI/var_norm", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/moranI/var_norm/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/moranI/var_norm/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/connectivities_key", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/connectivities_key/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/connectivities_key/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/distances_key", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/distances_key/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/distances_key/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/params", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/params/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/params/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/params/method", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/params/method/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/params/method/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/params/metric", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/params/metric/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/params/metric/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/params/n_neighbors", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/params/n_neighbors/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/params/n_neighbors/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/params/n_pcs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/params/n_pcs/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/params/n_pcs/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/params/random_state", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/params/random_state/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/params/random_state/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/normalization", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/normalization/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/normalization/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/normalization/log1p", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/normalization/log1p/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/normalization/log1p/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/normalization/method", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/normalization/method/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/normalization/method/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/normalization/target_sum", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/normalization/target_sum/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/normalization/target_sum/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca/params", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca/params/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca/params/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca/params/mask_var", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca/params/mask_var/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca/params/mask_var/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca/params/use_highly_variable", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca/params/use_highly_variable/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca/params/use_highly_variable/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca/params/zero_center", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca/params/zero_center/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca/params/zero_center/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca/variance", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca/variance/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca/variance/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca/variance_ratio", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca/variance_ratio/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca/variance_ratio/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/logfoldchanges", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/logfoldchanges/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/logfoldchanges/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/names", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/names/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/names/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/params", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/params/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/params/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/params/corr_method", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/params/corr_method/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/params/corr_method/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/params/groupby", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/params/groupby/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/params/groupby/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/params/layer", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/params/layer/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/params/layer/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/params/method", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/params/method/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/params/method/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/params/reference", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/params/reference/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/params/reference/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/params/use_raw", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/params/use_raw/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/params/use_raw/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/pvals", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/pvals/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/pvals/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/pvals_adj", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/pvals_adj/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/pvals_adj/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/scores", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/scores/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/scores/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/sample_id", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/sample_id/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/sample_id/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2/metadata", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2/metadata/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2/metadata/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2/metadata/chemistry_description", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2/metadata/chemistry_description/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2/metadata/chemistry_description/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2/metadata/software_version", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2/metadata/software_version/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2/metadata/software_version/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/lowres", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/lowres/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/lowres/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/scalefactors", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/scalefactors/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/scalefactors/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/scalefactors/spot_diameter_fullres", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/scalefactors/spot_diameter_fullres/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/scalefactors/spot_diameter_fullres/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/scalefactors/tissue_hires_scalef", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/scalefactors/tissue_hires_scalef/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/scalefactors/tissue_hires_scalef/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/scalefactors/tissue_lowres_scalef", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/scalefactors/tissue_lowres_scalef/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/scalefactors/tissue_lowres_scalef/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial_neighbors", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial_neighbors/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial_neighbors/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial_neighbors/connectivities_key", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial_neighbors/connectivities_key/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial_neighbors/connectivities_key/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial_neighbors/distances_key", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial_neighbors/distances_key/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial_neighbors/distances_key/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial_neighbors/params", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial_neighbors/params/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial_neighbors/params/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial_neighbors/params/coord_type", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial_neighbors/params/coord_type/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial_neighbors/params/coord_type/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial_neighbors/params/n_neighbors", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial_neighbors/params/n_neighbors/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial_neighbors/params/n_neighbors/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial_neighbors/params/radius", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial_neighbors/params/radius/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial_neighbors/params/radius/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial_neighbors/params/transform", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial_neighbors/params/transform/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial_neighbors/params/transform/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/instance_key", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/instance_key/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/instance_key/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/region", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/region/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/region/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/region_key", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/region_key/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/region_key/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/table_name", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/table_name/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/table_name/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/_index", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/_index/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/_index/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/dispersions", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/dispersions/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/dispersions/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/dispersions_norm", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/dispersions_norm/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/dispersions_norm/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/feature_types", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/feature_types/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/feature_types/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/feature_types/categories", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/feature_types/categories/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/feature_types/categories/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/feature_types/codes", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/feature_types/codes/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/feature_types/codes/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/gene_ids", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/gene_ids/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/gene_ids/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/genome", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/genome/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/genome/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/genome/categories", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/genome/categories/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/genome/categories/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/genome/codes", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/genome/codes/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/genome/codes/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/hb", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/hb/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/hb/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/highly_variable", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/highly_variable/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/highly_variable/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/mean_counts", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/mean_counts/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/mean_counts/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/means", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/means/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/means/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/mt", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/mt/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/mt/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/n_cells", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/n_cells/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/n_cells/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/n_cells_by_counts", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/n_cells_by_counts/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/n_cells_by_counts/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/pct_dropout_by_counts", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/pct_dropout_by_counts/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/pct_dropout_by_counts/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/ribo", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/ribo/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/ribo/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/total_counts", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/total_counts/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/total_counts/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/varm", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/varm/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/varm/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/varm/PCs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/varm/PCs/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/varm/PCs/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/varp", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/varp/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/varp/.zgroup", + "integration/data/harmony.zarr/zmetadata", + "integration/data/merged.zarr/.zattrs", + "integration/data/merged.zarr/.zgroup", + "integration/data/merged.zarr/images", + "integration/data/merged.zarr/images/.zgroup", + "integration/data/merged.zarr/images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image", + "integration/data/merged.zarr/images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/.zattrs", + "integration/data/merged.zarr/images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/.zgroup", + "integration/data/merged.zarr/images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/0/.zarray", + "integration/data/merged.zarr/images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_lowres_image", + "integration/data/merged.zarr/images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_lowres_image/.zattrs", + "integration/data/merged.zarr/images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_lowres_image/.zgroup", + "integration/data/merged.zarr/images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_lowres_image/0/.zarray", + "integration/data/merged.zarr/shapes", + "integration/data/merged.zarr/shapes/.zgroup", + "integration/data/merged.zarr/shapes/CytAssist_11mm_FFPE_Human_Glioblastoma_2", + "integration/data/merged.zarr/shapes/CytAssist_11mm_FFPE_Human_Glioblastoma_2/.zattrs", + "integration/data/merged.zarr/shapes/CytAssist_11mm_FFPE_Human_Glioblastoma_2/.zgroup", + "integration/data/merged.zarr/shapes/CytAssist_11mm_FFPE_Human_Glioblastoma_2/shapes.parquet", + "integration/data/merged.zarr/tables", + "integration/data/merged.zarr/tables/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/X", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/X/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/X/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/X/data", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/X/data/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/X/indices", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/X/indices/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/X/indptr", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/X/indptr/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/layers", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/layers/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/layers/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/layers/raw", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/layers/raw/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/layers/raw/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/layers/raw/data", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/layers/raw/data/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/layers/raw/indices", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/layers/raw/indices/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/layers/raw/indptr", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/layers/raw/indptr/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/_index", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/_index/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/_index/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/array_col", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/array_col/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/array_col/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/array_row", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/array_row/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/array_row/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/clusters", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/clusters/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/clusters/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/clusters/categories", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/clusters/categories/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/clusters/categories/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/clusters/codes", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/clusters/codes/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/clusters/codes/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/in_tissue", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/in_tissue/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/in_tissue/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/n_counts", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/n_counts/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/n_counts/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/n_genes", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/n_genes/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/n_genes/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/n_genes_by_counts", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/n_genes_by_counts/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/n_genes_by_counts/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/pct_counts_hb", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/pct_counts_hb/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/pct_counts_hb/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/pct_counts_in_top_100_genes", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/pct_counts_in_top_100_genes/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/pct_counts_in_top_100_genes/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/pct_counts_in_top_200_genes", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/pct_counts_in_top_200_genes/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/pct_counts_in_top_200_genes/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/pct_counts_in_top_500_genes", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/pct_counts_in_top_500_genes/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/pct_counts_in_top_500_genes/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/pct_counts_in_top_50_genes", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/pct_counts_in_top_50_genes/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/pct_counts_in_top_50_genes/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/pct_counts_mt", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/pct_counts_mt/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/pct_counts_mt/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/pct_counts_ribo", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/pct_counts_ribo/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/pct_counts_ribo/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/region", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/region/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/region/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/region/categories", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/region/categories/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/region/categories/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/region/codes", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/region/codes/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/region/codes/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/spot_id", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/spot_id/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/spot_id/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/total_counts", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/total_counts/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/total_counts/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/total_counts_hb", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/total_counts_hb/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/total_counts_hb/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/total_counts_mt", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/total_counts_mt/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/total_counts_mt/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/total_counts_normalized", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/total_counts_normalized/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/total_counts_normalized/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/total_counts_ribo", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/total_counts_ribo/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/total_counts_ribo/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/X_pca", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/X_pca/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/X_pca/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/X_umap", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/X_umap/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/X_umap/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/spatial", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/spatial/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/spatial/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/connectivities", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/connectivities/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/connectivities/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/connectivities/data", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/connectivities/data/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/connectivities/indices", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/connectivities/indices/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/connectivities/indptr", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/connectivities/indptr/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/distances", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/distances/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/distances/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/distances/data", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/distances/data/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/distances/indices", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/distances/indices/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/distances/indptr", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/distances/indptr/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/spatial_connectivities", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/spatial_connectivities/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/spatial_connectivities/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/spatial_connectivities/data", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/spatial_connectivities/data/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/spatial_connectivities/indices", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/spatial_connectivities/indices/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/spatial_connectivities/indptr", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/spatial_connectivities/indptr/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/spatial_distances", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/spatial_distances/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/spatial_distances/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/spatial_distances/data", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/spatial_distances/data/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/spatial_distances/indices", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/spatial_distances/indices/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/spatial_distances/indptr", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/spatial_distances/indptr/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/raw", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/raw/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/raw/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/X_umap", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/X_umap/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/X_umap/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/X_umap/params", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/X_umap/params/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/X_umap/params/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/X_umap/params/a", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/X_umap/params/a/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/X_umap/params/a/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/X_umap/params/b", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/X_umap/params/b/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/X_umap/params/b/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters/params", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters/params/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters/params/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters/params/n_iterations", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters/params/n_iterations/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters/params/n_iterations/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters/params/random_state", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters/params/random_state/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters/params/random_state/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters/params/resolution", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters/params/resolution/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters/params/resolution/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters_interactions", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters_interactions/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters_interactions/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters_nhood_enrichment", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters_nhood_enrichment/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters_nhood_enrichment/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters_nhood_enrichment/count", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters_nhood_enrichment/count/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters_nhood_enrichment/count/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters_nhood_enrichment/zscore", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters_nhood_enrichment/zscore/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters_nhood_enrichment/zscore/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/coordinate_system", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/coordinate_system/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/coordinate_system/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/genes_filtered_min_obs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/genes_filtered_min_obs/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/genes_filtered_min_obs/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/hb_threshold", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/hb_threshold/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/hb_threshold/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/min_counts_threshold", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/min_counts_threshold/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/min_counts_threshold/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/min_genes_threshold", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/min_genes_threshold/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/min_genes_threshold/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/min_obs_threshold", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/min_obs_threshold/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/min_obs_threshold/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/mito_threshold", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/mito_threshold/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/mito_threshold/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/obs_filtered_hb", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/obs_filtered_hb/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/obs_filtered_hb/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/obs_filtered_min_counts", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/obs_filtered_min_counts/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/obs_filtered_min_counts/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/obs_filtered_min_genes", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/obs_filtered_min_genes/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/obs_filtered_min_genes/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/obs_filtered_mito", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/obs_filtered_mito/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/obs_filtered_mito/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/obs_filtered_outside_tissue", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/obs_filtered_outside_tissue/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/obs_filtered_outside_tissue/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/obs_filtered_ribo", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/obs_filtered_ribo/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/obs_filtered_ribo/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/ribo_threshold", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/ribo_threshold/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/ribo_threshold/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/sample_id", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/sample_id/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/sample_id/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/total_genes_after", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/total_genes_after/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/total_genes_after/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/total_genes_before", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/total_genes_before/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/total_genes_before/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/total_genes_filtered", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/total_genes_filtered/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/total_genes_filtered/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/total_obs_after", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/total_obs_after/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/total_obs_after/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/total_obs_before", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/total_obs_before/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/total_obs_before/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/total_obs_filtered", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/total_obs_filtered/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/total_obs_filtered/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/hvg", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/hvg/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/hvg/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/hvg/flavor", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/hvg/flavor/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/hvg/flavor/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/hvg/n_hvgs_found", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/hvg/n_hvgs_found/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/hvg/n_hvgs_found/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/hvg/n_hvgs_requested", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/hvg/n_hvgs_requested/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/hvg/n_hvgs_requested/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/leiden", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/leiden/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/leiden/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/leiden/n_clusters", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/leiden/n_clusters/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/leiden/n_clusters/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/leiden/resolution", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/leiden/resolution/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/leiden/resolution/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/log1p", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/log1p/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/log1p/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/log1p/base", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/log1p/base/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/log1p/base/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/moranI", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/moranI/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/moranI/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/moranI/I", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/moranI/I/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/moranI/I/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/moranI/_index", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/moranI/_index/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/moranI/_index/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/moranI/pval_norm", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/moranI/pval_norm/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/moranI/pval_norm/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/moranI/pval_norm_fdr_bh", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/moranI/pval_norm_fdr_bh/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/moranI/pval_norm_fdr_bh/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/moranI/var_norm", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/moranI/var_norm/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/moranI/var_norm/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/connectivities_key", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/connectivities_key/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/connectivities_key/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/distances_key", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/distances_key/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/distances_key/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/params", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/params/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/params/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/params/method", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/params/method/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/params/method/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/params/metric", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/params/metric/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/params/metric/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/params/n_neighbors", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/params/n_neighbors/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/params/n_neighbors/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/params/n_pcs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/params/n_pcs/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/params/n_pcs/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/params/random_state", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/params/random_state/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/params/random_state/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/normalization", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/normalization/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/normalization/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/normalization/log1p", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/normalization/log1p/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/normalization/log1p/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/normalization/method", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/normalization/method/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/normalization/method/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/normalization/target_sum", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/normalization/target_sum/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/normalization/target_sum/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca/params", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca/params/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca/params/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca/params/mask_var", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca/params/mask_var/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca/params/mask_var/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca/params/use_highly_variable", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca/params/use_highly_variable/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca/params/use_highly_variable/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca/params/zero_center", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca/params/zero_center/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca/params/zero_center/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca/variance", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca/variance/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca/variance/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca/variance_ratio", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca/variance_ratio/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca/variance_ratio/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/logfoldchanges", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/logfoldchanges/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/logfoldchanges/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/names", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/names/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/names/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/params", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/params/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/params/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/params/corr_method", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/params/corr_method/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/params/corr_method/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/params/groupby", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/params/groupby/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/params/groupby/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/params/layer", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/params/layer/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/params/layer/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/params/method", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/params/method/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/params/method/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/params/reference", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/params/reference/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/params/reference/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/params/use_raw", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/params/use_raw/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/params/use_raw/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/pvals", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/pvals/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/pvals/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/pvals_adj", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/pvals_adj/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/pvals_adj/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/scores", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/scores/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/scores/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/sample_id", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/sample_id/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/sample_id/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2/metadata", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2/metadata/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2/metadata/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2/metadata/chemistry_description", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2/metadata/chemistry_description/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2/metadata/chemistry_description/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2/metadata/software_version", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2/metadata/software_version/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2/metadata/software_version/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/lowres", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/lowres/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/lowres/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/scalefactors", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/scalefactors/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/scalefactors/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/scalefactors/spot_diameter_fullres", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/scalefactors/spot_diameter_fullres/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/scalefactors/spot_diameter_fullres/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/scalefactors/tissue_hires_scalef", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/scalefactors/tissue_hires_scalef/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/scalefactors/tissue_hires_scalef/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/scalefactors/tissue_lowres_scalef", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/scalefactors/tissue_lowres_scalef/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/scalefactors/tissue_lowres_scalef/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial_neighbors", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial_neighbors/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial_neighbors/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial_neighbors/connectivities_key", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial_neighbors/connectivities_key/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial_neighbors/connectivities_key/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial_neighbors/distances_key", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial_neighbors/distances_key/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial_neighbors/distances_key/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial_neighbors/params", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial_neighbors/params/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial_neighbors/params/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial_neighbors/params/coord_type", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial_neighbors/params/coord_type/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial_neighbors/params/coord_type/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial_neighbors/params/n_neighbors", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial_neighbors/params/n_neighbors/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial_neighbors/params/n_neighbors/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial_neighbors/params/radius", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial_neighbors/params/radius/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial_neighbors/params/radius/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial_neighbors/params/transform", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial_neighbors/params/transform/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial_neighbors/params/transform/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/instance_key", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/instance_key/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/instance_key/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/region", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/region/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/region/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/region_key", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/region_key/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/region_key/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/table_name", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/table_name/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/table_name/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/_index", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/_index/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/_index/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/dispersions", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/dispersions/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/dispersions/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/dispersions_norm", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/dispersions_norm/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/dispersions_norm/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/feature_types", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/feature_types/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/feature_types/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/feature_types/categories", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/feature_types/categories/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/feature_types/categories/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/feature_types/codes", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/feature_types/codes/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/feature_types/codes/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/gene_ids", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/gene_ids/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/gene_ids/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/genome", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/genome/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/genome/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/genome/categories", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/genome/categories/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/genome/categories/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/genome/codes", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/genome/codes/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/genome/codes/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/hb", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/hb/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/hb/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/highly_variable", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/highly_variable/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/highly_variable/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/mean_counts", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/mean_counts/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/mean_counts/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/means", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/means/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/means/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/mt", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/mt/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/mt/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/n_cells", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/n_cells/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/n_cells/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/n_cells_by_counts", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/n_cells_by_counts/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/n_cells_by_counts/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/pct_dropout_by_counts", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/pct_dropout_by_counts/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/pct_dropout_by_counts/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/ribo", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/ribo/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/ribo/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/total_counts", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/total_counts/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/total_counts/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/varm", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/varm/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/varm/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/varm/PCs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/varm/PCs/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/varm/PCs/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/varp", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/varp/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/varp/.zgroup", + "integration/data/merged.zarr/zmetadata" + ], + [ + "report.qmd:md5,03555321961957d8d645b446350921e0", + "report.yml:md5,b37ad57697e27be7b6f472ae15d0d806", + "clusters.csv:md5,a53b18e9472bb24749d69145d0d3ed9c", + "clusters.csv:md5,e61073c0502c14030d7a487f7ef36a20", + "clusters.csv:md5,418fd1185ecf9aca9749c1d189373425", + "clusters.csv:md5,2bf98bcf928bf46160b7cbd9b3b03828", + "clusters.csv:md5,35d784ebe24d54a5bb56f81c8abac865", + "clusters.csv:md5,560eb20a41464240e15ff4078a1e782d", + "clusters.csv:md5,58e5ff2940f4e0fe286d3d701758be24", + "clusters.csv:md5,18d386fc7ca6261caf880294636818f8", + "clusters.csv:md5,92600993a19f8f3c034e4f4164aca381", + "clusters.csv:md5,e98e707778bdbaff7090ecc8101060cb", + "differential_expression.csv:md5,6857fa14bf4ab52856b870dd05e64a51", + "differential_expression.csv:md5,cda63135ad11b1bc0e7224a0118b70e4", + "differential_expression.csv:md5,f98bc46a71b52d886b9304a12c53d47e", + "differential_expression.csv:md5,60cf00aa6264d3b7c67a9e027f37295d", + "differential_expression.csv:md5,79617a76942962a22cd12469ff4f2bc3", + "differential_expression.csv:md5,6fa5c9755fae7c336a4ace3159242275", + "differential_expression.csv:md5,67d2276f83e246e07f0435aec8bc50b2", + "differential_expression.csv:md5,391ef3085d8c49a6dc4da067f29d0d58", + "differential_expression.csv:md5,9230832b1f8bd4ffd6eb74ca585bf22c", + "differential_expression.csv:md5,7d8a706cc3d6f8875a829a5f6a3ec4ca", + "dispersion.csv:md5,a5e9a31658bd04b6308c039eac9e50f2", + "features_selected.csv:md5,ae4779f5cc814b3f1d1534033518b626", + "filtered_feature_bc_matrix.h5:md5,271669e4bf826da2ddff743a6117119b", + "matrix.mtx.gz:md5,41f4c8d4b71cef1ff921a177f8afe9ad", + "metrics_summary.csv:md5,5af6a326178857d703945c076717e290", + "probe_set.csv:md5,5bfb8f12319be1b2b6c14142537c3804", + "raw_feature_bc_matrix.h5:md5,18014d7cf9d61813f63330ca7c046a87", + "matrix.mtx.gz:md5,bf393bad88f9f9cab3b49da8267f7126", + "raw_probe_bc_matrix.h5:md5,538b4db4505bed53de70c9b837fced5c", + "aligned_fiducials.jpg:md5,b2adbbb1324a09025332fd1e76d391d9", + "cytassist_image.tiff:md5,0fb04a55e5658f4d158d986a334b034d", + "detected_tissue_image.jpg:md5,10f944385c91d134528bcabc71bb0686", + "spatial_enrichment.csv:md5,0cedfe65b4a8c3dc7c8cc15862f01e07", + "tissue_positions.csv:md5,930aeb2b790032337d91dd27cc70f135", + "report-integrated.qmd:md5,a669fd7ba5e9658198c220b37bd66818", + "report-integrated.yml:md5,a4d0e2a88b83c3c5035ab9570430991e", + "mqc_spaceranger_count_genesXspot.txt:md5,e7f109f701cb692dd8dc1cd45498e08f", + "mqc_spaceranger_count_genomic_dna.txt:md5,5148a48bf99ec61b648188caf0558e26", + "mqc_spaceranger_count_saturation.txt:md5,8a81c8b9831588776559c3e3a3d42aef", + "multiqc_citations.txt:md5,4c806e63a283ec1b7e78cdae3a923d4f", + "multiqc_spaceranger_count.txt:md5,94d6308c11039ce04818426b49f27b22", + "spaceranger-count-stats.txt:md5,e47ed2e4e151aef489950b02d0765e54" + ], + [ + { + "file": "CytAssist_11mm_FFPE_Human_Glioblastoma_2-raw.h5ad", + "contents": { + "n_obs": 14336, + "n_vars": 19023, + "obs": { + "index": "_index", + "columns": [ + "array_col", + "array_row", + "in_tissue", + "region", + "spot_id" + ] + }, + "var": { + "index": "_index", + "columns": [ + "feature_types", + "gene_ids", + "genome" + ] + }, + "layers": [ + "raw" + ], + "obsm": [ + "spatial" + ], + "varm": [ + + ], + "obsp": [ + + ], + "varp": [ + + ], + "uns": [ + "coordinate_system", + "sample_id", + "spatial", + "spatialdata_attrs", + "table_name" + ] + } + }, + { + "file": "CytAssist_11mm_FFPE_Human_Glioblastoma_2.h5ad", + "contents": { + "n_obs": 844, + "n_vars": 3606, + "obs": { + "index": "_index", + "columns": [ + "array_col", + "array_row", + "clusters", + "in_tissue", + "n_counts", + "n_genes", + "n_genes_by_counts", + "pct_counts_hb", + "pct_counts_in_top_100_genes", + "pct_counts_in_top_200_genes", + "pct_counts_in_top_500_genes", + "pct_counts_in_top_50_genes", + "pct_counts_mt", + "pct_counts_ribo", + "region", + "spot_id", + "total_counts", + "total_counts_hb", + "total_counts_mt", + "total_counts_normalized", + "total_counts_ribo" + ] + }, + "var": { + "index": "_index", + "columns": [ + "dispersions", + "dispersions_norm", + "feature_types", + "gene_ids", + "genome", + "hb", + "highly_variable", + "mean_counts", + "means", + "mt", + "n_cells", + "n_cells_by_counts", + "pct_dropout_by_counts", + "ribo", + "total_counts" + ] + }, + "layers": [ + "raw" + ], + "obsm": [ + "X_pca", + "X_umap", + "spatial" + ], + "varm": [ + "PCs" + ], + "obsp": [ + "connectivities", + "distances", + "spatial_connectivities", + "spatial_distances" + ], + "varp": [ + + ], + "uns": [ + "X_umap", + "clusters", + "clusters_interactions", + "clusters_nhood_enrichment", + "coordinate_system", + "filtering_stats", + "hvg", + "leiden", + "log1p", + "moranI", + "neighbors", + "normalization", + "pca", + "rank_genes_groups", + "sample_id", + "spatial", + "spatial_neighbors", + "spatialdata_attrs", + "table_name" + ] + } + }, + { + "file": "harmony.h5ad", + "contents": { + "n_obs": 844, + "n_vars": 3606, + "obs": { + "index": "_index", + "columns": [ + "array_col", + "array_row", + "clusters", + "clusters_harmony", + "in_tissue", + "library_id", + "n_counts", + "n_genes", + "n_genes_by_counts", + "pct_counts_hb", + "pct_counts_in_top_100_genes", + "pct_counts_in_top_200_genes", + "pct_counts_in_top_500_genes", + "pct_counts_in_top_50_genes", + "pct_counts_mt", + "pct_counts_ribo", + "region", + "spot_id", + "total_counts", + "total_counts_hb", + "total_counts_mt", + "total_counts_normalized", + "total_counts_ribo" + ] + }, + "var": { + "index": "_index", + "columns": [ + "dispersions", + "dispersions_norm", + "feature_types", + "gene_ids", + "genome", + "hb", + "highly_variable", + "mean_counts", + "means", + "mt", + "n_cells", + "n_cells_by_counts", + "pct_dropout_by_counts", + "ribo", + "total_counts" + ] + }, + "layers": [ + "raw" + ], + "obsm": [ + "X_harmony", + "X_pca", + "X_umap", + "X_umap_harmony", + "spatial" + ], + "varm": [ + + ], + "obsp": [ + "connectivities", + "distances" + ], + "varp": [ + + ], + "uns": [ + "X_umap_harmony", + "clusters_harmony", + "leiden", + "merge", + "neighbors", + "spatial" + ] + } + } + ] ], + "timestamp": "2026-04-05T16:25:43.26826822", "meta": { - "nf-test": "0.9.2", - "nextflow": "25.04.7" - }, - "timestamp": "2026-02-06T13:05:57.597976225" + "nf-test": "0.9.5", + "nextflow": "25.10.4" + } } } \ No newline at end of file diff --git a/tests/test_downstream.nf.test b/tests/test_downstream.nf.test index 5def7d42..ebf935ae 100644 --- a/tests/test_downstream.nf.test +++ b/tests/test_downstream.nf.test @@ -14,39 +14,55 @@ nextflow_pipeline { } then { + + // Names of all output files and directories (unstable contents) + def stable_name = getAllFilesFromDir( + params.outdir, + relative: true, + includeDir: true, + ignore: ['pipeline_info/*.{html,json,txt}', '**/*.zarr/**'] + ) + + // Names of all SpatialData (.zarr) files and directories (unstable contents) + def stable_name_zarr = getAllFilesFromDir( + params.outdir, + relative: true, + includeDir: true, + include: ['**/*.zarr/**'] + ) + + // Paths of all output files (stable contents) + def stable_path = getAllFilesFromDir( + params.outdir, + ignoreFile: 'tests/.nftignore' + ) + + // JSON-formatted AnnData information (unstable contents) + def adata_files = getAllFilesFromDir( + params.outdir, + include: ['**/*.h5ad'] + ).sort { it.name } + .collect { file -> + [ + file: file.name, + contents: anndata(file.toPath()).yaml + ] + } + assertAll( - // Workflow - { assert workflow.success }, - { assert snapshot(removeNextflowVersion("$outputDir/pipeline_info/nf_core_spatialvi_software_mqc_versions.yml")).match() }, - - // Data - { assert file("$outputDir/CytAssist_11mm_FFPE_Human_Glioblastoma_2/data/adata_processed.h5ad").exists() }, - { assert path("$outputDir/CytAssist_11mm_FFPE_Human_Glioblastoma_2/data/sdata_processed.zarr").exists() }, - { assert file("$outputDir/CytAssist_11mm_FFPE_Human_Glioblastoma_2.2/data/adata_processed.h5ad").exists() }, - { assert path("$outputDir/CytAssist_11mm_FFPE_Human_Glioblastoma_2.2/data/sdata_processed.zarr").exists() }, - - // Reports - { assert file("$outputDir/CytAssist_11mm_FFPE_Human_Glioblastoma_2/reports/quality_controls.html").text.contains("final results of all the filtering") }, - { assert file("$outputDir/CytAssist_11mm_FFPE_Human_Glioblastoma_2/reports/clustering.html").text.contains("spatial distribution of clusters") }, - { assert file("$outputDir/CytAssist_11mm_FFPE_Human_Glioblastoma_2/reports/spatially_variable_genes.html").text.contains("Spatial transcriptomics data can give insight") }, - { assert file("$outputDir/CytAssist_11mm_FFPE_Human_Glioblastoma_2.2/reports/quality_controls.html").text.contains("final results of all the filtering") }, - { assert file("$outputDir/CytAssist_11mm_FFPE_Human_Glioblastoma_2.2/reports/clustering.html").text.contains("spatial distribution of clusters") }, - { assert file("$outputDir/CytAssist_11mm_FFPE_Human_Glioblastoma_2.2/reports/spatially_variable_genes.html").text.contains("Spatial transcriptomics data can give insight") }, - - // Spatially variable genes - { assert file("$outputDir/CytAssist_11mm_FFPE_Human_Glioblastoma_2/data/spatially_variable_genes.csv").exists() }, - { assert file("$outputDir/CytAssist_11mm_FFPE_Human_Glioblastoma_2.2/data/spatially_variable_genes.csv").exists() }, - - // Aggregation - { assert path("$outputDir/aggregation/data/merged_sdata.zarr").exists() }, - { assert path("$outputDir/aggregation/data/integrated_sdata.zarr").exists() }, - { assert path("$outputDir/aggregation/data/integrated_adata.h5ad").exists() }, - { assert file("$outputDir/aggregation/reports/integration.html").text.contains("we save the integrated data to a") }, - { assert file("$outputDir/aggregation/reports/integration.html").text.contains("we save the integrated data to a") }, - - // MultiQC - { assert file("$outputDir/multiqc/multiqc_report.html").exists() } + { assert workflow.success}, + { assert snapshot( + // Number of successful tasks + workflow.trace.succeeded().size(), + // Pipeline versions.yml file for multiqc from which Nextflow version is removed because we tests pipelines on multiple Nextflow versions + removeNextflowVersion("$outputDir/pipeline_info/nf_core_spatialvi_software_mqc_versions.yml"), + stable_name, + stable_name_zarr, + stable_path, + adata_files + ).match() } + ) } } diff --git a/tests/test_downstream.nf.test.snap b/tests/test_downstream.nf.test.snap index a2767a9a..520f207e 100644 --- a/tests/test_downstream.nf.test.snap +++ b/tests/test_downstream.nf.test.snap @@ -1,31 +1,124 @@ { "Downstream FFPE v2 CytAssist": { "content": [ + 48, { - "CLUSTERING": { + "ADATA_MERGE": { + "anndata": "0.12.4", + "python": "3.12.12" + }, + "REPORT": { "papermill": "2.6.0", "quarto": "1.8.25" }, - "INTEGRATE_SDATA": { + "REPORT_INTEGRATED": { "papermill": "2.6.0", "quarto": "1.8.25" }, - "MERGE_SDATA": { - "merge_sdata": "0.2.0" + "SCANPY_CALCULATE_QC_METRICS": { + "anndata": "0.12.4", + "python": "3.12.12", + "scanpy": "1.11.5" }, - "QUALITY_CONTROLS": { - "papermill": "2.6.0", - "quarto": "1.8.25" + "SCANPY_FILTER": { + "anndata": "0.12.4", + "python": "3.12.12", + "scanpy": "1.11.5" + }, + "SCANPY_HARMONY": { + "anndata": "0.12.4", + "harmonypy": "0.0.10", + "python": "3.12.12", + "scanpy": "1.11.5" + }, + "SCANPY_HIGHLY_VARIABLE_GENES": { + "anndata": "0.12.4", + "python": "3.12.12", + "scanpy": "1.11.5" + }, + "SCANPY_LEIDEN": { + "anndata": "0.12.4", + "leidenalg": "0.10.2", + "python": "3.12.12", + "scanpy": "1.11.5" + }, + "SCANPY_LOG1P": { + "anndata": "0.12.4", + "python": "3.12.12", + "scanpy": "1.11.5" + }, + "SCANPY_NEIGHBORS": { + "anndata": "0.12.4", + "python": "3.12.12", + "scanpy": "1.11.5" + }, + "SCANPY_NORMALIZE_TOTAL": { + "anndata": "0.12.4", + "python": "3.12.12", + "scanpy": "1.11.5" + }, + "SCANPY_PCA": { + "anndata": "0.12.4", + "python": "3.12.12", + "scanpy": "1.11.5" + }, + "SCANPY_RANK_GENES_GROUPS": { + "anndata": "0.12.4", + "python": "3.12.12", + "scanpy": "1.11.5" + }, + "SCANPY_UMAP": { + "anndata": "0.12.4", + "python": "3.12.12", + "scanpy": "1.11.5" + }, + "SDATA_MERGE": { + "python": "3.12.12", + "spatialdata": "0.5.0" }, - "READ_DATA": { - "read_data": "0.2.0" + "SDATA_READ_VISIUM": { + "python": "3.12.12", + "spatialdata": "0.5.0", + "spatialdata-io": "0.2.0" + }, + "SDATA_TO_LEGACY_ANNDATA": { + "anndata": "0.12.4", + "python": "3.12.12", + "spatialdata": "0.5.0", + "spatialdata-io": "0.2.0" + }, + "SDATA_UPDATE_TABLE": { + "anndata": "0.12.4", + "python": "3.12.12", + "spatialdata": "0.5.0" + }, + "SDATA_UPDATE_TABLE_INTEGRATION": { + "anndata": "0.12.4", + "python": "3.12.12", + "spatialdata": "0.5.0" }, "SPACERANGER_UNTAR_REFERENCE": { "untar": 1.34 }, - "SPATIALLY_VARIABLE_GENES": { - "papermill": "2.6.0", - "quarto": "1.8.25" + "SQUIDPY_INTERACTION_MATRIX": { + "anndata": "0.12.4", + "python": "3.12.12", + "squidpy": "1.6.5" + }, + "SQUIDPY_NHOOD_ENRICHMENT": { + "anndata": "0.12.4", + "python": "3.12.12", + "squidpy": "1.6.5" + }, + "SQUIDPY_SPATIAL_AUTOCORR": { + "anndata": "0.12.4", + "python": "3.12.12", + "squidpy": "1.6.5" + }, + "SQUIDPY_SPATIAL_NEIGHBORS": { + "anndata": "0.12.4", + "python": "3.12.12", + "squidpy": "1.6.5" }, "UNTAR_DOWNSTREAM_INPUT": { "untar": 1.34 @@ -33,12 +126,3853 @@ "Workflow": { "nf-core/spatialvi": "v1.0dev" } - } + }, + [ + "CytAssist_11mm_FFPE_Human_Glioblastoma_2", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2.2", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2.2/data", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2.2/data/CytAssist_11mm_FFPE_Human_Glioblastoma_2.2-raw.h5ad", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2.2/data/CytAssist_11mm_FFPE_Human_Glioblastoma_2.2.h5ad", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2.2/data/CytAssist_11mm_FFPE_Human_Glioblastoma_2.2_svg.csv", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2.2/plots", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2.2/plots/cluster_sizes.png", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2.2/plots/clusters-spatial.png", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2.2/plots/deg-dotplot.png", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2.2/plots/deg-heatmap.png", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2.2/plots/highly-variable-genes.png", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2.2/plots/interaction-matrix.png", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2.2/plots/neighborhood-enrichment.png", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2.2/plots/pca.png", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2.2/plots/qc-distribution-n_genes_by_counts.png", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2.2/plots/qc-distribution-pct_counts_hb.png", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2.2/plots/qc-distribution-pct_counts_mt.png", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2.2/plots/qc-distribution-pct_counts_ribo.png", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2.2/plots/qc-distribution-total_counts.png", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2.2/plots/qc-spatial-n_genes_by_counts.png", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2.2/plots/qc-spatial-pct_counts_hb.png", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2.2/plots/qc-spatial-pct_counts_mt.png", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2.2/plots/qc-spatial-pct_counts_ribo.png", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2.2/plots/qc-spatial-total_counts.png", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2.2/plots/spatial-ENSG00000066294.png", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2.2/plots/spatial-ENSG00000117707.png", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2.2/plots/spatial-ENSG00000118785.png", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2.2/plots/spatial-ENSG00000124795.png", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2.2/plots/spatial-ENSG00000135838.png", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2.2/plots/spatial-ENSG00000162734.png", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2.2/plots/spatial-ENSG00000198899.png", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2.2/plots/spatial-ENSG00000198938.png", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2.2/plots/spatial-ENSG00000204388.png", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2.2/plots/umap-clusters.png", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2.2/plots/umap-n_genes_by_counts.png", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2.2/plots/umap-pct_counts_hb.png", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2.2/plots/umap-pct_counts_mt.png", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2.2/plots/umap-pct_counts_ribo.png", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2.2/plots/umap-total_counts.png", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2.2/reports", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2.2/reports/_extensions", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2.2/reports/_extensions/nf-core", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2.2/reports/_extensions/nf-core/_extension.yml", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2.2/reports/_extensions/nf-core/nf-core-spatialvi_logo_light.png", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2.2/reports/_extensions/nf-core/nf-core.scss", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2.2/reports/_extensions/nf-core/nf-core.theme", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2.2/reports/_extensions/nf-core/toc.html", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2.2/reports/report-CytAssist_11mm_FFPE_Human_Glioblastoma_2.2.html", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2.2/reports/report.qmd", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2.2/reports/report.yml", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/data", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/data/CytAssist_11mm_FFPE_Human_Glioblastoma_2-raw.h5ad", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/data/CytAssist_11mm_FFPE_Human_Glioblastoma_2.h5ad", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/data/CytAssist_11mm_FFPE_Human_Glioblastoma_2_svg.csv", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/plots", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/plots/cluster_sizes.png", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/plots/clusters-spatial.png", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/plots/deg-dotplot.png", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/plots/deg-heatmap.png", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/plots/highly-variable-genes.png", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/plots/interaction-matrix.png", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/plots/neighborhood-enrichment.png", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/plots/pca.png", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/plots/qc-distribution-n_genes_by_counts.png", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/plots/qc-distribution-pct_counts_hb.png", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/plots/qc-distribution-pct_counts_mt.png", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/plots/qc-distribution-pct_counts_ribo.png", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/plots/qc-distribution-total_counts.png", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/plots/qc-spatial-n_genes_by_counts.png", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/plots/qc-spatial-pct_counts_hb.png", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/plots/qc-spatial-pct_counts_mt.png", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/plots/qc-spatial-pct_counts_ribo.png", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/plots/qc-spatial-total_counts.png", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/plots/spatial-ENSG00000066294.png", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/plots/spatial-ENSG00000117707.png", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/plots/spatial-ENSG00000118785.png", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/plots/spatial-ENSG00000124795.png", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/plots/spatial-ENSG00000135838.png", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/plots/spatial-ENSG00000162734.png", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/plots/spatial-ENSG00000198899.png", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/plots/spatial-ENSG00000198938.png", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/plots/spatial-ENSG00000204388.png", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/plots/umap-clusters.png", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/plots/umap-n_genes_by_counts.png", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/plots/umap-pct_counts_hb.png", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/plots/umap-pct_counts_mt.png", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/plots/umap-pct_counts_ribo.png", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/plots/umap-total_counts.png", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/reports", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/reports/_extensions", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/reports/_extensions/nf-core", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/reports/_extensions/nf-core/_extension.yml", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/reports/_extensions/nf-core/nf-core-spatialvi_logo_light.png", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/reports/_extensions/nf-core/nf-core.scss", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/reports/_extensions/nf-core/nf-core.theme", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/reports/_extensions/nf-core/toc.html", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/reports/report-CytAssist_11mm_FFPE_Human_Glioblastoma_2.html", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/reports/report.qmd", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/reports/report.yml", + "integration", + "integration/data", + "integration/data/harmony.h5ad", + "integration/data/harmony.zarr", + "integration/data/merged.zarr", + "integration/plots", + "integration/plots/spatial-CytAssist_11mm_FFPE_Human_Glioblastoma_2.2.png", + "integration/plots/spatial-CytAssist_11mm_FFPE_Human_Glioblastoma_2.png", + "integration/plots/umap-clusters_harmony.png", + "integration/plots/umap-library_id.png", + "integration/plots/umap-n_genes_by_counts.png", + "integration/plots/umap-pct_counts_hb.png", + "integration/plots/umap-pct_counts_mt.png", + "integration/plots/umap-pct_counts_ribo.png", + "integration/plots/umap-total_counts.png", + "integration/reports", + "integration/reports/_extensions", + "integration/reports/_extensions/nf-core", + "integration/reports/_extensions/nf-core/_extension.yml", + "integration/reports/_extensions/nf-core/nf-core-spatialvi_logo_light.png", + "integration/reports/_extensions/nf-core/nf-core.scss", + "integration/reports/_extensions/nf-core/nf-core.theme", + "integration/reports/_extensions/nf-core/toc.html", + "integration/reports/report-integrated.html", + "integration/reports/report-integrated.qmd", + "integration/reports/report-integrated.yml", + "multiqc", + "multiqc/multiqc_data", + "multiqc/multiqc_data/BETA-multiqc.parquet", + "multiqc/multiqc_data/multiqc.log", + "multiqc/multiqc_data/multiqc_citations.txt", + "multiqc/multiqc_data/multiqc_data.json", + "multiqc/multiqc_data/multiqc_software_versions.txt", + "multiqc/multiqc_data/multiqc_sources.txt", + "multiqc/multiqc_report.html", + "pipeline_info", + "pipeline_info/nf_core_spatialvi_software_mqc_versions.yml" + ], + [ + "integration/data/harmony.zarr/.zattrs", + "integration/data/harmony.zarr/.zgroup", + "integration/data/harmony.zarr/images", + "integration/data/harmony.zarr/images/.zgroup", + "integration/data/harmony.zarr/images/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image", + "integration/data/harmony.zarr/images/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/.zattrs", + "integration/data/harmony.zarr/images/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/.zgroup", + "integration/data/harmony.zarr/images/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/0", + "integration/data/harmony.zarr/images/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/0/.zarray", + "integration/data/harmony.zarr/images/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/0/0", + "integration/data/harmony.zarr/images/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/0/0/0", + "integration/data/harmony.zarr/images/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/0/0/0/0", + "integration/data/harmony.zarr/images/CytAssist_11mm_FFPE_Human_Glioblastoma_22_lowres_image", + "integration/data/harmony.zarr/images/CytAssist_11mm_FFPE_Human_Glioblastoma_22_lowres_image/.zattrs", + "integration/data/harmony.zarr/images/CytAssist_11mm_FFPE_Human_Glioblastoma_22_lowres_image/.zgroup", + "integration/data/harmony.zarr/images/CytAssist_11mm_FFPE_Human_Glioblastoma_22_lowres_image/0", + "integration/data/harmony.zarr/images/CytAssist_11mm_FFPE_Human_Glioblastoma_22_lowres_image/0/.zarray", + "integration/data/harmony.zarr/images/CytAssist_11mm_FFPE_Human_Glioblastoma_22_lowres_image/0/0", + "integration/data/harmony.zarr/images/CytAssist_11mm_FFPE_Human_Glioblastoma_22_lowres_image/0/0/0", + "integration/data/harmony.zarr/images/CytAssist_11mm_FFPE_Human_Glioblastoma_22_lowres_image/0/0/0/0", + "integration/data/harmony.zarr/images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image", + "integration/data/harmony.zarr/images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/.zattrs", + "integration/data/harmony.zarr/images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/.zgroup", + "integration/data/harmony.zarr/images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/0", + "integration/data/harmony.zarr/images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/0/.zarray", + "integration/data/harmony.zarr/images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/0/0", + "integration/data/harmony.zarr/images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/0/0/0", + "integration/data/harmony.zarr/images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/0/0/0/0", + "integration/data/harmony.zarr/images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_lowres_image", + "integration/data/harmony.zarr/images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_lowres_image/.zattrs", + "integration/data/harmony.zarr/images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_lowres_image/.zgroup", + "integration/data/harmony.zarr/images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_lowres_image/0", + "integration/data/harmony.zarr/images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_lowres_image/0/.zarray", + "integration/data/harmony.zarr/images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_lowres_image/0/0", + "integration/data/harmony.zarr/images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_lowres_image/0/0/0", + "integration/data/harmony.zarr/images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_lowres_image/0/0/0/0", + "integration/data/harmony.zarr/shapes", + "integration/data/harmony.zarr/shapes/.zgroup", + "integration/data/harmony.zarr/shapes/CytAssist_11mm_FFPE_Human_Glioblastoma_2", + "integration/data/harmony.zarr/shapes/CytAssist_11mm_FFPE_Human_Glioblastoma_2/.zattrs", + "integration/data/harmony.zarr/shapes/CytAssist_11mm_FFPE_Human_Glioblastoma_2/.zgroup", + "integration/data/harmony.zarr/shapes/CytAssist_11mm_FFPE_Human_Glioblastoma_2/shapes.parquet", + "integration/data/harmony.zarr/shapes/CytAssist_11mm_FFPE_Human_Glioblastoma_22", + "integration/data/harmony.zarr/shapes/CytAssist_11mm_FFPE_Human_Glioblastoma_22/.zattrs", + "integration/data/harmony.zarr/shapes/CytAssist_11mm_FFPE_Human_Glioblastoma_22/.zgroup", + "integration/data/harmony.zarr/shapes/CytAssist_11mm_FFPE_Human_Glioblastoma_22/shapes.parquet", + "integration/data/harmony.zarr/tables", + "integration/data/harmony.zarr/tables/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/X", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/X/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/X/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/X/data", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/X/data/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/X/data/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/X/indices", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/X/indices/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/X/indices/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/X/indptr", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/X/indptr/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/X/indptr/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/layers", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/layers/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/layers/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/layers/raw", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/layers/raw/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/layers/raw/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/layers/raw/data", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/layers/raw/data/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/layers/raw/data/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/layers/raw/indices", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/layers/raw/indices/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/layers/raw/indices/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/layers/raw/indptr", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/layers/raw/indptr/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/layers/raw/indptr/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/_index", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/_index/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/_index/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/_index/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/array_col", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/array_col/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/array_col/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/array_col/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/array_row", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/array_row/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/array_row/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/array_row/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/clusters", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/clusters/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/clusters/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/clusters/categories", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/clusters/categories/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/clusters/categories/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/clusters/categories/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/clusters/codes", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/clusters/codes/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/clusters/codes/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/clusters/codes/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/in_tissue", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/in_tissue/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/in_tissue/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/in_tissue/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/n_counts", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/n_counts/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/n_counts/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/n_counts/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/n_genes", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/n_genes/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/n_genes/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/n_genes/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/n_genes_by_counts", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/n_genes_by_counts/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/n_genes_by_counts/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/n_genes_by_counts/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/pct_counts_hb", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/pct_counts_hb/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/pct_counts_hb/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/pct_counts_hb/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/pct_counts_in_top_100_genes", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/pct_counts_in_top_100_genes/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/pct_counts_in_top_100_genes/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/pct_counts_in_top_100_genes/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/pct_counts_in_top_200_genes", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/pct_counts_in_top_200_genes/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/pct_counts_in_top_200_genes/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/pct_counts_in_top_200_genes/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/pct_counts_in_top_500_genes", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/pct_counts_in_top_500_genes/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/pct_counts_in_top_500_genes/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/pct_counts_in_top_500_genes/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/pct_counts_in_top_50_genes", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/pct_counts_in_top_50_genes/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/pct_counts_in_top_50_genes/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/pct_counts_in_top_50_genes/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/pct_counts_mt", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/pct_counts_mt/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/pct_counts_mt/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/pct_counts_mt/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/pct_counts_ribo", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/pct_counts_ribo/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/pct_counts_ribo/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/pct_counts_ribo/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/region", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/region/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/region/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/region/categories", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/region/categories/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/region/categories/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/region/categories/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/region/codes", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/region/codes/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/region/codes/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/region/codes/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/spot_id", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/spot_id/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/spot_id/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/spot_id/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/total_counts", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/total_counts/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/total_counts/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/total_counts/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/total_counts_hb", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/total_counts_hb/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/total_counts_hb/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/total_counts_hb/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/total_counts_mt", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/total_counts_mt/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/total_counts_mt/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/total_counts_mt/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/total_counts_normalized", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/total_counts_normalized/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/total_counts_normalized/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/total_counts_normalized/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/total_counts_ribo", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/total_counts_ribo/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/total_counts_ribo/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/total_counts_ribo/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsm", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsm/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsm/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsm/X_pca", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsm/X_pca/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsm/X_pca/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsm/X_pca/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsm/X_pca/0/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsm/X_umap", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsm/X_umap/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsm/X_umap/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsm/X_umap/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsm/X_umap/0/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsm/spatial", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsm/spatial/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsm/spatial/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsm/spatial/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsm/spatial/0/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsp", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsp/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsp/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsp/connectivities", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsp/connectivities/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsp/connectivities/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsp/connectivities/data", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsp/connectivities/data/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsp/connectivities/data/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsp/connectivities/indices", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsp/connectivities/indices/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsp/connectivities/indices/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsp/connectivities/indptr", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsp/connectivities/indptr/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsp/connectivities/indptr/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsp/distances", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsp/distances/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsp/distances/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsp/distances/data", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsp/distances/data/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsp/distances/data/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsp/distances/indices", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsp/distances/indices/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsp/distances/indices/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsp/distances/indptr", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsp/distances/indptr/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsp/distances/indptr/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsp/spatial_connectivities", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsp/spatial_connectivities/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsp/spatial_connectivities/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsp/spatial_connectivities/data", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsp/spatial_connectivities/data/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsp/spatial_connectivities/data/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsp/spatial_connectivities/indices", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsp/spatial_connectivities/indices/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsp/spatial_connectivities/indices/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsp/spatial_connectivities/indptr", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsp/spatial_connectivities/indptr/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsp/spatial_connectivities/indptr/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsp/spatial_distances", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsp/spatial_distances/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsp/spatial_distances/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsp/spatial_distances/data", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsp/spatial_distances/data/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsp/spatial_distances/data/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsp/spatial_distances/indices", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsp/spatial_distances/indices/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsp/spatial_distances/indices/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsp/spatial_distances/indptr", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsp/spatial_distances/indptr/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsp/spatial_distances/indptr/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/raw", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/raw/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/raw/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/raw/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/X_umap", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/X_umap/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/X_umap/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/X_umap/params", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/X_umap/params/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/X_umap/params/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/X_umap/params/a", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/X_umap/params/a/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/X_umap/params/a/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/X_umap/params/a/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/X_umap/params/b", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/X_umap/params/b/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/X_umap/params/b/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/X_umap/params/b/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/clusters", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/clusters/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/clusters/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/clusters/params", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/clusters/params/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/clusters/params/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/clusters/params/n_iterations", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/clusters/params/n_iterations/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/clusters/params/n_iterations/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/clusters/params/n_iterations/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/clusters/params/random_state", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/clusters/params/random_state/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/clusters/params/random_state/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/clusters/params/random_state/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/clusters/params/resolution", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/clusters/params/resolution/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/clusters/params/resolution/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/clusters/params/resolution/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/clusters_interactions", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/clusters_interactions/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/clusters_interactions/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/clusters_interactions/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/clusters_interactions/0/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/clusters_nhood_enrichment", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/clusters_nhood_enrichment/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/clusters_nhood_enrichment/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/clusters_nhood_enrichment/count", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/clusters_nhood_enrichment/count/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/clusters_nhood_enrichment/count/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/clusters_nhood_enrichment/count/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/clusters_nhood_enrichment/count/0/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/clusters_nhood_enrichment/zscore", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/clusters_nhood_enrichment/zscore/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/clusters_nhood_enrichment/zscore/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/clusters_nhood_enrichment/zscore/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/clusters_nhood_enrichment/zscore/0/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/coordinate_system", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/coordinate_system/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/coordinate_system/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/coordinate_system/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/genes_filtered_min_obs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/genes_filtered_min_obs/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/genes_filtered_min_obs/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/genes_filtered_min_obs/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/hb_threshold", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/hb_threshold/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/hb_threshold/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/hb_threshold/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/min_counts_threshold", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/min_counts_threshold/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/min_counts_threshold/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/min_counts_threshold/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/min_genes_threshold", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/min_genes_threshold/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/min_genes_threshold/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/min_genes_threshold/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/min_obs_threshold", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/min_obs_threshold/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/min_obs_threshold/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/min_obs_threshold/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/mito_threshold", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/mito_threshold/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/mito_threshold/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/mito_threshold/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/obs_filtered_hb", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/obs_filtered_hb/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/obs_filtered_hb/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/obs_filtered_hb/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/obs_filtered_min_counts", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/obs_filtered_min_counts/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/obs_filtered_min_counts/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/obs_filtered_min_counts/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/obs_filtered_min_genes", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/obs_filtered_min_genes/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/obs_filtered_min_genes/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/obs_filtered_min_genes/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/obs_filtered_mito", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/obs_filtered_mito/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/obs_filtered_mito/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/obs_filtered_mito/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/obs_filtered_outside_tissue", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/obs_filtered_outside_tissue/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/obs_filtered_outside_tissue/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/obs_filtered_outside_tissue/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/obs_filtered_ribo", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/obs_filtered_ribo/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/obs_filtered_ribo/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/obs_filtered_ribo/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/ribo_threshold", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/ribo_threshold/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/ribo_threshold/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/ribo_threshold/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/sample_id", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/sample_id/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/sample_id/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/sample_id/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/total_genes_after", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/total_genes_after/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/total_genes_after/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/total_genes_after/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/total_genes_before", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/total_genes_before/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/total_genes_before/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/total_genes_before/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/total_genes_filtered", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/total_genes_filtered/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/total_genes_filtered/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/total_genes_filtered/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/total_obs_after", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/total_obs_after/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/total_obs_after/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/total_obs_after/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/total_obs_before", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/total_obs_before/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/total_obs_before/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/total_obs_before/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/total_obs_filtered", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/total_obs_filtered/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/total_obs_filtered/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/total_obs_filtered/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/hvg", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/hvg/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/hvg/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/hvg/flavor", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/hvg/flavor/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/hvg/flavor/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/hvg/flavor/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/hvg/n_hvgs_found", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/hvg/n_hvgs_found/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/hvg/n_hvgs_found/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/hvg/n_hvgs_found/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/hvg/n_hvgs_requested", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/hvg/n_hvgs_requested/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/hvg/n_hvgs_requested/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/hvg/n_hvgs_requested/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/leiden", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/leiden/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/leiden/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/leiden/n_clusters", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/leiden/n_clusters/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/leiden/n_clusters/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/leiden/n_clusters/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/leiden/resolution", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/leiden/resolution/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/leiden/resolution/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/leiden/resolution/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/log1p", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/log1p/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/log1p/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/log1p/base", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/log1p/base/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/log1p/base/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/log1p/base/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/moranI", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/moranI/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/moranI/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/moranI/I", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/moranI/I/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/moranI/I/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/moranI/I/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/moranI/_index", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/moranI/_index/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/moranI/_index/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/moranI/_index/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/moranI/pval_norm", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/moranI/pval_norm/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/moranI/pval_norm/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/moranI/pval_norm/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/moranI/pval_norm_fdr_bh", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/moranI/pval_norm_fdr_bh/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/moranI/pval_norm_fdr_bh/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/moranI/pval_norm_fdr_bh/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/moranI/var_norm", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/moranI/var_norm/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/moranI/var_norm/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/moranI/var_norm/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/neighbors", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/neighbors/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/neighbors/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/neighbors/connectivities_key", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/neighbors/connectivities_key/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/neighbors/connectivities_key/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/neighbors/connectivities_key/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/neighbors/distances_key", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/neighbors/distances_key/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/neighbors/distances_key/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/neighbors/distances_key/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/neighbors/params", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/neighbors/params/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/neighbors/params/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/neighbors/params/method", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/neighbors/params/method/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/neighbors/params/method/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/neighbors/params/method/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/neighbors/params/metric", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/neighbors/params/metric/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/neighbors/params/metric/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/neighbors/params/metric/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/neighbors/params/n_neighbors", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/neighbors/params/n_neighbors/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/neighbors/params/n_neighbors/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/neighbors/params/n_neighbors/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/neighbors/params/n_pcs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/neighbors/params/n_pcs/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/neighbors/params/n_pcs/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/neighbors/params/n_pcs/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/neighbors/params/random_state", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/neighbors/params/random_state/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/neighbors/params/random_state/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/neighbors/params/random_state/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/normalization", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/normalization/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/normalization/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/normalization/log1p", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/normalization/log1p/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/normalization/log1p/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/normalization/log1p/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/normalization/method", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/normalization/method/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/normalization/method/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/normalization/method/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/normalization/target_sum", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/normalization/target_sum/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/normalization/target_sum/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/normalization/target_sum/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/pca", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/pca/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/pca/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/pca/params", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/pca/params/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/pca/params/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/pca/params/mask_var", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/pca/params/mask_var/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/pca/params/mask_var/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/pca/params/mask_var/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/pca/params/use_highly_variable", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/pca/params/use_highly_variable/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/pca/params/use_highly_variable/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/pca/params/use_highly_variable/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/pca/params/zero_center", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/pca/params/zero_center/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/pca/params/zero_center/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/pca/params/zero_center/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/pca/variance", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/pca/variance/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/pca/variance/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/pca/variance/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/pca/variance_ratio", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/pca/variance_ratio/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/pca/variance_ratio/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/pca/variance_ratio/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/logfoldchanges", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/logfoldchanges/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/logfoldchanges/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/logfoldchanges/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/logfoldchanges/1", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/names", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/names/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/names/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/names/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/names/1", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/names/10", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/names/11", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/names/12", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/names/13", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/names/14", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/names/15", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/names/2", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/names/3", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/names/4", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/names/5", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/names/6", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/names/7", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/names/8", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/names/9", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/params", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/params/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/params/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/params/corr_method", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/params/corr_method/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/params/corr_method/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/params/corr_method/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/params/groupby", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/params/groupby/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/params/groupby/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/params/groupby/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/params/layer", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/params/layer/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/params/layer/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/params/layer/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/params/method", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/params/method/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/params/method/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/params/method/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/params/reference", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/params/reference/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/params/reference/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/params/reference/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/params/use_raw", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/params/use_raw/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/params/use_raw/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/params/use_raw/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/pvals", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/pvals/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/pvals/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/pvals/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/pvals/1", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/pvals_adj", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/pvals_adj/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/pvals_adj/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/pvals_adj/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/pvals_adj/1", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/scores", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/scores/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/scores/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/scores/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/scores/1", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/sample_id", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/sample_id/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/sample_id/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/sample_id/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22/metadata", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22/metadata/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22/metadata/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22/metadata/chemistry_description", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22/metadata/chemistry_description/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22/metadata/chemistry_description/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22/metadata/chemistry_description/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22/metadata/software_version", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22/metadata/software_version/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22/metadata/software_version/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22/metadata/software_version/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/hires", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/hires/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/hires/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/hires/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/hires/0/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/hires/0/0/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/hires/0/0/1", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/hires/0/1", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/hires/0/1/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/hires/0/1/1", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/hires/0/2", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/hires/0/2/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/hires/0/2/1", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/hires/0/3", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/hires/0/3/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/hires/0/3/1", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/hires/1", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/hires/1/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/hires/1/0/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/hires/1/0/1", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/hires/1/1", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/hires/1/1/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/hires/1/1/1", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/hires/1/2", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/hires/1/2/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/hires/1/2/1", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/hires/1/3", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/hires/1/3/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/hires/1/3/1", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/hires/2", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/hires/2/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/hires/2/0/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/hires/2/0/1", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/hires/2/1", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/hires/2/1/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/hires/2/1/1", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/hires/2/2", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/hires/2/2/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/hires/2/2/1", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/hires/2/3", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/hires/2/3/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/hires/2/3/1", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/hires/3", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/hires/3/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/hires/3/0/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/hires/3/0/1", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/hires/3/1", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/hires/3/1/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/hires/3/1/1", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/hires/3/2", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/hires/3/2/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/hires/3/2/1", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/hires/3/3", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/hires/3/3/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/hires/3/3/1", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/lowres", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/lowres/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/lowres/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/lowres/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/lowres/0/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/lowres/0/0/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/lowres/0/1", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/lowres/0/1/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/lowres/1", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/lowres/1/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/lowres/1/0/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/lowres/1/1", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/lowres/1/1/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/scalefactors", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/scalefactors/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/scalefactors/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/scalefactors/spot_diameter_fullres", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/scalefactors/spot_diameter_fullres/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/scalefactors/spot_diameter_fullres/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/scalefactors/spot_diameter_fullres/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/scalefactors/tissue_hires_scalef", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/scalefactors/tissue_hires_scalef/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/scalefactors/tissue_hires_scalef/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/scalefactors/tissue_hires_scalef/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/scalefactors/tissue_lowres_scalef", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/scalefactors/tissue_lowres_scalef/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/scalefactors/tissue_lowres_scalef/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/scalefactors/tissue_lowres_scalef/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial_neighbors", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial_neighbors/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial_neighbors/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial_neighbors/connectivities_key", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial_neighbors/connectivities_key/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial_neighbors/connectivities_key/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial_neighbors/connectivities_key/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial_neighbors/distances_key", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial_neighbors/distances_key/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial_neighbors/distances_key/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial_neighbors/distances_key/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial_neighbors/params", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial_neighbors/params/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial_neighbors/params/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial_neighbors/params/coord_type", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial_neighbors/params/coord_type/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial_neighbors/params/coord_type/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial_neighbors/params/coord_type/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial_neighbors/params/n_neighbors", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial_neighbors/params/n_neighbors/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial_neighbors/params/n_neighbors/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial_neighbors/params/n_neighbors/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial_neighbors/params/radius", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial_neighbors/params/radius/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial_neighbors/params/radius/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial_neighbors/params/radius/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial_neighbors/params/transform", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial_neighbors/params/transform/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial_neighbors/params/transform/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial_neighbors/params/transform/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatialdata_attrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatialdata_attrs/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatialdata_attrs/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatialdata_attrs/instance_key", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatialdata_attrs/instance_key/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatialdata_attrs/instance_key/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatialdata_attrs/instance_key/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatialdata_attrs/region", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatialdata_attrs/region/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatialdata_attrs/region/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatialdata_attrs/region/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatialdata_attrs/region_key", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatialdata_attrs/region_key/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatialdata_attrs/region_key/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatialdata_attrs/region_key/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/table_name", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/table_name/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/table_name/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/table_name/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/_index", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/_index/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/_index/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/_index/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/dispersions", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/dispersions/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/dispersions/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/dispersions/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/dispersions_norm", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/dispersions_norm/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/dispersions_norm/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/dispersions_norm/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/feature_types", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/feature_types/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/feature_types/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/feature_types/categories", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/feature_types/categories/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/feature_types/categories/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/feature_types/categories/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/feature_types/codes", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/feature_types/codes/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/feature_types/codes/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/feature_types/codes/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/gene_ids", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/gene_ids/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/gene_ids/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/gene_ids/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/genome", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/genome/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/genome/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/genome/categories", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/genome/categories/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/genome/categories/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/genome/categories/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/genome/codes", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/genome/codes/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/genome/codes/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/genome/codes/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/hb", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/hb/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/hb/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/hb/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/highly_variable", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/highly_variable/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/highly_variable/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/highly_variable/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/mean_counts", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/mean_counts/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/mean_counts/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/mean_counts/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/means", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/means/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/means/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/means/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/mt", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/mt/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/mt/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/mt/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/n_cells", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/n_cells/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/n_cells/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/n_cells/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/n_cells_by_counts", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/n_cells_by_counts/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/n_cells_by_counts/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/n_cells_by_counts/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/pct_dropout_by_counts", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/pct_dropout_by_counts/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/pct_dropout_by_counts/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/pct_dropout_by_counts/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/ribo", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/ribo/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/ribo/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/ribo/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/total_counts", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/total_counts/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/total_counts/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/total_counts/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/varm", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/varm/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/varm/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/varm/PCs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/varm/PCs/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/varm/PCs/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/varm/PCs/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/varm/PCs/0/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/varm/PCs/0/1", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/varm/PCs/1", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/varm/PCs/1/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/varm/PCs/1/1", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/varp", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/varp/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/varp/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/X", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/X/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/X/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/X/data", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/X/data/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/X/data/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/X/indices", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/X/indices/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/X/indices/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/X/indptr", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/X/indptr/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/X/indptr/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/layers", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/layers/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/layers/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/layers/raw", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/layers/raw/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/layers/raw/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/layers/raw/data", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/layers/raw/data/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/layers/raw/data/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/layers/raw/indices", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/layers/raw/indices/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/layers/raw/indices/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/layers/raw/indptr", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/layers/raw/indptr/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/layers/raw/indptr/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/_index", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/_index/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/_index/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/_index/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/array_col", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/array_col/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/array_col/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/array_col/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/array_row", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/array_row/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/array_row/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/array_row/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/clusters", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/clusters/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/clusters/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/clusters/categories", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/clusters/categories/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/clusters/categories/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/clusters/categories/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/clusters/codes", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/clusters/codes/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/clusters/codes/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/clusters/codes/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/clusters_harmony", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/clusters_harmony/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/clusters_harmony/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/clusters_harmony/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/in_tissue", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/in_tissue/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/in_tissue/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/in_tissue/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/n_counts", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/n_counts/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/n_counts/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/n_counts/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/n_genes", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/n_genes/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/n_genes/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/n_genes/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/n_genes_by_counts", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/n_genes_by_counts/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/n_genes_by_counts/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/n_genes_by_counts/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/pct_counts_hb", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/pct_counts_hb/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/pct_counts_hb/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/pct_counts_hb/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/pct_counts_in_top_100_genes", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/pct_counts_in_top_100_genes/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/pct_counts_in_top_100_genes/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/pct_counts_in_top_100_genes/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/pct_counts_in_top_200_genes", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/pct_counts_in_top_200_genes/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/pct_counts_in_top_200_genes/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/pct_counts_in_top_200_genes/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/pct_counts_in_top_500_genes", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/pct_counts_in_top_500_genes/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/pct_counts_in_top_500_genes/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/pct_counts_in_top_500_genes/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/pct_counts_in_top_50_genes", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/pct_counts_in_top_50_genes/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/pct_counts_in_top_50_genes/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/pct_counts_in_top_50_genes/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/pct_counts_mt", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/pct_counts_mt/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/pct_counts_mt/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/pct_counts_mt/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/pct_counts_ribo", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/pct_counts_ribo/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/pct_counts_ribo/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/pct_counts_ribo/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/region", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/region/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/region/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/region/categories", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/region/categories/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/region/categories/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/region/categories/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/region/codes", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/region/codes/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/region/codes/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/region/codes/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/spot_id", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/spot_id/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/spot_id/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/spot_id/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/total_counts", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/total_counts/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/total_counts/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/total_counts/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/total_counts_hb", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/total_counts_hb/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/total_counts_hb/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/total_counts_hb/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/total_counts_mt", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/total_counts_mt/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/total_counts_mt/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/total_counts_mt/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/total_counts_normalized", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/total_counts_normalized/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/total_counts_normalized/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/total_counts_normalized/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/total_counts_ribo", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/total_counts_ribo/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/total_counts_ribo/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/total_counts_ribo/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/X_harmony", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/X_harmony/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/X_harmony/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/X_harmony/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/X_harmony/0/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/X_pca", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/X_pca/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/X_pca/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/X_pca/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/X_pca/0/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/X_umap", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/X_umap/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/X_umap/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/X_umap/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/X_umap/0/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/X_umap_harmony", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/X_umap_harmony/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/X_umap_harmony/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/X_umap_harmony/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/X_umap_harmony/0/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/spatial", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/spatial/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/spatial/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/spatial/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/spatial/0/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/connectivities", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/connectivities/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/connectivities/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/connectivities/data", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/connectivities/data/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/connectivities/data/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/connectivities/indices", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/connectivities/indices/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/connectivities/indices/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/connectivities/indptr", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/connectivities/indptr/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/connectivities/indptr/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/distances", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/distances/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/distances/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/distances/data", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/distances/data/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/distances/data/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/distances/indices", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/distances/indices/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/distances/indices/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/distances/indptr", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/distances/indptr/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/distances/indptr/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/spatial_connectivities", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/spatial_connectivities/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/spatial_connectivities/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/spatial_connectivities/data", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/spatial_connectivities/data/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/spatial_connectivities/data/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/spatial_connectivities/indices", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/spatial_connectivities/indices/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/spatial_connectivities/indices/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/spatial_connectivities/indptr", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/spatial_connectivities/indptr/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/spatial_connectivities/indptr/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/spatial_distances", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/spatial_distances/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/spatial_distances/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/spatial_distances/data", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/spatial_distances/data/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/spatial_distances/data/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/spatial_distances/indices", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/spatial_distances/indices/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/spatial_distances/indices/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/spatial_distances/indptr", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/spatial_distances/indptr/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/spatial_distances/indptr/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/raw", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/raw/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/raw/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/raw/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/X_umap", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/X_umap/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/X_umap/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/X_umap/params", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/X_umap/params/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/X_umap/params/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/X_umap/params/a", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/X_umap/params/a/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/X_umap/params/a/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/X_umap/params/a/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/X_umap/params/b", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/X_umap/params/b/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/X_umap/params/b/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/X_umap/params/b/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters/params", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters/params/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters/params/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters/params/n_iterations", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters/params/n_iterations/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters/params/n_iterations/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters/params/n_iterations/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters/params/random_state", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters/params/random_state/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters/params/random_state/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters/params/random_state/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters/params/resolution", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters/params/resolution/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters/params/resolution/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters/params/resolution/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters_interactions", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters_interactions/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters_interactions/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters_interactions/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters_interactions/0/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters_nhood_enrichment", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters_nhood_enrichment/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters_nhood_enrichment/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters_nhood_enrichment/count", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters_nhood_enrichment/count/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters_nhood_enrichment/count/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters_nhood_enrichment/count/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters_nhood_enrichment/count/0/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters_nhood_enrichment/zscore", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters_nhood_enrichment/zscore/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters_nhood_enrichment/zscore/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters_nhood_enrichment/zscore/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters_nhood_enrichment/zscore/0/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/coordinate_system", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/coordinate_system/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/coordinate_system/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/coordinate_system/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/genes_filtered_min_obs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/genes_filtered_min_obs/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/genes_filtered_min_obs/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/genes_filtered_min_obs/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/hb_threshold", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/hb_threshold/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/hb_threshold/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/hb_threshold/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/min_counts_threshold", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/min_counts_threshold/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/min_counts_threshold/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/min_counts_threshold/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/min_genes_threshold", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/min_genes_threshold/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/min_genes_threshold/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/min_genes_threshold/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/min_obs_threshold", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/min_obs_threshold/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/min_obs_threshold/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/min_obs_threshold/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/mito_threshold", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/mito_threshold/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/mito_threshold/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/mito_threshold/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/obs_filtered_hb", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/obs_filtered_hb/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/obs_filtered_hb/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/obs_filtered_hb/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/obs_filtered_min_counts", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/obs_filtered_min_counts/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/obs_filtered_min_counts/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/obs_filtered_min_counts/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/obs_filtered_min_genes", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/obs_filtered_min_genes/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/obs_filtered_min_genes/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/obs_filtered_min_genes/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/obs_filtered_mito", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/obs_filtered_mito/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/obs_filtered_mito/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/obs_filtered_mito/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/obs_filtered_outside_tissue", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/obs_filtered_outside_tissue/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/obs_filtered_outside_tissue/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/obs_filtered_outside_tissue/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/obs_filtered_ribo", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/obs_filtered_ribo/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/obs_filtered_ribo/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/obs_filtered_ribo/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/ribo_threshold", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/ribo_threshold/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/ribo_threshold/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/ribo_threshold/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/sample_id", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/sample_id/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/sample_id/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/sample_id/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/total_genes_after", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/total_genes_after/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/total_genes_after/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/total_genes_after/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/total_genes_before", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/total_genes_before/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/total_genes_before/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/total_genes_before/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/total_genes_filtered", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/total_genes_filtered/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/total_genes_filtered/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/total_genes_filtered/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/total_obs_after", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/total_obs_after/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/total_obs_after/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/total_obs_after/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/total_obs_before", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/total_obs_before/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/total_obs_before/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/total_obs_before/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/total_obs_filtered", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/total_obs_filtered/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/total_obs_filtered/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/total_obs_filtered/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/hvg", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/hvg/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/hvg/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/hvg/flavor", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/hvg/flavor/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/hvg/flavor/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/hvg/flavor/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/hvg/n_hvgs_found", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/hvg/n_hvgs_found/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/hvg/n_hvgs_found/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/hvg/n_hvgs_found/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/hvg/n_hvgs_requested", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/hvg/n_hvgs_requested/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/hvg/n_hvgs_requested/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/hvg/n_hvgs_requested/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/leiden", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/leiden/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/leiden/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/leiden/n_clusters", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/leiden/n_clusters/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/leiden/n_clusters/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/leiden/n_clusters/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/leiden/resolution", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/leiden/resolution/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/leiden/resolution/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/leiden/resolution/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/log1p", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/log1p/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/log1p/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/log1p/base", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/log1p/base/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/log1p/base/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/log1p/base/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/moranI", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/moranI/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/moranI/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/moranI/I", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/moranI/I/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/moranI/I/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/moranI/I/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/moranI/_index", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/moranI/_index/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/moranI/_index/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/moranI/_index/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/moranI/pval_norm", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/moranI/pval_norm/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/moranI/pval_norm/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/moranI/pval_norm/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/moranI/pval_norm_fdr_bh", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/moranI/pval_norm_fdr_bh/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/moranI/pval_norm_fdr_bh/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/moranI/pval_norm_fdr_bh/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/moranI/var_norm", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/moranI/var_norm/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/moranI/var_norm/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/moranI/var_norm/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/connectivities_key", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/connectivities_key/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/connectivities_key/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/connectivities_key/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/distances_key", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/distances_key/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/distances_key/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/distances_key/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/params", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/params/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/params/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/params/method", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/params/method/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/params/method/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/params/method/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/params/metric", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/params/metric/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/params/metric/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/params/metric/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/params/n_neighbors", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/params/n_neighbors/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/params/n_neighbors/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/params/n_neighbors/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/params/n_pcs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/params/n_pcs/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/params/n_pcs/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/params/n_pcs/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/params/random_state", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/params/random_state/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/params/random_state/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/params/random_state/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/normalization", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/normalization/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/normalization/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/normalization/log1p", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/normalization/log1p/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/normalization/log1p/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/normalization/log1p/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/normalization/method", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/normalization/method/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/normalization/method/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/normalization/method/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/normalization/target_sum", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/normalization/target_sum/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/normalization/target_sum/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/normalization/target_sum/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca/params", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca/params/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca/params/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca/params/mask_var", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca/params/mask_var/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca/params/mask_var/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca/params/mask_var/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca/params/use_highly_variable", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca/params/use_highly_variable/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca/params/use_highly_variable/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca/params/use_highly_variable/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca/params/zero_center", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca/params/zero_center/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca/params/zero_center/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca/params/zero_center/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca/variance", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca/variance/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca/variance/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca/variance/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca/variance_ratio", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca/variance_ratio/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca/variance_ratio/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca/variance_ratio/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/logfoldchanges", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/logfoldchanges/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/logfoldchanges/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/logfoldchanges/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/logfoldchanges/1", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/names", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/names/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/names/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/names/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/names/1", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/names/10", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/names/11", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/names/12", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/names/13", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/names/14", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/names/15", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/names/2", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/names/3", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/names/4", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/names/5", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/names/6", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/names/7", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/names/8", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/names/9", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/params", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/params/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/params/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/params/corr_method", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/params/corr_method/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/params/corr_method/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/params/corr_method/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/params/groupby", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/params/groupby/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/params/groupby/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/params/groupby/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/params/layer", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/params/layer/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/params/layer/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/params/layer/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/params/method", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/params/method/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/params/method/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/params/method/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/params/reference", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/params/reference/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/params/reference/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/params/reference/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/params/use_raw", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/params/use_raw/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/params/use_raw/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/params/use_raw/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/pvals", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/pvals/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/pvals/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/pvals/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/pvals/1", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/pvals_adj", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/pvals_adj/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/pvals_adj/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/pvals_adj/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/pvals_adj/1", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/scores", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/scores/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/scores/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/scores/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/scores/1", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/sample_id", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/sample_id/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/sample_id/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/sample_id/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2/metadata", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2/metadata/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2/metadata/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2/metadata/chemistry_description", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2/metadata/chemistry_description/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2/metadata/chemistry_description/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2/metadata/chemistry_description/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2/metadata/software_version", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2/metadata/software_version/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2/metadata/software_version/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2/metadata/software_version/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/0/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/0/0/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/0/0/1", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/0/1", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/0/1/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/0/1/1", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/0/2", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/0/2/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/0/2/1", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/0/3", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/0/3/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/0/3/1", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/1", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/1/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/1/0/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/1/0/1", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/1/1", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/1/1/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/1/1/1", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/1/2", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/1/2/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/1/2/1", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/1/3", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/1/3/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/1/3/1", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/2", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/2/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/2/0/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/2/0/1", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/2/1", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/2/1/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/2/1/1", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/2/2", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/2/2/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/2/2/1", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/2/3", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/2/3/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/2/3/1", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/3", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/3/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/3/0/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/3/0/1", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/3/1", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/3/1/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/3/1/1", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/3/2", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/3/2/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/3/2/1", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/3/3", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/3/3/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/3/3/1", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/lowres", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/lowres/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/lowres/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/lowres/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/lowres/0/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/lowres/0/0/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/lowres/0/1", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/lowres/0/1/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/lowres/1", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/lowres/1/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/lowres/1/0/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/lowres/1/1", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/lowres/1/1/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/scalefactors", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/scalefactors/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/scalefactors/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/scalefactors/spot_diameter_fullres", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/scalefactors/spot_diameter_fullres/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/scalefactors/spot_diameter_fullres/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/scalefactors/spot_diameter_fullres/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/scalefactors/tissue_hires_scalef", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/scalefactors/tissue_hires_scalef/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/scalefactors/tissue_hires_scalef/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/scalefactors/tissue_hires_scalef/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/scalefactors/tissue_lowres_scalef", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/scalefactors/tissue_lowres_scalef/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/scalefactors/tissue_lowres_scalef/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/scalefactors/tissue_lowres_scalef/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial_neighbors", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial_neighbors/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial_neighbors/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial_neighbors/connectivities_key", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial_neighbors/connectivities_key/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial_neighbors/connectivities_key/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial_neighbors/connectivities_key/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial_neighbors/distances_key", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial_neighbors/distances_key/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial_neighbors/distances_key/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial_neighbors/distances_key/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial_neighbors/params", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial_neighbors/params/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial_neighbors/params/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial_neighbors/params/coord_type", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial_neighbors/params/coord_type/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial_neighbors/params/coord_type/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial_neighbors/params/coord_type/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial_neighbors/params/n_neighbors", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial_neighbors/params/n_neighbors/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial_neighbors/params/n_neighbors/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial_neighbors/params/n_neighbors/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial_neighbors/params/radius", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial_neighbors/params/radius/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial_neighbors/params/radius/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial_neighbors/params/radius/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial_neighbors/params/transform", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial_neighbors/params/transform/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial_neighbors/params/transform/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial_neighbors/params/transform/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/instance_key", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/instance_key/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/instance_key/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/instance_key/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/region", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/region/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/region/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/region/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/region_key", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/region_key/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/region_key/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/region_key/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/table_name", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/table_name/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/table_name/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/table_name/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/_index", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/_index/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/_index/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/_index/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/dispersions", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/dispersions/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/dispersions/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/dispersions/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/dispersions_norm", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/dispersions_norm/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/dispersions_norm/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/dispersions_norm/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/feature_types", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/feature_types/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/feature_types/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/feature_types/categories", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/feature_types/categories/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/feature_types/categories/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/feature_types/categories/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/feature_types/codes", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/feature_types/codes/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/feature_types/codes/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/feature_types/codes/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/gene_ids", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/gene_ids/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/gene_ids/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/gene_ids/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/genome", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/genome/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/genome/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/genome/categories", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/genome/categories/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/genome/categories/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/genome/categories/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/genome/codes", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/genome/codes/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/genome/codes/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/genome/codes/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/hb", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/hb/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/hb/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/hb/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/highly_variable", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/highly_variable/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/highly_variable/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/highly_variable/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/mean_counts", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/mean_counts/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/mean_counts/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/mean_counts/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/means", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/means/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/means/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/means/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/mt", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/mt/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/mt/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/mt/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/n_cells", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/n_cells/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/n_cells/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/n_cells/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/n_cells_by_counts", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/n_cells_by_counts/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/n_cells_by_counts/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/n_cells_by_counts/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/pct_dropout_by_counts", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/pct_dropout_by_counts/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/pct_dropout_by_counts/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/pct_dropout_by_counts/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/ribo", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/ribo/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/ribo/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/ribo/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/total_counts", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/total_counts/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/total_counts/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/total_counts/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/varm", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/varm/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/varm/.zgroup", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/varm/PCs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/varm/PCs/.zarray", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/varm/PCs/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/varm/PCs/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/varm/PCs/0/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/varm/PCs/0/1", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/varm/PCs/1", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/varm/PCs/1/0", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/varm/PCs/1/1", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/varp", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/varp/.zattrs", + "integration/data/harmony.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/varp/.zgroup", + "integration/data/harmony.zarr/zmetadata", + "integration/data/merged.zarr/.zattrs", + "integration/data/merged.zarr/.zgroup", + "integration/data/merged.zarr/images", + "integration/data/merged.zarr/images/.zgroup", + "integration/data/merged.zarr/images/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image", + "integration/data/merged.zarr/images/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/.zattrs", + "integration/data/merged.zarr/images/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/.zgroup", + "integration/data/merged.zarr/images/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/0", + "integration/data/merged.zarr/images/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/0/.zarray", + "integration/data/merged.zarr/images/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/0/0", + "integration/data/merged.zarr/images/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/0/0/0", + "integration/data/merged.zarr/images/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/0/0/0/0", + "integration/data/merged.zarr/images/CytAssist_11mm_FFPE_Human_Glioblastoma_22_lowres_image", + "integration/data/merged.zarr/images/CytAssist_11mm_FFPE_Human_Glioblastoma_22_lowres_image/.zattrs", + "integration/data/merged.zarr/images/CytAssist_11mm_FFPE_Human_Glioblastoma_22_lowres_image/.zgroup", + "integration/data/merged.zarr/images/CytAssist_11mm_FFPE_Human_Glioblastoma_22_lowres_image/0", + "integration/data/merged.zarr/images/CytAssist_11mm_FFPE_Human_Glioblastoma_22_lowres_image/0/.zarray", + "integration/data/merged.zarr/images/CytAssist_11mm_FFPE_Human_Glioblastoma_22_lowres_image/0/0", + "integration/data/merged.zarr/images/CytAssist_11mm_FFPE_Human_Glioblastoma_22_lowres_image/0/0/0", + "integration/data/merged.zarr/images/CytAssist_11mm_FFPE_Human_Glioblastoma_22_lowres_image/0/0/0/0", + "integration/data/merged.zarr/images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image", + "integration/data/merged.zarr/images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/.zattrs", + "integration/data/merged.zarr/images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/.zgroup", + "integration/data/merged.zarr/images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/0", + "integration/data/merged.zarr/images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/0/.zarray", + "integration/data/merged.zarr/images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/0/0", + "integration/data/merged.zarr/images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/0/0/0", + "integration/data/merged.zarr/images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/0/0/0/0", + "integration/data/merged.zarr/images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_lowres_image", + "integration/data/merged.zarr/images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_lowres_image/.zattrs", + "integration/data/merged.zarr/images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_lowres_image/.zgroup", + "integration/data/merged.zarr/images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_lowres_image/0", + "integration/data/merged.zarr/images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_lowres_image/0/.zarray", + "integration/data/merged.zarr/images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_lowres_image/0/0", + "integration/data/merged.zarr/images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_lowres_image/0/0/0", + "integration/data/merged.zarr/images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_lowres_image/0/0/0/0", + "integration/data/merged.zarr/shapes", + "integration/data/merged.zarr/shapes/.zgroup", + "integration/data/merged.zarr/shapes/CytAssist_11mm_FFPE_Human_Glioblastoma_2", + "integration/data/merged.zarr/shapes/CytAssist_11mm_FFPE_Human_Glioblastoma_2/.zattrs", + "integration/data/merged.zarr/shapes/CytAssist_11mm_FFPE_Human_Glioblastoma_2/.zgroup", + "integration/data/merged.zarr/shapes/CytAssist_11mm_FFPE_Human_Glioblastoma_2/shapes.parquet", + "integration/data/merged.zarr/shapes/CytAssist_11mm_FFPE_Human_Glioblastoma_22", + "integration/data/merged.zarr/shapes/CytAssist_11mm_FFPE_Human_Glioblastoma_22/.zattrs", + "integration/data/merged.zarr/shapes/CytAssist_11mm_FFPE_Human_Glioblastoma_22/.zgroup", + "integration/data/merged.zarr/shapes/CytAssist_11mm_FFPE_Human_Glioblastoma_22/shapes.parquet", + "integration/data/merged.zarr/tables", + "integration/data/merged.zarr/tables/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/X", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/X/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/X/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/X/data", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/X/data/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/X/data/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/X/indices", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/X/indices/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/X/indices/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/X/indptr", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/X/indptr/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/X/indptr/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/layers", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/layers/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/layers/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/layers/raw", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/layers/raw/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/layers/raw/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/layers/raw/data", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/layers/raw/data/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/layers/raw/data/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/layers/raw/indices", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/layers/raw/indices/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/layers/raw/indices/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/layers/raw/indptr", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/layers/raw/indptr/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/layers/raw/indptr/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/_index", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/_index/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/_index/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/_index/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/array_col", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/array_col/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/array_col/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/array_col/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/array_row", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/array_row/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/array_row/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/array_row/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/clusters", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/clusters/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/clusters/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/clusters/categories", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/clusters/categories/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/clusters/categories/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/clusters/categories/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/clusters/codes", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/clusters/codes/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/clusters/codes/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/clusters/codes/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/in_tissue", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/in_tissue/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/in_tissue/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/in_tissue/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/n_counts", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/n_counts/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/n_counts/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/n_counts/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/n_genes", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/n_genes/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/n_genes/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/n_genes/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/n_genes_by_counts", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/n_genes_by_counts/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/n_genes_by_counts/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/n_genes_by_counts/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/pct_counts_hb", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/pct_counts_hb/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/pct_counts_hb/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/pct_counts_hb/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/pct_counts_in_top_100_genes", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/pct_counts_in_top_100_genes/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/pct_counts_in_top_100_genes/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/pct_counts_in_top_100_genes/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/pct_counts_in_top_200_genes", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/pct_counts_in_top_200_genes/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/pct_counts_in_top_200_genes/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/pct_counts_in_top_200_genes/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/pct_counts_in_top_500_genes", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/pct_counts_in_top_500_genes/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/pct_counts_in_top_500_genes/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/pct_counts_in_top_500_genes/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/pct_counts_in_top_50_genes", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/pct_counts_in_top_50_genes/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/pct_counts_in_top_50_genes/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/pct_counts_in_top_50_genes/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/pct_counts_mt", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/pct_counts_mt/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/pct_counts_mt/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/pct_counts_mt/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/pct_counts_ribo", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/pct_counts_ribo/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/pct_counts_ribo/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/pct_counts_ribo/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/region", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/region/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/region/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/region/categories", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/region/categories/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/region/categories/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/region/categories/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/region/codes", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/region/codes/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/region/codes/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/region/codes/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/spot_id", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/spot_id/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/spot_id/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/spot_id/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/total_counts", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/total_counts/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/total_counts/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/total_counts/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/total_counts_hb", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/total_counts_hb/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/total_counts_hb/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/total_counts_hb/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/total_counts_mt", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/total_counts_mt/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/total_counts_mt/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/total_counts_mt/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/total_counts_normalized", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/total_counts_normalized/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/total_counts_normalized/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/total_counts_normalized/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/total_counts_ribo", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/total_counts_ribo/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/total_counts_ribo/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obs/total_counts_ribo/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsm", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsm/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsm/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsm/X_pca", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsm/X_pca/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsm/X_pca/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsm/X_pca/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsm/X_pca/0/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsm/X_umap", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsm/X_umap/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsm/X_umap/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsm/X_umap/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsm/X_umap/0/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsm/spatial", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsm/spatial/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsm/spatial/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsm/spatial/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsm/spatial/0/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsp", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsp/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsp/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsp/connectivities", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsp/connectivities/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsp/connectivities/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsp/connectivities/data", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsp/connectivities/data/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsp/connectivities/data/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsp/connectivities/indices", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsp/connectivities/indices/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsp/connectivities/indices/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsp/connectivities/indptr", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsp/connectivities/indptr/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsp/connectivities/indptr/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsp/distances", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsp/distances/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsp/distances/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsp/distances/data", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsp/distances/data/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsp/distances/data/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsp/distances/indices", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsp/distances/indices/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsp/distances/indices/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsp/distances/indptr", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsp/distances/indptr/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsp/distances/indptr/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsp/spatial_connectivities", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsp/spatial_connectivities/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsp/spatial_connectivities/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsp/spatial_connectivities/data", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsp/spatial_connectivities/data/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsp/spatial_connectivities/data/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsp/spatial_connectivities/indices", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsp/spatial_connectivities/indices/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsp/spatial_connectivities/indices/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsp/spatial_connectivities/indptr", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsp/spatial_connectivities/indptr/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsp/spatial_connectivities/indptr/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsp/spatial_distances", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsp/spatial_distances/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsp/spatial_distances/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsp/spatial_distances/data", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsp/spatial_distances/data/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsp/spatial_distances/data/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsp/spatial_distances/indices", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsp/spatial_distances/indices/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsp/spatial_distances/indices/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsp/spatial_distances/indptr", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsp/spatial_distances/indptr/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/obsp/spatial_distances/indptr/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/raw", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/raw/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/raw/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/raw/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/X_umap", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/X_umap/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/X_umap/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/X_umap/params", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/X_umap/params/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/X_umap/params/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/X_umap/params/a", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/X_umap/params/a/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/X_umap/params/a/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/X_umap/params/a/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/X_umap/params/b", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/X_umap/params/b/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/X_umap/params/b/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/X_umap/params/b/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/clusters", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/clusters/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/clusters/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/clusters/params", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/clusters/params/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/clusters/params/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/clusters/params/n_iterations", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/clusters/params/n_iterations/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/clusters/params/n_iterations/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/clusters/params/n_iterations/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/clusters/params/random_state", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/clusters/params/random_state/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/clusters/params/random_state/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/clusters/params/random_state/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/clusters/params/resolution", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/clusters/params/resolution/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/clusters/params/resolution/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/clusters/params/resolution/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/clusters_interactions", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/clusters_interactions/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/clusters_interactions/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/clusters_interactions/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/clusters_interactions/0/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/clusters_nhood_enrichment", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/clusters_nhood_enrichment/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/clusters_nhood_enrichment/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/clusters_nhood_enrichment/count", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/clusters_nhood_enrichment/count/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/clusters_nhood_enrichment/count/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/clusters_nhood_enrichment/count/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/clusters_nhood_enrichment/count/0/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/clusters_nhood_enrichment/zscore", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/clusters_nhood_enrichment/zscore/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/clusters_nhood_enrichment/zscore/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/clusters_nhood_enrichment/zscore/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/clusters_nhood_enrichment/zscore/0/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/coordinate_system", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/coordinate_system/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/coordinate_system/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/coordinate_system/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/genes_filtered_min_obs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/genes_filtered_min_obs/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/genes_filtered_min_obs/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/genes_filtered_min_obs/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/hb_threshold", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/hb_threshold/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/hb_threshold/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/hb_threshold/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/min_counts_threshold", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/min_counts_threshold/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/min_counts_threshold/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/min_counts_threshold/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/min_genes_threshold", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/min_genes_threshold/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/min_genes_threshold/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/min_genes_threshold/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/min_obs_threshold", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/min_obs_threshold/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/min_obs_threshold/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/min_obs_threshold/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/mito_threshold", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/mito_threshold/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/mito_threshold/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/mito_threshold/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/obs_filtered_hb", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/obs_filtered_hb/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/obs_filtered_hb/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/obs_filtered_hb/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/obs_filtered_min_counts", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/obs_filtered_min_counts/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/obs_filtered_min_counts/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/obs_filtered_min_counts/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/obs_filtered_min_genes", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/obs_filtered_min_genes/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/obs_filtered_min_genes/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/obs_filtered_min_genes/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/obs_filtered_mito", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/obs_filtered_mito/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/obs_filtered_mito/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/obs_filtered_mito/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/obs_filtered_outside_tissue", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/obs_filtered_outside_tissue/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/obs_filtered_outside_tissue/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/obs_filtered_outside_tissue/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/obs_filtered_ribo", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/obs_filtered_ribo/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/obs_filtered_ribo/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/obs_filtered_ribo/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/ribo_threshold", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/ribo_threshold/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/ribo_threshold/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/ribo_threshold/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/sample_id", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/sample_id/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/sample_id/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/sample_id/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/total_genes_after", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/total_genes_after/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/total_genes_after/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/total_genes_after/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/total_genes_before", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/total_genes_before/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/total_genes_before/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/total_genes_before/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/total_genes_filtered", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/total_genes_filtered/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/total_genes_filtered/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/total_genes_filtered/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/total_obs_after", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/total_obs_after/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/total_obs_after/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/total_obs_after/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/total_obs_before", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/total_obs_before/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/total_obs_before/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/total_obs_before/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/total_obs_filtered", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/total_obs_filtered/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/total_obs_filtered/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/filtering_stats/total_obs_filtered/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/hvg", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/hvg/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/hvg/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/hvg/flavor", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/hvg/flavor/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/hvg/flavor/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/hvg/flavor/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/hvg/n_hvgs_found", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/hvg/n_hvgs_found/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/hvg/n_hvgs_found/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/hvg/n_hvgs_found/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/hvg/n_hvgs_requested", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/hvg/n_hvgs_requested/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/hvg/n_hvgs_requested/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/hvg/n_hvgs_requested/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/leiden", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/leiden/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/leiden/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/leiden/n_clusters", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/leiden/n_clusters/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/leiden/n_clusters/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/leiden/n_clusters/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/leiden/resolution", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/leiden/resolution/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/leiden/resolution/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/leiden/resolution/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/log1p", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/log1p/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/log1p/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/log1p/base", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/log1p/base/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/log1p/base/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/log1p/base/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/moranI", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/moranI/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/moranI/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/moranI/I", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/moranI/I/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/moranI/I/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/moranI/I/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/moranI/_index", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/moranI/_index/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/moranI/_index/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/moranI/_index/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/moranI/pval_norm", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/moranI/pval_norm/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/moranI/pval_norm/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/moranI/pval_norm/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/moranI/pval_norm_fdr_bh", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/moranI/pval_norm_fdr_bh/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/moranI/pval_norm_fdr_bh/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/moranI/pval_norm_fdr_bh/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/moranI/var_norm", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/moranI/var_norm/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/moranI/var_norm/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/moranI/var_norm/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/neighbors", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/neighbors/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/neighbors/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/neighbors/connectivities_key", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/neighbors/connectivities_key/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/neighbors/connectivities_key/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/neighbors/connectivities_key/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/neighbors/distances_key", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/neighbors/distances_key/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/neighbors/distances_key/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/neighbors/distances_key/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/neighbors/params", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/neighbors/params/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/neighbors/params/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/neighbors/params/method", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/neighbors/params/method/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/neighbors/params/method/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/neighbors/params/method/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/neighbors/params/metric", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/neighbors/params/metric/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/neighbors/params/metric/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/neighbors/params/metric/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/neighbors/params/n_neighbors", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/neighbors/params/n_neighbors/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/neighbors/params/n_neighbors/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/neighbors/params/n_neighbors/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/neighbors/params/n_pcs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/neighbors/params/n_pcs/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/neighbors/params/n_pcs/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/neighbors/params/n_pcs/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/neighbors/params/random_state", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/neighbors/params/random_state/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/neighbors/params/random_state/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/neighbors/params/random_state/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/normalization", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/normalization/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/normalization/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/normalization/log1p", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/normalization/log1p/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/normalization/log1p/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/normalization/log1p/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/normalization/method", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/normalization/method/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/normalization/method/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/normalization/method/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/normalization/target_sum", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/normalization/target_sum/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/normalization/target_sum/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/normalization/target_sum/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/pca", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/pca/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/pca/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/pca/params", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/pca/params/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/pca/params/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/pca/params/mask_var", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/pca/params/mask_var/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/pca/params/mask_var/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/pca/params/mask_var/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/pca/params/use_highly_variable", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/pca/params/use_highly_variable/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/pca/params/use_highly_variable/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/pca/params/use_highly_variable/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/pca/params/zero_center", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/pca/params/zero_center/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/pca/params/zero_center/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/pca/params/zero_center/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/pca/variance", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/pca/variance/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/pca/variance/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/pca/variance/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/pca/variance_ratio", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/pca/variance_ratio/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/pca/variance_ratio/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/pca/variance_ratio/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/logfoldchanges", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/logfoldchanges/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/logfoldchanges/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/logfoldchanges/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/logfoldchanges/1", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/names", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/names/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/names/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/names/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/names/1", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/names/10", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/names/11", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/names/12", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/names/13", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/names/14", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/names/15", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/names/2", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/names/3", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/names/4", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/names/5", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/names/6", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/names/7", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/names/8", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/names/9", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/params", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/params/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/params/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/params/corr_method", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/params/corr_method/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/params/corr_method/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/params/corr_method/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/params/groupby", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/params/groupby/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/params/groupby/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/params/groupby/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/params/layer", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/params/layer/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/params/layer/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/params/layer/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/params/method", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/params/method/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/params/method/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/params/method/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/params/reference", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/params/reference/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/params/reference/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/params/reference/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/params/use_raw", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/params/use_raw/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/params/use_raw/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/params/use_raw/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/pvals", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/pvals/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/pvals/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/pvals/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/pvals/1", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/pvals_adj", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/pvals_adj/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/pvals_adj/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/pvals_adj/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/pvals_adj/1", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/scores", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/scores/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/scores/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/scores/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/rank_genes_groups/scores/1", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/sample_id", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/sample_id/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/sample_id/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/sample_id/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22/metadata", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22/metadata/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22/metadata/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22/metadata/chemistry_description", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22/metadata/chemistry_description/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22/metadata/chemistry_description/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22/metadata/chemistry_description/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22/metadata/software_version", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22/metadata/software_version/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22/metadata/software_version/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22/metadata/software_version/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/hires", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/hires/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/hires/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/hires/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/hires/0/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/hires/0/0/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/hires/0/0/1", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/hires/0/1", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/hires/0/1/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/hires/0/1/1", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/hires/0/2", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/hires/0/2/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/hires/0/2/1", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/hires/0/3", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/hires/0/3/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/hires/0/3/1", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/hires/1", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/hires/1/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/hires/1/0/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/hires/1/0/1", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/hires/1/1", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/hires/1/1/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/hires/1/1/1", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/hires/1/2", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/hires/1/2/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/hires/1/2/1", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/hires/1/3", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/hires/1/3/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/hires/1/3/1", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/hires/2", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/hires/2/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/hires/2/0/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/hires/2/0/1", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/hires/2/1", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/hires/2/1/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/hires/2/1/1", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/hires/2/2", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/hires/2/2/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/hires/2/2/1", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/hires/2/3", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/hires/2/3/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/hires/2/3/1", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/hires/3", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/hires/3/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/hires/3/0/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/hires/3/0/1", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/hires/3/1", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/hires/3/1/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/hires/3/1/1", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/hires/3/2", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/hires/3/2/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/hires/3/2/1", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/hires/3/3", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/hires/3/3/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/hires/3/3/1", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/lowres", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/lowres/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/lowres/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/lowres/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/lowres/0/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/lowres/0/0/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/lowres/0/1", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/lowres/0/1/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/lowres/1", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/lowres/1/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/lowres/1/0/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/lowres/1/1", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/images/lowres/1/1/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/scalefactors", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/scalefactors/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/scalefactors/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/scalefactors/spot_diameter_fullres", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/scalefactors/spot_diameter_fullres/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/scalefactors/spot_diameter_fullres/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/scalefactors/spot_diameter_fullres/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/scalefactors/tissue_hires_scalef", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/scalefactors/tissue_hires_scalef/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/scalefactors/tissue_hires_scalef/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/scalefactors/tissue_hires_scalef/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/scalefactors/tissue_lowres_scalef", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/scalefactors/tissue_lowres_scalef/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/scalefactors/tissue_lowres_scalef/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_22_hires_image/scalefactors/tissue_lowres_scalef/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial_neighbors", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial_neighbors/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial_neighbors/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial_neighbors/connectivities_key", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial_neighbors/connectivities_key/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial_neighbors/connectivities_key/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial_neighbors/connectivities_key/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial_neighbors/distances_key", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial_neighbors/distances_key/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial_neighbors/distances_key/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial_neighbors/distances_key/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial_neighbors/params", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial_neighbors/params/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial_neighbors/params/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial_neighbors/params/coord_type", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial_neighbors/params/coord_type/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial_neighbors/params/coord_type/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial_neighbors/params/coord_type/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial_neighbors/params/n_neighbors", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial_neighbors/params/n_neighbors/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial_neighbors/params/n_neighbors/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial_neighbors/params/n_neighbors/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial_neighbors/params/radius", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial_neighbors/params/radius/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial_neighbors/params/radius/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial_neighbors/params/radius/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial_neighbors/params/transform", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial_neighbors/params/transform/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial_neighbors/params/transform/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatial_neighbors/params/transform/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatialdata_attrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatialdata_attrs/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatialdata_attrs/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatialdata_attrs/instance_key", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatialdata_attrs/instance_key/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatialdata_attrs/instance_key/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatialdata_attrs/instance_key/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatialdata_attrs/region", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatialdata_attrs/region/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatialdata_attrs/region/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatialdata_attrs/region/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatialdata_attrs/region_key", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatialdata_attrs/region_key/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatialdata_attrs/region_key/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/spatialdata_attrs/region_key/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/table_name", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/table_name/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/table_name/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/uns/table_name/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/_index", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/_index/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/_index/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/_index/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/dispersions", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/dispersions/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/dispersions/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/dispersions/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/dispersions_norm", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/dispersions_norm/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/dispersions_norm/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/dispersions_norm/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/feature_types", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/feature_types/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/feature_types/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/feature_types/categories", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/feature_types/categories/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/feature_types/categories/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/feature_types/categories/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/feature_types/codes", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/feature_types/codes/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/feature_types/codes/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/feature_types/codes/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/gene_ids", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/gene_ids/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/gene_ids/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/gene_ids/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/genome", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/genome/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/genome/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/genome/categories", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/genome/categories/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/genome/categories/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/genome/categories/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/genome/codes", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/genome/codes/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/genome/codes/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/genome/codes/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/hb", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/hb/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/hb/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/hb/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/highly_variable", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/highly_variable/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/highly_variable/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/highly_variable/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/mean_counts", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/mean_counts/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/mean_counts/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/mean_counts/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/means", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/means/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/means/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/means/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/mt", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/mt/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/mt/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/mt/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/n_cells", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/n_cells/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/n_cells/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/n_cells/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/n_cells_by_counts", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/n_cells_by_counts/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/n_cells_by_counts/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/n_cells_by_counts/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/pct_dropout_by_counts", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/pct_dropout_by_counts/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/pct_dropout_by_counts/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/pct_dropout_by_counts/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/ribo", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/ribo/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/ribo/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/ribo/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/total_counts", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/total_counts/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/total_counts/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/var/total_counts/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/varm", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/varm/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/varm/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/varm/PCs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/varm/PCs/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/varm/PCs/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/varm/PCs/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/varm/PCs/0/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/varm/PCs/0/1", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/varm/PCs/1", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/varm/PCs/1/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/varm/PCs/1/1", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/varp", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/varp/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_22_table/varp/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/X", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/X/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/X/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/X/data", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/X/data/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/X/data/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/X/indices", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/X/indices/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/X/indices/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/X/indptr", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/X/indptr/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/X/indptr/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/layers", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/layers/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/layers/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/layers/raw", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/layers/raw/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/layers/raw/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/layers/raw/data", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/layers/raw/data/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/layers/raw/data/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/layers/raw/indices", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/layers/raw/indices/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/layers/raw/indices/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/layers/raw/indptr", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/layers/raw/indptr/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/layers/raw/indptr/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/_index", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/_index/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/_index/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/_index/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/array_col", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/array_col/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/array_col/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/array_col/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/array_row", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/array_row/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/array_row/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/array_row/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/clusters", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/clusters/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/clusters/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/clusters/categories", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/clusters/categories/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/clusters/categories/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/clusters/categories/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/clusters/codes", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/clusters/codes/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/clusters/codes/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/clusters/codes/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/in_tissue", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/in_tissue/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/in_tissue/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/in_tissue/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/n_counts", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/n_counts/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/n_counts/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/n_counts/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/n_genes", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/n_genes/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/n_genes/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/n_genes/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/n_genes_by_counts", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/n_genes_by_counts/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/n_genes_by_counts/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/n_genes_by_counts/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/pct_counts_hb", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/pct_counts_hb/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/pct_counts_hb/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/pct_counts_hb/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/pct_counts_in_top_100_genes", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/pct_counts_in_top_100_genes/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/pct_counts_in_top_100_genes/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/pct_counts_in_top_100_genes/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/pct_counts_in_top_200_genes", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/pct_counts_in_top_200_genes/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/pct_counts_in_top_200_genes/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/pct_counts_in_top_200_genes/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/pct_counts_in_top_500_genes", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/pct_counts_in_top_500_genes/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/pct_counts_in_top_500_genes/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/pct_counts_in_top_500_genes/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/pct_counts_in_top_50_genes", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/pct_counts_in_top_50_genes/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/pct_counts_in_top_50_genes/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/pct_counts_in_top_50_genes/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/pct_counts_mt", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/pct_counts_mt/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/pct_counts_mt/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/pct_counts_mt/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/pct_counts_ribo", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/pct_counts_ribo/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/pct_counts_ribo/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/pct_counts_ribo/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/region", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/region/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/region/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/region/categories", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/region/categories/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/region/categories/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/region/categories/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/region/codes", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/region/codes/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/region/codes/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/region/codes/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/spot_id", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/spot_id/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/spot_id/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/spot_id/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/total_counts", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/total_counts/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/total_counts/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/total_counts/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/total_counts_hb", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/total_counts_hb/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/total_counts_hb/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/total_counts_hb/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/total_counts_mt", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/total_counts_mt/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/total_counts_mt/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/total_counts_mt/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/total_counts_normalized", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/total_counts_normalized/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/total_counts_normalized/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/total_counts_normalized/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/total_counts_ribo", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/total_counts_ribo/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/total_counts_ribo/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/total_counts_ribo/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/X_pca", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/X_pca/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/X_pca/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/X_pca/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/X_pca/0/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/X_umap", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/X_umap/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/X_umap/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/X_umap/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/X_umap/0/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/spatial", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/spatial/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/spatial/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/spatial/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/spatial/0/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/connectivities", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/connectivities/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/connectivities/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/connectivities/data", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/connectivities/data/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/connectivities/data/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/connectivities/indices", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/connectivities/indices/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/connectivities/indices/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/connectivities/indptr", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/connectivities/indptr/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/connectivities/indptr/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/distances", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/distances/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/distances/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/distances/data", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/distances/data/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/distances/data/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/distances/indices", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/distances/indices/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/distances/indices/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/distances/indptr", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/distances/indptr/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/distances/indptr/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/spatial_connectivities", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/spatial_connectivities/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/spatial_connectivities/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/spatial_connectivities/data", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/spatial_connectivities/data/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/spatial_connectivities/data/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/spatial_connectivities/indices", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/spatial_connectivities/indices/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/spatial_connectivities/indices/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/spatial_connectivities/indptr", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/spatial_connectivities/indptr/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/spatial_connectivities/indptr/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/spatial_distances", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/spatial_distances/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/spatial_distances/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/spatial_distances/data", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/spatial_distances/data/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/spatial_distances/data/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/spatial_distances/indices", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/spatial_distances/indices/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/spatial_distances/indices/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/spatial_distances/indptr", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/spatial_distances/indptr/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/spatial_distances/indptr/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/raw", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/raw/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/raw/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/raw/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/X_umap", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/X_umap/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/X_umap/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/X_umap/params", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/X_umap/params/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/X_umap/params/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/X_umap/params/a", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/X_umap/params/a/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/X_umap/params/a/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/X_umap/params/a/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/X_umap/params/b", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/X_umap/params/b/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/X_umap/params/b/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/X_umap/params/b/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters/params", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters/params/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters/params/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters/params/n_iterations", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters/params/n_iterations/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters/params/n_iterations/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters/params/n_iterations/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters/params/random_state", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters/params/random_state/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters/params/random_state/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters/params/random_state/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters/params/resolution", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters/params/resolution/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters/params/resolution/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters/params/resolution/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters_interactions", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters_interactions/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters_interactions/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters_interactions/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters_interactions/0/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters_nhood_enrichment", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters_nhood_enrichment/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters_nhood_enrichment/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters_nhood_enrichment/count", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters_nhood_enrichment/count/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters_nhood_enrichment/count/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters_nhood_enrichment/count/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters_nhood_enrichment/count/0/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters_nhood_enrichment/zscore", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters_nhood_enrichment/zscore/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters_nhood_enrichment/zscore/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters_nhood_enrichment/zscore/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/clusters_nhood_enrichment/zscore/0/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/coordinate_system", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/coordinate_system/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/coordinate_system/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/coordinate_system/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/genes_filtered_min_obs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/genes_filtered_min_obs/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/genes_filtered_min_obs/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/genes_filtered_min_obs/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/hb_threshold", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/hb_threshold/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/hb_threshold/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/hb_threshold/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/min_counts_threshold", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/min_counts_threshold/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/min_counts_threshold/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/min_counts_threshold/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/min_genes_threshold", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/min_genes_threshold/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/min_genes_threshold/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/min_genes_threshold/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/min_obs_threshold", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/min_obs_threshold/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/min_obs_threshold/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/min_obs_threshold/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/mito_threshold", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/mito_threshold/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/mito_threshold/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/mito_threshold/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/obs_filtered_hb", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/obs_filtered_hb/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/obs_filtered_hb/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/obs_filtered_hb/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/obs_filtered_min_counts", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/obs_filtered_min_counts/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/obs_filtered_min_counts/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/obs_filtered_min_counts/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/obs_filtered_min_genes", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/obs_filtered_min_genes/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/obs_filtered_min_genes/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/obs_filtered_min_genes/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/obs_filtered_mito", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/obs_filtered_mito/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/obs_filtered_mito/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/obs_filtered_mito/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/obs_filtered_outside_tissue", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/obs_filtered_outside_tissue/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/obs_filtered_outside_tissue/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/obs_filtered_outside_tissue/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/obs_filtered_ribo", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/obs_filtered_ribo/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/obs_filtered_ribo/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/obs_filtered_ribo/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/ribo_threshold", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/ribo_threshold/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/ribo_threshold/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/ribo_threshold/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/sample_id", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/sample_id/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/sample_id/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/sample_id/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/total_genes_after", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/total_genes_after/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/total_genes_after/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/total_genes_after/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/total_genes_before", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/total_genes_before/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/total_genes_before/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/total_genes_before/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/total_genes_filtered", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/total_genes_filtered/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/total_genes_filtered/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/total_genes_filtered/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/total_obs_after", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/total_obs_after/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/total_obs_after/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/total_obs_after/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/total_obs_before", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/total_obs_before/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/total_obs_before/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/total_obs_before/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/total_obs_filtered", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/total_obs_filtered/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/total_obs_filtered/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/filtering_stats/total_obs_filtered/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/hvg", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/hvg/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/hvg/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/hvg/flavor", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/hvg/flavor/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/hvg/flavor/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/hvg/flavor/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/hvg/n_hvgs_found", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/hvg/n_hvgs_found/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/hvg/n_hvgs_found/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/hvg/n_hvgs_found/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/hvg/n_hvgs_requested", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/hvg/n_hvgs_requested/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/hvg/n_hvgs_requested/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/hvg/n_hvgs_requested/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/leiden", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/leiden/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/leiden/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/leiden/n_clusters", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/leiden/n_clusters/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/leiden/n_clusters/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/leiden/n_clusters/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/leiden/resolution", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/leiden/resolution/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/leiden/resolution/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/leiden/resolution/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/log1p", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/log1p/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/log1p/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/log1p/base", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/log1p/base/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/log1p/base/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/log1p/base/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/moranI", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/moranI/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/moranI/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/moranI/I", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/moranI/I/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/moranI/I/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/moranI/I/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/moranI/_index", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/moranI/_index/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/moranI/_index/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/moranI/_index/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/moranI/pval_norm", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/moranI/pval_norm/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/moranI/pval_norm/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/moranI/pval_norm/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/moranI/pval_norm_fdr_bh", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/moranI/pval_norm_fdr_bh/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/moranI/pval_norm_fdr_bh/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/moranI/pval_norm_fdr_bh/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/moranI/var_norm", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/moranI/var_norm/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/moranI/var_norm/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/moranI/var_norm/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/connectivities_key", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/connectivities_key/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/connectivities_key/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/connectivities_key/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/distances_key", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/distances_key/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/distances_key/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/distances_key/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/params", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/params/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/params/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/params/method", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/params/method/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/params/method/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/params/method/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/params/metric", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/params/metric/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/params/metric/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/params/metric/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/params/n_neighbors", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/params/n_neighbors/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/params/n_neighbors/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/params/n_neighbors/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/params/n_pcs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/params/n_pcs/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/params/n_pcs/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/params/n_pcs/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/params/random_state", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/params/random_state/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/params/random_state/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/neighbors/params/random_state/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/normalization", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/normalization/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/normalization/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/normalization/log1p", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/normalization/log1p/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/normalization/log1p/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/normalization/log1p/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/normalization/method", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/normalization/method/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/normalization/method/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/normalization/method/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/normalization/target_sum", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/normalization/target_sum/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/normalization/target_sum/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/normalization/target_sum/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca/params", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca/params/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca/params/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca/params/mask_var", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca/params/mask_var/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca/params/mask_var/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca/params/mask_var/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca/params/use_highly_variable", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca/params/use_highly_variable/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca/params/use_highly_variable/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca/params/use_highly_variable/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca/params/zero_center", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca/params/zero_center/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca/params/zero_center/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca/params/zero_center/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca/variance", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca/variance/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca/variance/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca/variance/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca/variance_ratio", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca/variance_ratio/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca/variance_ratio/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/pca/variance_ratio/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/logfoldchanges", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/logfoldchanges/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/logfoldchanges/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/logfoldchanges/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/logfoldchanges/1", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/names", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/names/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/names/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/names/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/names/1", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/names/10", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/names/11", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/names/12", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/names/13", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/names/14", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/names/15", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/names/2", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/names/3", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/names/4", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/names/5", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/names/6", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/names/7", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/names/8", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/names/9", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/params", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/params/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/params/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/params/corr_method", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/params/corr_method/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/params/corr_method/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/params/corr_method/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/params/groupby", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/params/groupby/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/params/groupby/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/params/groupby/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/params/layer", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/params/layer/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/params/layer/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/params/layer/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/params/method", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/params/method/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/params/method/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/params/method/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/params/reference", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/params/reference/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/params/reference/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/params/reference/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/params/use_raw", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/params/use_raw/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/params/use_raw/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/params/use_raw/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/pvals", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/pvals/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/pvals/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/pvals/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/pvals/1", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/pvals_adj", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/pvals_adj/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/pvals_adj/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/pvals_adj/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/pvals_adj/1", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/scores", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/scores/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/scores/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/scores/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/rank_genes_groups/scores/1", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/sample_id", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/sample_id/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/sample_id/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/sample_id/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2/metadata", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2/metadata/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2/metadata/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2/metadata/chemistry_description", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2/metadata/chemistry_description/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2/metadata/chemistry_description/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2/metadata/chemistry_description/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2/metadata/software_version", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2/metadata/software_version/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2/metadata/software_version/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2/metadata/software_version/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/0/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/0/0/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/0/0/1", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/0/1", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/0/1/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/0/1/1", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/0/2", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/0/2/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/0/2/1", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/0/3", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/0/3/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/0/3/1", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/1", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/1/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/1/0/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/1/0/1", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/1/1", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/1/1/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/1/1/1", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/1/2", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/1/2/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/1/2/1", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/1/3", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/1/3/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/1/3/1", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/2", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/2/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/2/0/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/2/0/1", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/2/1", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/2/1/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/2/1/1", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/2/2", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/2/2/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/2/2/1", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/2/3", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/2/3/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/2/3/1", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/3", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/3/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/3/0/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/3/0/1", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/3/1", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/3/1/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/3/1/1", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/3/2", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/3/2/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/3/2/1", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/3/3", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/3/3/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/hires/3/3/1", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/lowres", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/lowres/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/lowres/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/lowres/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/lowres/0/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/lowres/0/0/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/lowres/0/1", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/lowres/0/1/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/lowres/1", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/lowres/1/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/lowres/1/0/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/lowres/1/1", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/images/lowres/1/1/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/scalefactors", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/scalefactors/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/scalefactors/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/scalefactors/spot_diameter_fullres", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/scalefactors/spot_diameter_fullres/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/scalefactors/spot_diameter_fullres/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/scalefactors/spot_diameter_fullres/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/scalefactors/tissue_hires_scalef", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/scalefactors/tissue_hires_scalef/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/scalefactors/tissue_hires_scalef/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/scalefactors/tissue_hires_scalef/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/scalefactors/tissue_lowres_scalef", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/scalefactors/tissue_lowres_scalef/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/scalefactors/tissue_lowres_scalef/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/scalefactors/tissue_lowres_scalef/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial_neighbors", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial_neighbors/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial_neighbors/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial_neighbors/connectivities_key", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial_neighbors/connectivities_key/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial_neighbors/connectivities_key/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial_neighbors/connectivities_key/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial_neighbors/distances_key", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial_neighbors/distances_key/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial_neighbors/distances_key/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial_neighbors/distances_key/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial_neighbors/params", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial_neighbors/params/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial_neighbors/params/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial_neighbors/params/coord_type", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial_neighbors/params/coord_type/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial_neighbors/params/coord_type/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial_neighbors/params/coord_type/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial_neighbors/params/n_neighbors", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial_neighbors/params/n_neighbors/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial_neighbors/params/n_neighbors/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial_neighbors/params/n_neighbors/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial_neighbors/params/radius", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial_neighbors/params/radius/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial_neighbors/params/radius/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial_neighbors/params/radius/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial_neighbors/params/transform", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial_neighbors/params/transform/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial_neighbors/params/transform/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial_neighbors/params/transform/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/instance_key", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/instance_key/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/instance_key/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/instance_key/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/region", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/region/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/region/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/region/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/region_key", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/region_key/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/region_key/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/region_key/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/table_name", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/table_name/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/table_name/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/table_name/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/_index", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/_index/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/_index/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/_index/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/dispersions", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/dispersions/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/dispersions/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/dispersions/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/dispersions_norm", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/dispersions_norm/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/dispersions_norm/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/dispersions_norm/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/feature_types", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/feature_types/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/feature_types/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/feature_types/categories", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/feature_types/categories/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/feature_types/categories/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/feature_types/categories/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/feature_types/codes", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/feature_types/codes/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/feature_types/codes/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/feature_types/codes/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/gene_ids", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/gene_ids/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/gene_ids/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/gene_ids/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/genome", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/genome/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/genome/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/genome/categories", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/genome/categories/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/genome/categories/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/genome/categories/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/genome/codes", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/genome/codes/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/genome/codes/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/genome/codes/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/hb", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/hb/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/hb/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/hb/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/highly_variable", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/highly_variable/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/highly_variable/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/highly_variable/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/mean_counts", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/mean_counts/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/mean_counts/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/mean_counts/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/means", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/means/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/means/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/means/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/mt", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/mt/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/mt/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/mt/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/n_cells", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/n_cells/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/n_cells/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/n_cells/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/n_cells_by_counts", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/n_cells_by_counts/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/n_cells_by_counts/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/n_cells_by_counts/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/pct_dropout_by_counts", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/pct_dropout_by_counts/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/pct_dropout_by_counts/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/pct_dropout_by_counts/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/ribo", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/ribo/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/ribo/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/ribo/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/total_counts", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/total_counts/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/total_counts/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/total_counts/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/varm", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/varm/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/varm/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/varm/PCs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/varm/PCs/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/varm/PCs/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/varm/PCs/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/varm/PCs/0/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/varm/PCs/0/1", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/varm/PCs/1", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/varm/PCs/1/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/varm/PCs/1/1", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/varp", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/varp/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/varp/.zgroup", + "integration/data/merged.zarr/zmetadata" + ], + [ + "report.qmd:md5,03555321961957d8d645b446350921e0", + "report.yml:md5,f745b1f1839789850479c6be4f689e0b", + "report.qmd:md5,03555321961957d8d645b446350921e0", + "report.yml:md5,4c78e7a9ab49caa73dd63450d27c030d", + "report-integrated.qmd:md5,a669fd7ba5e9658198c220b37bd66818", + "report-integrated.yml:md5,a4d0e2a88b83c3c5035ab9570430991e", + "multiqc_citations.txt:md5,4c806e63a283ec1b7e78cdae3a923d4f" + ], + [ + { + "file": "CytAssist_11mm_FFPE_Human_Glioblastoma_2-raw.h5ad", + "contents": { + "n_obs": 11397, + "n_vars": 19023, + "obs": { + "index": "_index", + "columns": [ + "array_col", + "array_row", + "in_tissue", + "region", + "spot_id" + ] + }, + "var": { + "index": "_index", + "columns": [ + "feature_types", + "gene_ids", + "genome" + ] + }, + "layers": [ + "raw" + ], + "obsm": [ + "spatial" + ], + "varm": [ + + ], + "obsp": [ + + ], + "varp": [ + + ], + "uns": [ + "coordinate_system", + "sample_id", + "spatial", + "spatialdata_attrs", + "table_name" + ] + } + }, + { + "file": "CytAssist_11mm_FFPE_Human_Glioblastoma_2.2-raw.h5ad", + "contents": { + "n_obs": 11397, + "n_vars": 19023, + "obs": { + "index": "_index", + "columns": [ + "array_col", + "array_row", + "in_tissue", + "region", + "spot_id" + ] + }, + "var": { + "index": "_index", + "columns": [ + "feature_types", + "gene_ids", + "genome" + ] + }, + "layers": [ + "raw" + ], + "obsm": [ + "spatial" + ], + "varm": [ + + ], + "obsp": [ + + ], + "varp": [ + + ], + "uns": [ + "coordinate_system", + "sample_id", + "spatial", + "spatialdata_attrs", + "table_name" + ] + } + }, + { + "file": "CytAssist_11mm_FFPE_Human_Glioblastoma_2.2.h5ad", + "contents": { + "n_obs": 834, + "n_vars": 3580, + "obs": { + "index": "_index", + "columns": [ + "array_col", + "array_row", + "clusters", + "in_tissue", + "n_counts", + "n_genes", + "n_genes_by_counts", + "pct_counts_hb", + "pct_counts_in_top_100_genes", + "pct_counts_in_top_200_genes", + "pct_counts_in_top_500_genes", + "pct_counts_in_top_50_genes", + "pct_counts_mt", + "pct_counts_ribo", + "region", + "spot_id", + "total_counts", + "total_counts_hb", + "total_counts_mt", + "total_counts_normalized", + "total_counts_ribo" + ] + }, + "var": { + "index": "_index", + "columns": [ + "dispersions", + "dispersions_norm", + "feature_types", + "gene_ids", + "genome", + "hb", + "highly_variable", + "mean_counts", + "means", + "mt", + "n_cells", + "n_cells_by_counts", + "pct_dropout_by_counts", + "ribo", + "total_counts" + ] + }, + "layers": [ + "raw" + ], + "obsm": [ + "X_pca", + "X_umap", + "spatial" + ], + "varm": [ + "PCs" + ], + "obsp": [ + "connectivities", + "distances", + "spatial_connectivities", + "spatial_distances" + ], + "varp": [ + + ], + "uns": [ + "X_umap", + "clusters", + "clusters_interactions", + "clusters_nhood_enrichment", + "coordinate_system", + "filtering_stats", + "hvg", + "leiden", + "log1p", + "moranI", + "neighbors", + "normalization", + "pca", + "rank_genes_groups", + "sample_id", + "spatial", + "spatial_neighbors", + "spatialdata_attrs", + "table_name" + ] + } + }, + { + "file": "CytAssist_11mm_FFPE_Human_Glioblastoma_2.h5ad", + "contents": { + "n_obs": 834, + "n_vars": 3580, + "obs": { + "index": "_index", + "columns": [ + "array_col", + "array_row", + "clusters", + "in_tissue", + "n_counts", + "n_genes", + "n_genes_by_counts", + "pct_counts_hb", + "pct_counts_in_top_100_genes", + "pct_counts_in_top_200_genes", + "pct_counts_in_top_500_genes", + "pct_counts_in_top_50_genes", + "pct_counts_mt", + "pct_counts_ribo", + "region", + "spot_id", + "total_counts", + "total_counts_hb", + "total_counts_mt", + "total_counts_normalized", + "total_counts_ribo" + ] + }, + "var": { + "index": "_index", + "columns": [ + "dispersions", + "dispersions_norm", + "feature_types", + "gene_ids", + "genome", + "hb", + "highly_variable", + "mean_counts", + "means", + "mt", + "n_cells", + "n_cells_by_counts", + "pct_dropout_by_counts", + "ribo", + "total_counts" + ] + }, + "layers": [ + "raw" + ], + "obsm": [ + "X_pca", + "X_umap", + "spatial" + ], + "varm": [ + "PCs" + ], + "obsp": [ + "connectivities", + "distances", + "spatial_connectivities", + "spatial_distances" + ], + "varp": [ + + ], + "uns": [ + "X_umap", + "clusters", + "clusters_interactions", + "clusters_nhood_enrichment", + "coordinate_system", + "filtering_stats", + "hvg", + "leiden", + "log1p", + "moranI", + "neighbors", + "normalization", + "pca", + "rank_genes_groups", + "sample_id", + "spatial", + "spatial_neighbors", + "spatialdata_attrs", + "table_name" + ] + } + }, + { + "file": "harmony.h5ad", + "contents": { + "n_obs": 1668, + "n_vars": 3580, + "obs": { + "index": "_index", + "columns": [ + "array_col", + "array_row", + "clusters", + "clusters_harmony", + "in_tissue", + "library_id", + "n_counts", + "n_genes", + "n_genes_by_counts", + "pct_counts_hb", + "pct_counts_in_top_100_genes", + "pct_counts_in_top_200_genes", + "pct_counts_in_top_500_genes", + "pct_counts_in_top_50_genes", + "pct_counts_mt", + "pct_counts_ribo", + "region", + "spot_id", + "total_counts", + "total_counts_hb", + "total_counts_mt", + "total_counts_normalized", + "total_counts_ribo" + ] + }, + "var": { + "index": "_index", + "columns": [ + "dispersions", + "dispersions_norm", + "feature_types", + "gene_ids", + "genome", + "hb", + "highly_variable", + "mean_counts", + "means", + "mt", + "n_cells", + "n_cells_by_counts", + "pct_dropout_by_counts", + "ribo", + "total_counts" + ] + }, + "layers": [ + "raw" + ], + "obsm": [ + "X_harmony", + "X_pca", + "X_umap", + "X_umap_harmony", + "spatial" + ], + "varm": [ + + ], + "obsp": [ + "connectivities", + "distances" + ], + "varp": [ + + ], + "uns": [ + "X_umap_harmony", + "clusters_harmony", + "leiden", + "merge", + "neighbors", + "spatial" + ] + } + } + ] ], + "timestamp": "2026-04-05T16:40:07.455504149", "meta": { - "nf-test": "0.9.2", - "nextflow": "25.04.7" - }, - "timestamp": "2026-02-03T08:22:50.421167446" + "nf-test": "0.9.5", + "nextflow": "25.10.4" + } } } \ No newline at end of file diff --git a/tests/test_skip_downstream.nf.test b/tests/test_skip_downstream.nf.test new file mode 100644 index 00000000..4c43f0f3 --- /dev/null +++ b/tests/test_skip_downstream.nf.test @@ -0,0 +1,56 @@ +nextflow_pipeline { + + name "Test skipping of downstream workflow" + script "../main.nf" + tag "pipeline" + profile "test_skip_downstream" + + test("Space Ranger FFPE v2 CytAssist - skip downstream") { + + when { + params { + outdir = "$outputDir" + } + } + + then { + + // Names of all output files and directories (unstable contents) + def stable_name = getAllFilesFromDir( + params.outdir, + relative: true, + includeDir: true, + ignore: ['pipeline_info/*.{html,json,txt}', '**/*.zarr/**'] + ) + + // Names of all SpatialData (.zarr) files and directories (unstable contents) + def stable_name_zarr = getAllFilesFromDir( + params.outdir, + relative: true, + includeDir: true, + include: ['**/*.zarr/**'] + ) + + // Paths of all output files (stable contents) + def stable_path = getAllFilesFromDir( + params.outdir, + ignoreFile: 'tests/.nftignore' + ) + + assertAll( + + { assert workflow.success}, + { assert snapshot( + // Number of successful tasks + workflow.trace.succeeded().size(), + // Pipeline versions.yml file for multiqc from which Nextflow version is removed because we tests pipelines on multiple Nextflow versions + removeNextflowVersion("$outputDir/pipeline_info/nf_core_spatialvi_software_mqc_versions.yml"), + stable_name, + stable_name_zarr, + stable_path + ).match() } + + ) + } + } +} diff --git a/tests/test_skip_downstream.nf.test.snap b/tests/test_skip_downstream.nf.test.snap new file mode 100644 index 00000000..2b5beabf --- /dev/null +++ b/tests/test_skip_downstream.nf.test.snap @@ -0,0 +1,417 @@ +{ + "Space Ranger FFPE v2 CytAssist - skip downstream": { + "content": [ + 7, + { + "FASTQC": { + "fastqc": "0.12.1" + }, + "SDATA_MERGE": { + "python": "3.12.12", + "spatialdata": "0.5.0" + }, + "SDATA_READ_VISIUM": { + "python": "3.12.12", + "spatialdata": "0.5.0", + "spatialdata-io": "0.2.0" + }, + "SPACERANGER_COUNT": { + "spaceranger": "4.0.1" + }, + "SPACERANGER_UNTAR_REFERENCE": { + "untar": 1.34 + }, + "UNTAR_SPACERANGER_INPUT": { + "untar": 1.34 + }, + "Workflow": { + "nf-core/spatialvi": "v1.0dev" + } + }, + [ + "CytAssist_11mm_FFPE_Human_Glioblastoma_2", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/fastqc", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/fastqc/CytAssist_11mm_FFPE_Human_Glioblastoma_2_1_fastqc.html", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/fastqc/CytAssist_11mm_FFPE_Human_Glioblastoma_2_1_fastqc.zip", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/fastqc/CytAssist_11mm_FFPE_Human_Glioblastoma_2_2_fastqc.html", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/fastqc/CytAssist_11mm_FFPE_Human_Glioblastoma_2_2_fastqc.zip", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/fastqc/CytAssist_11mm_FFPE_Human_Glioblastoma_2_3_fastqc.html", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/fastqc/CytAssist_11mm_FFPE_Human_Glioblastoma_2_3_fastqc.zip", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/fastqc/CytAssist_11mm_FFPE_Human_Glioblastoma_2_4_fastqc.html", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/fastqc/CytAssist_11mm_FFPE_Human_Glioblastoma_2_4_fastqc.zip", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/analysis", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/analysis/clustering", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/analysis/clustering/gene_expression_graphclust", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/analysis/clustering/gene_expression_graphclust/clusters.csv", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/analysis/clustering/gene_expression_kmeans_10_clusters", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/analysis/clustering/gene_expression_kmeans_10_clusters/clusters.csv", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/analysis/clustering/gene_expression_kmeans_2_clusters", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/analysis/clustering/gene_expression_kmeans_2_clusters/clusters.csv", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/analysis/clustering/gene_expression_kmeans_3_clusters", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/analysis/clustering/gene_expression_kmeans_3_clusters/clusters.csv", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/analysis/clustering/gene_expression_kmeans_4_clusters", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/analysis/clustering/gene_expression_kmeans_4_clusters/clusters.csv", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/analysis/clustering/gene_expression_kmeans_5_clusters", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/analysis/clustering/gene_expression_kmeans_5_clusters/clusters.csv", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/analysis/clustering/gene_expression_kmeans_6_clusters", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/analysis/clustering/gene_expression_kmeans_6_clusters/clusters.csv", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/analysis/clustering/gene_expression_kmeans_7_clusters", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/analysis/clustering/gene_expression_kmeans_7_clusters/clusters.csv", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/analysis/clustering/gene_expression_kmeans_8_clusters", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/analysis/clustering/gene_expression_kmeans_8_clusters/clusters.csv", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/analysis/clustering/gene_expression_kmeans_9_clusters", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/analysis/clustering/gene_expression_kmeans_9_clusters/clusters.csv", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/analysis/diffexp", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/analysis/diffexp/gene_expression_graphclust", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/analysis/diffexp/gene_expression_graphclust/differential_expression.csv", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/analysis/diffexp/gene_expression_kmeans_10_clusters", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/analysis/diffexp/gene_expression_kmeans_10_clusters/differential_expression.csv", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/analysis/diffexp/gene_expression_kmeans_2_clusters", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/analysis/diffexp/gene_expression_kmeans_2_clusters/differential_expression.csv", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/analysis/diffexp/gene_expression_kmeans_3_clusters", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/analysis/diffexp/gene_expression_kmeans_3_clusters/differential_expression.csv", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/analysis/diffexp/gene_expression_kmeans_4_clusters", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/analysis/diffexp/gene_expression_kmeans_4_clusters/differential_expression.csv", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/analysis/diffexp/gene_expression_kmeans_5_clusters", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/analysis/diffexp/gene_expression_kmeans_5_clusters/differential_expression.csv", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/analysis/diffexp/gene_expression_kmeans_6_clusters", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/analysis/diffexp/gene_expression_kmeans_6_clusters/differential_expression.csv", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/analysis/diffexp/gene_expression_kmeans_7_clusters", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/analysis/diffexp/gene_expression_kmeans_7_clusters/differential_expression.csv", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/analysis/diffexp/gene_expression_kmeans_8_clusters", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/analysis/diffexp/gene_expression_kmeans_8_clusters/differential_expression.csv", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/analysis/diffexp/gene_expression_kmeans_9_clusters", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/analysis/diffexp/gene_expression_kmeans_9_clusters/differential_expression.csv", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/analysis/pca", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/analysis/pca/gene_expression_10_components", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/analysis/pca/gene_expression_10_components/components.csv", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/analysis/pca/gene_expression_10_components/dispersion.csv", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/analysis/pca/gene_expression_10_components/features_selected.csv", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/analysis/pca/gene_expression_10_components/projection.csv", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/analysis/pca/gene_expression_10_components/variance.csv", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/analysis/tsne", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/analysis/tsne/gene_expression_2_components", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/analysis/tsne/gene_expression_2_components/projection.csv", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/analysis/umap", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/analysis/umap/gene_expression_2_components", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/analysis/umap/gene_expression_2_components/projection.csv", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/cloupe.cloupe", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/filtered_feature_bc_matrix", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/filtered_feature_bc_matrix.h5", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/filtered_feature_bc_matrix/barcodes.tsv.gz", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/filtered_feature_bc_matrix/features.tsv.gz", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/filtered_feature_bc_matrix/matrix.mtx.gz", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/metrics_summary.csv", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/molecule_info.h5", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/probe_set.csv", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/raw_feature_bc_matrix", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/raw_feature_bc_matrix.h5", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/raw_feature_bc_matrix/barcodes.tsv.gz", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/raw_feature_bc_matrix/features.tsv.gz", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/raw_feature_bc_matrix/matrix.mtx.gz", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/raw_probe_bc_matrix.h5", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/spatial", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/spatial/aligned_fiducials.jpg", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/spatial/cytassist_image.tiff", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/spatial/detected_tissue_image.jpg", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/spatial/scalefactors_json.json", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/spatial/spatial_enrichment.csv", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/spatial/tissue_hires_image.png", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/spatial/tissue_lowres_image.png", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/spatial/tissue_positions.csv", + "CytAssist_11mm_FFPE_Human_Glioblastoma_2/spaceranger/outs/web_summary.html", + "integration", + "integration/data", + "integration/data/merged.zarr", + "multiqc", + "multiqc/multiqc_data", + "multiqc/multiqc_data/BETA-multiqc.parquet", + "multiqc/multiqc_data/fastqc-status-check-heatmap.txt", + "multiqc/multiqc_data/fastqc_adapter_content_plot.txt", + "multiqc/multiqc_data/fastqc_overrepresented_sequences_plot.txt", + "multiqc/multiqc_data/fastqc_per_base_n_content_plot.txt", + "multiqc/multiqc_data/fastqc_per_base_sequence_quality_plot.txt", + "multiqc/multiqc_data/fastqc_per_sequence_gc_content_plot_Counts.txt", + "multiqc/multiqc_data/fastqc_per_sequence_gc_content_plot_Percentages.txt", + "multiqc/multiqc_data/fastqc_per_sequence_quality_scores_plot.txt", + "multiqc/multiqc_data/fastqc_sequence_counts_plot.txt", + "multiqc/multiqc_data/fastqc_sequence_duplication_levels_plot.txt", + "multiqc/multiqc_data/fastqc_top_overrepresented_sequences_table.txt", + "multiqc/multiqc_data/mqc_spaceranger_count_genesXspot.txt", + "multiqc/multiqc_data/mqc_spaceranger_count_genomic_dna.txt", + "multiqc/multiqc_data/mqc_spaceranger_count_saturation.txt", + "multiqc/multiqc_data/multiqc.log", + "multiqc/multiqc_data/multiqc_citations.txt", + "multiqc/multiqc_data/multiqc_data.json", + "multiqc/multiqc_data/multiqc_fastqc.txt", + "multiqc/multiqc_data/multiqc_general_stats.txt", + "multiqc/multiqc_data/multiqc_software_versions.txt", + "multiqc/multiqc_data/multiqc_sources.txt", + "multiqc/multiqc_data/multiqc_spaceranger_count.txt", + "multiqc/multiqc_data/spaceranger-count-stats.txt", + "multiqc/multiqc_plots", + "multiqc/multiqc_plots/pdf", + "multiqc/multiqc_plots/pdf/fastqc-status-check-heatmap.pdf", + "multiqc/multiqc_plots/pdf/fastqc_adapter_content_plot.pdf", + "multiqc/multiqc_plots/pdf/fastqc_overrepresented_sequences_plot.pdf", + "multiqc/multiqc_plots/pdf/fastqc_per_base_n_content_plot.pdf", + "multiqc/multiqc_plots/pdf/fastqc_per_base_sequence_quality_plot.pdf", + "multiqc/multiqc_plots/pdf/fastqc_per_sequence_gc_content_plot_Counts.pdf", + "multiqc/multiqc_plots/pdf/fastqc_per_sequence_gc_content_plot_Percentages.pdf", + "multiqc/multiqc_plots/pdf/fastqc_per_sequence_quality_scores_plot.pdf", + "multiqc/multiqc_plots/pdf/fastqc_sequence_counts_plot-cnt.pdf", + "multiqc/multiqc_plots/pdf/fastqc_sequence_counts_plot-pct.pdf", + "multiqc/multiqc_plots/pdf/fastqc_sequence_duplication_levels_plot.pdf", + "multiqc/multiqc_plots/pdf/fastqc_top_overrepresented_sequences_table.pdf", + "multiqc/multiqc_plots/pdf/mqc_spaceranger_count_genesXspot.pdf", + "multiqc/multiqc_plots/pdf/mqc_spaceranger_count_genomic_dna.pdf", + "multiqc/multiqc_plots/pdf/mqc_spaceranger_count_saturation.pdf", + "multiqc/multiqc_plots/pdf/spaceranger-count-stats.pdf", + "multiqc/multiqc_plots/png", + "multiqc/multiqc_plots/png/fastqc-status-check-heatmap.png", + "multiqc/multiqc_plots/png/fastqc_adapter_content_plot.png", + "multiqc/multiqc_plots/png/fastqc_overrepresented_sequences_plot.png", + "multiqc/multiqc_plots/png/fastqc_per_base_n_content_plot.png", + "multiqc/multiqc_plots/png/fastqc_per_base_sequence_quality_plot.png", + "multiqc/multiqc_plots/png/fastqc_per_sequence_gc_content_plot_Counts.png", + "multiqc/multiqc_plots/png/fastqc_per_sequence_gc_content_plot_Percentages.png", + "multiqc/multiqc_plots/png/fastqc_per_sequence_quality_scores_plot.png", + "multiqc/multiqc_plots/png/fastqc_sequence_counts_plot-cnt.png", + "multiqc/multiqc_plots/png/fastqc_sequence_counts_plot-pct.png", + "multiqc/multiqc_plots/png/fastqc_sequence_duplication_levels_plot.png", + "multiqc/multiqc_plots/png/fastqc_top_overrepresented_sequences_table.png", + "multiqc/multiqc_plots/png/mqc_spaceranger_count_genesXspot.png", + "multiqc/multiqc_plots/png/mqc_spaceranger_count_genomic_dna.png", + "multiqc/multiqc_plots/png/mqc_spaceranger_count_saturation.png", + "multiqc/multiqc_plots/png/spaceranger-count-stats.png", + "multiqc/multiqc_plots/svg", + "multiqc/multiqc_plots/svg/fastqc-status-check-heatmap.svg", + "multiqc/multiqc_plots/svg/fastqc_adapter_content_plot.svg", + "multiqc/multiqc_plots/svg/fastqc_overrepresented_sequences_plot.svg", + "multiqc/multiqc_plots/svg/fastqc_per_base_n_content_plot.svg", + "multiqc/multiqc_plots/svg/fastqc_per_base_sequence_quality_plot.svg", + "multiqc/multiqc_plots/svg/fastqc_per_sequence_gc_content_plot_Counts.svg", + "multiqc/multiqc_plots/svg/fastqc_per_sequence_gc_content_plot_Percentages.svg", + "multiqc/multiqc_plots/svg/fastqc_per_sequence_quality_scores_plot.svg", + "multiqc/multiqc_plots/svg/fastqc_sequence_counts_plot-cnt.svg", + "multiqc/multiqc_plots/svg/fastqc_sequence_counts_plot-pct.svg", + "multiqc/multiqc_plots/svg/fastqc_sequence_duplication_levels_plot.svg", + "multiqc/multiqc_plots/svg/fastqc_top_overrepresented_sequences_table.svg", + "multiqc/multiqc_plots/svg/mqc_spaceranger_count_genesXspot.svg", + "multiqc/multiqc_plots/svg/mqc_spaceranger_count_genomic_dna.svg", + "multiqc/multiqc_plots/svg/mqc_spaceranger_count_saturation.svg", + "multiqc/multiqc_plots/svg/spaceranger-count-stats.svg", + "multiqc/multiqc_report.html", + "pipeline_info", + "pipeline_info/nf_core_spatialvi_software_mqc_versions.yml" + ], + [ + "integration/data/merged.zarr/.zattrs", + "integration/data/merged.zarr/.zgroup", + "integration/data/merged.zarr/images", + "integration/data/merged.zarr/images/.zgroup", + "integration/data/merged.zarr/images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image", + "integration/data/merged.zarr/images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/.zattrs", + "integration/data/merged.zarr/images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/.zgroup", + "integration/data/merged.zarr/images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/0", + "integration/data/merged.zarr/images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/0/.zarray", + "integration/data/merged.zarr/images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/0/0", + "integration/data/merged.zarr/images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/0/0/0", + "integration/data/merged.zarr/images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_hires_image/0/0/0/0", + "integration/data/merged.zarr/images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_lowres_image", + "integration/data/merged.zarr/images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_lowres_image/.zattrs", + "integration/data/merged.zarr/images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_lowres_image/.zgroup", + "integration/data/merged.zarr/images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_lowres_image/0", + "integration/data/merged.zarr/images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_lowres_image/0/.zarray", + "integration/data/merged.zarr/images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_lowres_image/0/0", + "integration/data/merged.zarr/images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_lowres_image/0/0/0", + "integration/data/merged.zarr/images/CytAssist_11mm_FFPE_Human_Glioblastoma_2_lowres_image/0/0/0/0", + "integration/data/merged.zarr/shapes", + "integration/data/merged.zarr/shapes/.zgroup", + "integration/data/merged.zarr/shapes/CytAssist_11mm_FFPE_Human_Glioblastoma_2", + "integration/data/merged.zarr/shapes/CytAssist_11mm_FFPE_Human_Glioblastoma_2/.zattrs", + "integration/data/merged.zarr/shapes/CytAssist_11mm_FFPE_Human_Glioblastoma_2/.zgroup", + "integration/data/merged.zarr/shapes/CytAssist_11mm_FFPE_Human_Glioblastoma_2/shapes.parquet", + "integration/data/merged.zarr/tables", + "integration/data/merged.zarr/tables/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/X", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/X/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/X/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/X/data", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/X/data/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/X/data/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/X/indices", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/X/indices/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/X/indices/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/X/indptr", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/X/indptr/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/X/indptr/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/layers", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/layers/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/layers/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/_index", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/_index/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/_index/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/_index/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/array_col", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/array_col/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/array_col/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/array_col/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/array_row", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/array_row/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/array_row/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/array_row/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/in_tissue", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/in_tissue/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/in_tissue/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/in_tissue/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/region", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/region/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/region/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/region/categories", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/region/categories/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/region/categories/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/region/categories/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/region/codes", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/region/codes/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/region/codes/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/region/codes/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/spot_id", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/spot_id/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/spot_id/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obs/spot_id/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/spatial", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/spatial/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/spatial/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/spatial/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsm/spatial/0/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/obsp/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/raw", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/raw/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/raw/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/raw/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2/metadata", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2/metadata/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2/metadata/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2/metadata/chemistry_description", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2/metadata/chemistry_description/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2/metadata/chemistry_description/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2/metadata/chemistry_description/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2/metadata/software_version", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2/metadata/software_version/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2/metadata/software_version/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatial/CytAssist_11mm_FFPE_Human_Glioblastoma_2/metadata/software_version/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/instance_key", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/instance_key/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/instance_key/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/instance_key/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/region", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/region/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/region/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/region/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/region_key", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/region_key/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/region_key/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/uns/spatialdata_attrs/region_key/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/_index", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/_index/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/_index/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/_index/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/feature_types", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/feature_types/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/feature_types/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/feature_types/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/gene_ids", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/gene_ids/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/gene_ids/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/gene_ids/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/genome", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/genome/.zarray", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/genome/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/var/genome/0", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/varm", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/varm/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/varm/.zgroup", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/varp", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/varp/.zattrs", + "integration/data/merged.zarr/tables/CytAssist_11mm_FFPE_Human_Glioblastoma_2_table/varp/.zgroup", + "integration/data/merged.zarr/zmetadata" + ], + [ + "clusters.csv:md5,a53b18e9472bb24749d69145d0d3ed9c", + "clusters.csv:md5,e61073c0502c14030d7a487f7ef36a20", + "clusters.csv:md5,418fd1185ecf9aca9749c1d189373425", + "clusters.csv:md5,2bf98bcf928bf46160b7cbd9b3b03828", + "clusters.csv:md5,35d784ebe24d54a5bb56f81c8abac865", + "clusters.csv:md5,560eb20a41464240e15ff4078a1e782d", + "clusters.csv:md5,58e5ff2940f4e0fe286d3d701758be24", + "clusters.csv:md5,18d386fc7ca6261caf880294636818f8", + "clusters.csv:md5,92600993a19f8f3c034e4f4164aca381", + "clusters.csv:md5,e98e707778bdbaff7090ecc8101060cb", + "differential_expression.csv:md5,6857fa14bf4ab52856b870dd05e64a51", + "differential_expression.csv:md5,cda63135ad11b1bc0e7224a0118b70e4", + "differential_expression.csv:md5,f98bc46a71b52d886b9304a12c53d47e", + "differential_expression.csv:md5,60cf00aa6264d3b7c67a9e027f37295d", + "differential_expression.csv:md5,79617a76942962a22cd12469ff4f2bc3", + "differential_expression.csv:md5,6fa5c9755fae7c336a4ace3159242275", + "differential_expression.csv:md5,67d2276f83e246e07f0435aec8bc50b2", + "differential_expression.csv:md5,391ef3085d8c49a6dc4da067f29d0d58", + "differential_expression.csv:md5,9230832b1f8bd4ffd6eb74ca585bf22c", + "differential_expression.csv:md5,7d8a706cc3d6f8875a829a5f6a3ec4ca", + "dispersion.csv:md5,a5e9a31658bd04b6308c039eac9e50f2", + "features_selected.csv:md5,ae4779f5cc814b3f1d1534033518b626", + "filtered_feature_bc_matrix.h5:md5,271669e4bf826da2ddff743a6117119b", + "matrix.mtx.gz:md5,41f4c8d4b71cef1ff921a177f8afe9ad", + "metrics_summary.csv:md5,5af6a326178857d703945c076717e290", + "probe_set.csv:md5,5bfb8f12319be1b2b6c14142537c3804", + "raw_feature_bc_matrix.h5:md5,18014d7cf9d61813f63330ca7c046a87", + "matrix.mtx.gz:md5,bf393bad88f9f9cab3b49da8267f7126", + "raw_probe_bc_matrix.h5:md5,538b4db4505bed53de70c9b837fced5c", + "aligned_fiducials.jpg:md5,b2adbbb1324a09025332fd1e76d391d9", + "cytassist_image.tiff:md5,0fb04a55e5658f4d158d986a334b034d", + "detected_tissue_image.jpg:md5,10f944385c91d134528bcabc71bb0686", + "spatial_enrichment.csv:md5,0cedfe65b4a8c3dc7c8cc15862f01e07", + "tissue_positions.csv:md5,930aeb2b790032337d91dd27cc70f135", + "mqc_spaceranger_count_genesXspot.txt:md5,e7f109f701cb692dd8dc1cd45498e08f", + "mqc_spaceranger_count_genomic_dna.txt:md5,5148a48bf99ec61b648188caf0558e26", + "mqc_spaceranger_count_saturation.txt:md5,8a81c8b9831588776559c3e3a3d42aef", + "multiqc_citations.txt:md5,4c806e63a283ec1b7e78cdae3a923d4f", + "multiqc_spaceranger_count.txt:md5,94d6308c11039ce04818426b49f27b22", + "spaceranger-count-stats.txt:md5,e47ed2e4e151aef489950b02d0765e54" + ] + ], + "timestamp": "2026-03-30T14:02:06.186942135", + "meta": { + "nf-test": "0.9.5", + "nextflow": "25.10.4" + } + } +} \ No newline at end of file diff --git a/tests/test_spaceranger_ffpe_hd.nf.test b/tests/test_spaceranger_ffpe_hd.nf.test index cef27108..8a37c7be 100644 --- a/tests/test_spaceranger_ffpe_hd.nf.test +++ b/tests/test_spaceranger_ffpe_hd.nf.test @@ -12,35 +12,55 @@ nextflow_pipeline { } then { - assertAll( - // Workflow - { assert workflow.success }, - { assert snapshot(removeNextflowVersion("$outputDir/pipeline_info/nf_core_spatialvi_software_mqc_versions.yml")).match() }, + // Names of all output files and directories (unstable contents) + def stable_name = getAllFilesFromDir( + params.outdir, + relative: true, + includeDir: true, + ignore: ['pipeline_info/*.{html,json,txt}', '**/*.zarr/**'] + ) + + // Names of all SpatialData (.zarr) files and directories (unstable contents) + def stable_name_zarr = getAllFilesFromDir( + params.outdir, + relative: true, + includeDir: true, + include: ['**/*.zarr/**'] + ) - // Data - { assert file("$outputDir/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/data/adata_processed.h5ad").exists() }, - { assert file("$outputDir/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/data/sdata_processed.zarr").exists() }, + // Paths of all output files (stable contents) + def stable_path = getAllFilesFromDir( + params.outdir, + ignoreFile: 'tests/.nftignore' + ) - // Reports - { assert file("$outputDir/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/reports/quality_controls.html").text.contains("final results of all the filtering") }, - { assert file("$outputDir/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/reports/clustering.html").text.contains("spatial distribution of clusters") }, - { assert file("$outputDir/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/reports/spatially_variable_genes.html").text.contains("Spatial transcriptomics data can give insight") }, + // JSON-formatted AnnData information (unstable contents) + def adata_files = getAllFilesFromDir( + params.outdir, + include: ['**/*.h5ad'] + ).sort { it.name } + .collect { file -> + [ + file: file.name, + contents: anndata(file.toPath()).yaml + ] + } - // Spatially variable genes - { assert file("$outputDir/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/data/spatially_variable_genes.csv").exists() }, + assertAll( - // Space Ranger - { assert file("$outputDir/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/web_summary.html").exists() }, + { assert workflow.success}, { assert snapshot( - path("$outputDir/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_002um/raw_feature_bc_matrix.h5"), - path("$outputDir/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_002um/filtered_feature_bc_matrix.h5"), - )}, - { assert file("$outputDir/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_002um/raw_feature_bc_matrix.h5").exists() }, - { assert file("$outputDir/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_002um/spatial/tissue_positions.parquet").exists() }, - - // MultiQC - { assert file("$outputDir/multiqc/multiqc_report.html").text.contains("Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2")} + // Number of successful tasks + workflow.trace.succeeded().size(), + // Pipeline versions.yml file for multiqc from which Nextflow version is removed because we tests pipelines on multiple Nextflow versions + removeNextflowVersion("$outputDir/pipeline_info/nf_core_spatialvi_software_mqc_versions.yml"), + stable_name, + stable_name_zarr, + stable_path, + adata_files + ).match() } + ) } } diff --git a/tests/test_spaceranger_ffpe_hd.nf.test.snap b/tests/test_spaceranger_ffpe_hd.nf.test.snap index 4ad4cbde..08513fe6 100644 --- a/tests/test_spaceranger_ffpe_hd.nf.test.snap +++ b/tests/test_spaceranger_ffpe_hd.nf.test.snap @@ -1,20 +1,104 @@ { "Space Ranger FFPE HD": { "content": [ + 31, { - "CLUSTERING": { - "papermill": "2.6.0", - "quarto": "1.8.25" + "ADATA_MERGE": { + "anndata": "0.12.4", + "python": "3.12.12" }, "FASTQC": { "fastqc": "0.12.1" }, - "QUALITY_CONTROLS": { + "REPORT": { "papermill": "2.6.0", "quarto": "1.8.25" }, - "READ_DATA": { - "read_data": "0.2.0" + "REPORT_INTEGRATED": { + "papermill": "2.6.0", + "quarto": "1.8.25" + }, + "SCANPY_CALCULATE_QC_METRICS": { + "anndata": "0.12.4", + "python": "3.12.12", + "scanpy": "1.11.5" + }, + "SCANPY_FILTER": { + "anndata": "0.12.4", + "python": "3.12.12", + "scanpy": "1.11.5" + }, + "SCANPY_HARMONY": { + "anndata": "0.12.4", + "harmonypy": "0.0.10", + "python": "3.12.12", + "scanpy": "1.11.5" + }, + "SCANPY_HIGHLY_VARIABLE_GENES": { + "anndata": "0.12.4", + "python": "3.12.12", + "scanpy": "1.11.5" + }, + "SCANPY_LEIDEN": { + "anndata": "0.12.4", + "leidenalg": "0.10.2", + "python": "3.12.12", + "scanpy": "1.11.5" + }, + "SCANPY_LOG1P": { + "anndata": "0.12.4", + "python": "3.12.12", + "scanpy": "1.11.5" + }, + "SCANPY_NEIGHBORS": { + "anndata": "0.12.4", + "python": "3.12.12", + "scanpy": "1.11.5" + }, + "SCANPY_NORMALIZE_TOTAL": { + "anndata": "0.12.4", + "python": "3.12.12", + "scanpy": "1.11.5" + }, + "SCANPY_PCA": { + "anndata": "0.12.4", + "python": "3.12.12", + "scanpy": "1.11.5" + }, + "SCANPY_RANK_GENES_GROUPS": { + "anndata": "0.12.4", + "python": "3.12.12", + "scanpy": "1.11.5" + }, + "SCANPY_UMAP": { + "anndata": "0.12.4", + "python": "3.12.12", + "scanpy": "1.11.5" + }, + "SDATA_MERGE": { + "python": "3.12.12", + "spatialdata": "0.5.0" + }, + "SDATA_READ_VISIUM": { + "python": "3.12.12", + "spatialdata": "0.5.0", + "spatialdata-io": "0.2.0" + }, + "SDATA_TO_LEGACY_ANNDATA": { + "anndata": "0.12.4", + "python": "3.12.12", + "spatialdata": "0.5.0", + "spatialdata-io": "0.2.0" + }, + "SDATA_UPDATE_TABLE": { + "anndata": "0.12.4", + "python": "3.12.12", + "spatialdata": "0.5.0" + }, + "SDATA_UPDATE_TABLE_INTEGRATION": { + "anndata": "0.12.4", + "python": "3.12.12", + "spatialdata": "0.5.0" }, "SPACERANGER_COUNT": { "spaceranger": "4.0.1" @@ -22,9 +106,25 @@ "SPACERANGER_UNTAR_REFERENCE": { "untar": 1.34 }, - "SPATIALLY_VARIABLE_GENES": { - "papermill": "2.6.0", - "quarto": "1.8.25" + "SQUIDPY_INTERACTION_MATRIX": { + "anndata": "0.12.4", + "python": "3.12.12", + "squidpy": "1.6.5" + }, + "SQUIDPY_NHOOD_ENRICHMENT": { + "anndata": "0.12.4", + "python": "3.12.12", + "squidpy": "1.6.5" + }, + "SQUIDPY_SPATIAL_AUTOCORR": { + "anndata": "0.12.4", + "python": "3.12.12", + "squidpy": "1.6.5" + }, + "SQUIDPY_SPATIAL_NEIGHBORS": { + "anndata": "0.12.4", + "python": "3.12.12", + "squidpy": "1.6.5" }, "UNTAR_SPACERANGER_INPUT": { "untar": 1.34 @@ -32,12 +132,2414 @@ "Workflow": { "nf-core/spatialvi": "v1.0dev" } - } + }, + [ + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/data", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/data/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2-raw.h5ad", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/data/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2.h5ad", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/data/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_svg.csv", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/fastqc", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/fastqc/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_1_fastqc.html", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/fastqc/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_1_fastqc.zip", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/fastqc/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_2_fastqc.html", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/fastqc/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_2_fastqc.zip", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/fastqc/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_3_fastqc.html", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/fastqc/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_3_fastqc.zip", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/fastqc/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_4_fastqc.html", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/fastqc/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_4_fastqc.zip", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/plots", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/plots/cluster_sizes.png", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/plots/clusters-spatial.png", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/plots/deg-dotplot.png", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/plots/deg-heatmap.png", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/plots/highly-variable-genes.png", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/plots/interaction-matrix.png", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/plots/neighborhood-enrichment.png", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/plots/pca.png", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/plots/qc-distribution-n_genes_by_counts.png", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/plots/qc-distribution-pct_counts_hb.png", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/plots/qc-distribution-pct_counts_mt.png", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/plots/qc-distribution-pct_counts_ribo.png", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/plots/qc-distribution-total_counts.png", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/plots/qc-spatial-n_genes_by_counts.png", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/plots/qc-spatial-pct_counts_hb.png", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/plots/qc-spatial-pct_counts_mt.png", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/plots/qc-spatial-pct_counts_ribo.png", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/plots/qc-spatial-total_counts.png", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/plots/spatial-ENSG00000101335.png", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/plots/spatial-ENSG00000118785.png", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/plots/spatial-ENSG00000132465.png", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/plots/spatial-ENSG00000133392.png", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/plots/spatial-ENSG00000175084.png", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/plots/spatial-ENSG00000211675.png", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/plots/spatial-ENSG00000211895.png", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/plots/spatial-ENSG00000211896.png", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/plots/spatial-ENSG00000211899.png", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/plots/umap-clusters.png", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/plots/umap-n_genes_by_counts.png", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/plots/umap-pct_counts_hb.png", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/plots/umap-pct_counts_mt.png", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/plots/umap-pct_counts_ribo.png", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/plots/umap-total_counts.png", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/reports", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/reports/_extensions", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/reports/_extensions/nf-core", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/reports/_extensions/nf-core/_extension.yml", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/reports/_extensions/nf-core/nf-core-spatialvi_logo_light.png", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/reports/_extensions/nf-core/nf-core.scss", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/reports/_extensions/nf-core/nf-core.theme", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/reports/_extensions/nf-core/toc.html", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/reports/report-Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2.html", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/reports/report.qmd", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/reports/report.yml", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/barcode_mappings.parquet", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_002um", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_002um/filtered_feature_bc_matrix", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_002um/filtered_feature_bc_matrix.h5", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_002um/filtered_feature_bc_matrix/barcodes.tsv.gz", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_002um/filtered_feature_bc_matrix/features.tsv.gz", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_002um/filtered_feature_bc_matrix/matrix.mtx.gz", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_002um/raw_feature_bc_matrix", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_002um/raw_feature_bc_matrix.h5", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_002um/raw_feature_bc_matrix/barcodes.tsv.gz", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_002um/raw_feature_bc_matrix/features.tsv.gz", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_002um/raw_feature_bc_matrix/matrix.mtx.gz", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_002um/raw_probe_bc_matrix.h5", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_002um/spatial", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_002um/spatial/aligned_fiducials.jpg", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_002um/spatial/aligned_tissue_image.jpg", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_002um/spatial/cytassist_image.tiff", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_002um/spatial/detected_tissue_image.jpg", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_002um/spatial/scalefactors_json.json", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_002um/spatial/tissue_hires_image.png", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_002um/spatial/tissue_lowres_image.png", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_002um/spatial/tissue_positions.parquet", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_008um", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_008um/analysis", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_008um/analysis/clustering", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_008um/analysis/clustering/gene_expression_graphclust", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_008um/analysis/clustering/gene_expression_graphclust/clusters.csv", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_008um/analysis/clustering/gene_expression_kmeans_10_clusters", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_008um/analysis/clustering/gene_expression_kmeans_10_clusters/clusters.csv", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_008um/analysis/clustering/gene_expression_kmeans_2_clusters", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_008um/analysis/clustering/gene_expression_kmeans_2_clusters/clusters.csv", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_008um/analysis/clustering/gene_expression_kmeans_3_clusters", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_008um/analysis/clustering/gene_expression_kmeans_3_clusters/clusters.csv", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_008um/analysis/clustering/gene_expression_kmeans_4_clusters", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_008um/analysis/clustering/gene_expression_kmeans_4_clusters/clusters.csv", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_008um/analysis/clustering/gene_expression_kmeans_5_clusters", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_008um/analysis/clustering/gene_expression_kmeans_5_clusters/clusters.csv", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_008um/analysis/clustering/gene_expression_kmeans_6_clusters", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_008um/analysis/clustering/gene_expression_kmeans_6_clusters/clusters.csv", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_008um/analysis/clustering/gene_expression_kmeans_7_clusters", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_008um/analysis/clustering/gene_expression_kmeans_7_clusters/clusters.csv", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_008um/analysis/clustering/gene_expression_kmeans_8_clusters", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_008um/analysis/clustering/gene_expression_kmeans_8_clusters/clusters.csv", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_008um/analysis/clustering/gene_expression_kmeans_9_clusters", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_008um/analysis/clustering/gene_expression_kmeans_9_clusters/clusters.csv", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_008um/analysis/diffexp", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_008um/analysis/diffexp/gene_expression_graphclust", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_008um/analysis/diffexp/gene_expression_graphclust/differential_expression.csv", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_008um/analysis/diffexp/gene_expression_kmeans_10_clusters", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_008um/analysis/diffexp/gene_expression_kmeans_10_clusters/differential_expression.csv", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_008um/analysis/diffexp/gene_expression_kmeans_2_clusters", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_008um/analysis/diffexp/gene_expression_kmeans_2_clusters/differential_expression.csv", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_008um/analysis/diffexp/gene_expression_kmeans_3_clusters", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_008um/analysis/diffexp/gene_expression_kmeans_3_clusters/differential_expression.csv", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_008um/analysis/diffexp/gene_expression_kmeans_4_clusters", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_008um/analysis/diffexp/gene_expression_kmeans_4_clusters/differential_expression.csv", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_008um/analysis/diffexp/gene_expression_kmeans_5_clusters", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_008um/analysis/diffexp/gene_expression_kmeans_5_clusters/differential_expression.csv", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_008um/analysis/diffexp/gene_expression_kmeans_6_clusters", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_008um/analysis/diffexp/gene_expression_kmeans_6_clusters/differential_expression.csv", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_008um/analysis/diffexp/gene_expression_kmeans_7_clusters", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_008um/analysis/diffexp/gene_expression_kmeans_7_clusters/differential_expression.csv", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_008um/analysis/diffexp/gene_expression_kmeans_8_clusters", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_008um/analysis/diffexp/gene_expression_kmeans_8_clusters/differential_expression.csv", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_008um/analysis/diffexp/gene_expression_kmeans_9_clusters", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_008um/analysis/diffexp/gene_expression_kmeans_9_clusters/differential_expression.csv", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_008um/analysis/pca", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_008um/analysis/pca/gene_expression_10_components", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_008um/analysis/pca/gene_expression_10_components/components.csv", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_008um/analysis/pca/gene_expression_10_components/dispersion.csv", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_008um/analysis/pca/gene_expression_10_components/features_selected.csv", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_008um/analysis/pca/gene_expression_10_components/projection.csv", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_008um/analysis/pca/gene_expression_10_components/variance.csv", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_008um/analysis/umap", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_008um/analysis/umap/gene_expression_2_components", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_008um/analysis/umap/gene_expression_2_components/projection.csv", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_008um/cloupe.cloupe", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_008um/filtered_feature_bc_matrix", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_008um/filtered_feature_bc_matrix.h5", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_008um/filtered_feature_bc_matrix/barcodes.tsv.gz", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_008um/filtered_feature_bc_matrix/features.tsv.gz", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_008um/filtered_feature_bc_matrix/matrix.mtx.gz", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_008um/raw_feature_bc_matrix", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_008um/raw_feature_bc_matrix.h5", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_008um/raw_feature_bc_matrix/barcodes.tsv.gz", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_008um/raw_feature_bc_matrix/features.tsv.gz", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_008um/raw_feature_bc_matrix/matrix.mtx.gz", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_008um/spatial", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_008um/spatial/aligned_fiducials.jpg", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_008um/spatial/aligned_tissue_image.jpg", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_008um/spatial/cytassist_image.tiff", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_008um/spatial/detected_tissue_image.jpg", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_008um/spatial/scalefactors_json.json", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_008um/spatial/tissue_hires_image.png", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_008um/spatial/tissue_lowres_image.png", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_008um/spatial/tissue_positions.parquet", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_016um", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_016um/analysis", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_016um/analysis/clustering", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_016um/analysis/clustering/gene_expression_graphclust", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_016um/analysis/clustering/gene_expression_graphclust/clusters.csv", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_016um/analysis/clustering/gene_expression_kmeans_10_clusters", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_016um/analysis/clustering/gene_expression_kmeans_10_clusters/clusters.csv", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_016um/analysis/clustering/gene_expression_kmeans_2_clusters", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_016um/analysis/clustering/gene_expression_kmeans_2_clusters/clusters.csv", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_016um/analysis/clustering/gene_expression_kmeans_3_clusters", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_016um/analysis/clustering/gene_expression_kmeans_3_clusters/clusters.csv", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_016um/analysis/clustering/gene_expression_kmeans_4_clusters", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_016um/analysis/clustering/gene_expression_kmeans_4_clusters/clusters.csv", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_016um/analysis/clustering/gene_expression_kmeans_5_clusters", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_016um/analysis/clustering/gene_expression_kmeans_5_clusters/clusters.csv", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_016um/analysis/clustering/gene_expression_kmeans_6_clusters", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_016um/analysis/clustering/gene_expression_kmeans_6_clusters/clusters.csv", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_016um/analysis/clustering/gene_expression_kmeans_7_clusters", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_016um/analysis/clustering/gene_expression_kmeans_7_clusters/clusters.csv", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_016um/analysis/clustering/gene_expression_kmeans_8_clusters", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_016um/analysis/clustering/gene_expression_kmeans_8_clusters/clusters.csv", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_016um/analysis/clustering/gene_expression_kmeans_9_clusters", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_016um/analysis/clustering/gene_expression_kmeans_9_clusters/clusters.csv", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_016um/analysis/diffexp", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_016um/analysis/diffexp/gene_expression_graphclust", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_016um/analysis/diffexp/gene_expression_graphclust/differential_expression.csv", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_016um/analysis/diffexp/gene_expression_kmeans_10_clusters", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_016um/analysis/diffexp/gene_expression_kmeans_10_clusters/differential_expression.csv", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_016um/analysis/diffexp/gene_expression_kmeans_2_clusters", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_016um/analysis/diffexp/gene_expression_kmeans_2_clusters/differential_expression.csv", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_016um/analysis/diffexp/gene_expression_kmeans_3_clusters", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_016um/analysis/diffexp/gene_expression_kmeans_3_clusters/differential_expression.csv", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_016um/analysis/diffexp/gene_expression_kmeans_4_clusters", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_016um/analysis/diffexp/gene_expression_kmeans_4_clusters/differential_expression.csv", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_016um/analysis/diffexp/gene_expression_kmeans_5_clusters", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_016um/analysis/diffexp/gene_expression_kmeans_5_clusters/differential_expression.csv", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_016um/analysis/diffexp/gene_expression_kmeans_6_clusters", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_016um/analysis/diffexp/gene_expression_kmeans_6_clusters/differential_expression.csv", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_016um/analysis/diffexp/gene_expression_kmeans_7_clusters", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_016um/analysis/diffexp/gene_expression_kmeans_7_clusters/differential_expression.csv", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_016um/analysis/diffexp/gene_expression_kmeans_8_clusters", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_016um/analysis/diffexp/gene_expression_kmeans_8_clusters/differential_expression.csv", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_016um/analysis/diffexp/gene_expression_kmeans_9_clusters", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_016um/analysis/diffexp/gene_expression_kmeans_9_clusters/differential_expression.csv", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_016um/analysis/pca", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_016um/analysis/pca/gene_expression_10_components", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_016um/analysis/pca/gene_expression_10_components/components.csv", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_016um/analysis/pca/gene_expression_10_components/dispersion.csv", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_016um/analysis/pca/gene_expression_10_components/features_selected.csv", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_016um/analysis/pca/gene_expression_10_components/projection.csv", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_016um/analysis/pca/gene_expression_10_components/variance.csv", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_016um/analysis/umap", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_016um/analysis/umap/gene_expression_2_components", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_016um/analysis/umap/gene_expression_2_components/projection.csv", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_016um/filtered_feature_bc_matrix", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_016um/filtered_feature_bc_matrix.h5", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_016um/filtered_feature_bc_matrix/barcodes.tsv.gz", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_016um/filtered_feature_bc_matrix/features.tsv.gz", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_016um/filtered_feature_bc_matrix/matrix.mtx.gz", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_016um/raw_feature_bc_matrix", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_016um/raw_feature_bc_matrix.h5", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_016um/raw_feature_bc_matrix/barcodes.tsv.gz", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_016um/raw_feature_bc_matrix/features.tsv.gz", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_016um/raw_feature_bc_matrix/matrix.mtx.gz", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_016um/spatial", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_016um/spatial/aligned_fiducials.jpg", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_016um/spatial/aligned_tissue_image.jpg", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_016um/spatial/cytassist_image.tiff", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_016um/spatial/detected_tissue_image.jpg", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_016um/spatial/scalefactors_json.json", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_016um/spatial/tissue_hires_image.png", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_016um/spatial/tissue_lowres_image.png", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/binned_outputs/square_016um/spatial/tissue_positions.parquet", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/cloupe_008um.cloupe", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/cloupe_cell.cloupe", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/feature_slice.h5", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/metrics_summary.csv", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/molecule_info.h5", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/probe_set.csv", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/segmented_outputs", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/segmented_outputs/analysis", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/segmented_outputs/analysis/clustering", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/segmented_outputs/analysis/clustering/gene_expression_graphclust", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/segmented_outputs/analysis/clustering/gene_expression_graphclust/clusters.csv", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/segmented_outputs/analysis/clustering/gene_expression_kmeans_10_clusters", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/segmented_outputs/analysis/clustering/gene_expression_kmeans_10_clusters/clusters.csv", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/segmented_outputs/analysis/clustering/gene_expression_kmeans_2_clusters", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/segmented_outputs/analysis/clustering/gene_expression_kmeans_2_clusters/clusters.csv", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/segmented_outputs/analysis/clustering/gene_expression_kmeans_3_clusters", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/segmented_outputs/analysis/clustering/gene_expression_kmeans_3_clusters/clusters.csv", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/segmented_outputs/analysis/clustering/gene_expression_kmeans_4_clusters", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/segmented_outputs/analysis/clustering/gene_expression_kmeans_4_clusters/clusters.csv", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/segmented_outputs/analysis/clustering/gene_expression_kmeans_5_clusters", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/segmented_outputs/analysis/clustering/gene_expression_kmeans_5_clusters/clusters.csv", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/segmented_outputs/analysis/clustering/gene_expression_kmeans_6_clusters", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/segmented_outputs/analysis/clustering/gene_expression_kmeans_6_clusters/clusters.csv", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/segmented_outputs/analysis/clustering/gene_expression_kmeans_7_clusters", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/segmented_outputs/analysis/clustering/gene_expression_kmeans_7_clusters/clusters.csv", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/segmented_outputs/analysis/clustering/gene_expression_kmeans_8_clusters", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/segmented_outputs/analysis/clustering/gene_expression_kmeans_8_clusters/clusters.csv", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/segmented_outputs/analysis/clustering/gene_expression_kmeans_9_clusters", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/segmented_outputs/analysis/clustering/gene_expression_kmeans_9_clusters/clusters.csv", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/segmented_outputs/analysis/diffexp", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/segmented_outputs/analysis/diffexp/gene_expression_graphclust", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/segmented_outputs/analysis/diffexp/gene_expression_graphclust/differential_expression.csv", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/segmented_outputs/analysis/diffexp/gene_expression_kmeans_10_clusters", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/segmented_outputs/analysis/diffexp/gene_expression_kmeans_10_clusters/differential_expression.csv", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/segmented_outputs/analysis/diffexp/gene_expression_kmeans_2_clusters", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/segmented_outputs/analysis/diffexp/gene_expression_kmeans_2_clusters/differential_expression.csv", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/segmented_outputs/analysis/diffexp/gene_expression_kmeans_3_clusters", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/segmented_outputs/analysis/diffexp/gene_expression_kmeans_3_clusters/differential_expression.csv", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/segmented_outputs/analysis/diffexp/gene_expression_kmeans_4_clusters", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/segmented_outputs/analysis/diffexp/gene_expression_kmeans_4_clusters/differential_expression.csv", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/segmented_outputs/analysis/diffexp/gene_expression_kmeans_5_clusters", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/segmented_outputs/analysis/diffexp/gene_expression_kmeans_5_clusters/differential_expression.csv", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/segmented_outputs/analysis/diffexp/gene_expression_kmeans_6_clusters", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/segmented_outputs/analysis/diffexp/gene_expression_kmeans_6_clusters/differential_expression.csv", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/segmented_outputs/analysis/diffexp/gene_expression_kmeans_7_clusters", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/segmented_outputs/analysis/diffexp/gene_expression_kmeans_7_clusters/differential_expression.csv", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/segmented_outputs/analysis/diffexp/gene_expression_kmeans_8_clusters", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/segmented_outputs/analysis/diffexp/gene_expression_kmeans_8_clusters/differential_expression.csv", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/segmented_outputs/analysis/diffexp/gene_expression_kmeans_9_clusters", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/segmented_outputs/analysis/diffexp/gene_expression_kmeans_9_clusters/differential_expression.csv", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/segmented_outputs/analysis/pca", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/segmented_outputs/analysis/pca/gene_expression_10_components", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/segmented_outputs/analysis/pca/gene_expression_10_components/components.csv", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/segmented_outputs/analysis/pca/gene_expression_10_components/dispersion.csv", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/segmented_outputs/analysis/pca/gene_expression_10_components/features_selected.csv", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/segmented_outputs/analysis/pca/gene_expression_10_components/projection.csv", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/segmented_outputs/analysis/pca/gene_expression_10_components/variance.csv", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/segmented_outputs/analysis/umap", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/segmented_outputs/analysis/umap/gene_expression_2_components", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/segmented_outputs/analysis/umap/gene_expression_2_components/projection.csv", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/segmented_outputs/cell_segmentations.geojson", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/segmented_outputs/cloupe.cloupe", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/segmented_outputs/filtered_feature_cell_matrix", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/segmented_outputs/filtered_feature_cell_matrix.h5", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/segmented_outputs/filtered_feature_cell_matrix/barcodes.tsv.gz", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/segmented_outputs/filtered_feature_cell_matrix/features.tsv.gz", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/segmented_outputs/filtered_feature_cell_matrix/matrix.mtx.gz", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/segmented_outputs/graphclust_annotated_cell_segmentations.geojson", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/segmented_outputs/graphclust_annotated_nucleus_segmentations.geojson", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/segmented_outputs/nucleus_segmentations.geojson", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/segmented_outputs/raw_feature_cell_matrix", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/segmented_outputs/raw_feature_cell_matrix.h5", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/segmented_outputs/raw_feature_cell_matrix/barcodes.tsv.gz", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/segmented_outputs/raw_feature_cell_matrix/features.tsv.gz", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/segmented_outputs/raw_feature_cell_matrix/matrix.mtx.gz", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/segmented_outputs/spatial", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/segmented_outputs/spatial/aligned_fiducials.jpg", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/segmented_outputs/spatial/aligned_tissue_image.jpg", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/segmented_outputs/spatial/cytassist_image.tiff", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/segmented_outputs/spatial/detected_tissue_image.jpg", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/segmented_outputs/spatial/scalefactors_json.json", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/segmented_outputs/spatial/tissue_hires_image.png", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/segmented_outputs/spatial/tissue_lowres_image.png", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/spatial", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/spatial/aligned_fiducials.jpg", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/spatial/aligned_tissue_image.jpg", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/spatial/cytassist_image.tiff", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/spatial/detected_tissue_image.jpg", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/spatial/tissue_hires_image.png", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/spatial/tissue_lowres_image.png", + "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2/spaceranger/outs/web_summary.html", + "integration", + "integration/data", + "integration/data/harmony.h5ad", + "integration/data/harmony.zarr", + "integration/data/merged.zarr", + "integration/plots", + "integration/plots/spatial-Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2.png", + "integration/plots/umap-clusters_harmony.png", + "integration/plots/umap-library_id.png", + "integration/plots/umap-n_genes_by_counts.png", + "integration/plots/umap-pct_counts_hb.png", + "integration/plots/umap-pct_counts_mt.png", + "integration/plots/umap-pct_counts_ribo.png", + "integration/plots/umap-total_counts.png", + "integration/reports", + "integration/reports/_extensions", + "integration/reports/_extensions/nf-core", + "integration/reports/_extensions/nf-core/_extension.yml", + "integration/reports/_extensions/nf-core/nf-core-spatialvi_logo_light.png", + "integration/reports/_extensions/nf-core/nf-core.scss", + "integration/reports/_extensions/nf-core/nf-core.theme", + "integration/reports/_extensions/nf-core/toc.html", + "integration/reports/report-integrated.html", + "integration/reports/report-integrated.qmd", + "integration/reports/report-integrated.yml", + "multiqc", + "multiqc/multiqc_data", + "multiqc/multiqc_data/BETA-multiqc.parquet", + "multiqc/multiqc_data/fastqc-status-check-heatmap.txt", + "multiqc/multiqc_data/fastqc_overrepresented_sequences_plot.txt", + "multiqc/multiqc_data/fastqc_per_base_n_content_plot.txt", + "multiqc/multiqc_data/fastqc_per_base_sequence_quality_plot.txt", + "multiqc/multiqc_data/fastqc_per_sequence_gc_content_plot_Counts.txt", + "multiqc/multiqc_data/fastqc_per_sequence_gc_content_plot_Percentages.txt", + "multiqc/multiqc_data/fastqc_per_sequence_quality_scores_plot.txt", + "multiqc/multiqc_data/fastqc_sequence_counts_plot.txt", + "multiqc/multiqc_data/fastqc_sequence_duplication_levels_plot.txt", + "multiqc/multiqc_data/fastqc_top_overrepresented_sequences_table.txt", + "multiqc/multiqc_data/multiqc.log", + "multiqc/multiqc_data/multiqc_citations.txt", + "multiqc/multiqc_data/multiqc_data.json", + "multiqc/multiqc_data/multiqc_fastqc.txt", + "multiqc/multiqc_data/multiqc_general_stats.txt", + "multiqc/multiqc_data/multiqc_software_versions.txt", + "multiqc/multiqc_data/multiqc_sources.txt", + "multiqc/multiqc_plots", + "multiqc/multiqc_plots/pdf", + "multiqc/multiqc_plots/pdf/fastqc-status-check-heatmap.pdf", + "multiqc/multiqc_plots/pdf/fastqc_overrepresented_sequences_plot.pdf", + "multiqc/multiqc_plots/pdf/fastqc_per_base_n_content_plot.pdf", + "multiqc/multiqc_plots/pdf/fastqc_per_base_sequence_quality_plot.pdf", + "multiqc/multiqc_plots/pdf/fastqc_per_sequence_gc_content_plot_Counts.pdf", + "multiqc/multiqc_plots/pdf/fastqc_per_sequence_gc_content_plot_Percentages.pdf", + "multiqc/multiqc_plots/pdf/fastqc_per_sequence_quality_scores_plot.pdf", + "multiqc/multiqc_plots/pdf/fastqc_sequence_counts_plot-cnt.pdf", + "multiqc/multiqc_plots/pdf/fastqc_sequence_counts_plot-pct.pdf", + "multiqc/multiqc_plots/pdf/fastqc_sequence_duplication_levels_plot.pdf", + "multiqc/multiqc_plots/pdf/fastqc_top_overrepresented_sequences_table.pdf", + "multiqc/multiqc_plots/png", + "multiqc/multiqc_plots/png/fastqc-status-check-heatmap.png", + "multiqc/multiqc_plots/png/fastqc_overrepresented_sequences_plot.png", + "multiqc/multiqc_plots/png/fastqc_per_base_n_content_plot.png", + "multiqc/multiqc_plots/png/fastqc_per_base_sequence_quality_plot.png", + "multiqc/multiqc_plots/png/fastqc_per_sequence_gc_content_plot_Counts.png", + "multiqc/multiqc_plots/png/fastqc_per_sequence_gc_content_plot_Percentages.png", + "multiqc/multiqc_plots/png/fastqc_per_sequence_quality_scores_plot.png", + "multiqc/multiqc_plots/png/fastqc_sequence_counts_plot-cnt.png", + "multiqc/multiqc_plots/png/fastqc_sequence_counts_plot-pct.png", + "multiqc/multiqc_plots/png/fastqc_sequence_duplication_levels_plot.png", + "multiqc/multiqc_plots/png/fastqc_top_overrepresented_sequences_table.png", + "multiqc/multiqc_plots/svg", + "multiqc/multiqc_plots/svg/fastqc-status-check-heatmap.svg", + "multiqc/multiqc_plots/svg/fastqc_overrepresented_sequences_plot.svg", + "multiqc/multiqc_plots/svg/fastqc_per_base_n_content_plot.svg", + "multiqc/multiqc_plots/svg/fastqc_per_base_sequence_quality_plot.svg", + "multiqc/multiqc_plots/svg/fastqc_per_sequence_gc_content_plot_Counts.svg", + "multiqc/multiqc_plots/svg/fastqc_per_sequence_gc_content_plot_Percentages.svg", + "multiqc/multiqc_plots/svg/fastqc_per_sequence_quality_scores_plot.svg", + "multiqc/multiqc_plots/svg/fastqc_sequence_counts_plot-cnt.svg", + "multiqc/multiqc_plots/svg/fastqc_sequence_counts_plot-pct.svg", + "multiqc/multiqc_plots/svg/fastqc_sequence_duplication_levels_plot.svg", + "multiqc/multiqc_plots/svg/fastqc_top_overrepresented_sequences_table.svg", + "multiqc/multiqc_report.html", + "pipeline_info", + "pipeline_info/nf_core_spatialvi_software_mqc_versions.yml" + ], + [ + "integration/data/harmony.zarr/.zattrs", + "integration/data/harmony.zarr/.zgroup", + "integration/data/harmony.zarr/images", + "integration/data/harmony.zarr/images/.zgroup", + "integration/data/harmony.zarr/images/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image", + "integration/data/harmony.zarr/images/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/.zattrs", + "integration/data/harmony.zarr/images/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/.zgroup", + "integration/data/harmony.zarr/images/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/0", + "integration/data/harmony.zarr/images/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/0/.zarray", + "integration/data/harmony.zarr/images/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/0/0", + "integration/data/harmony.zarr/images/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/0/0/0", + "integration/data/harmony.zarr/images/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/0/0/0/0", + "integration/data/harmony.zarr/images/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_lowres_image", + "integration/data/harmony.zarr/images/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_lowres_image/.zattrs", + "integration/data/harmony.zarr/images/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_lowres_image/.zgroup", + "integration/data/harmony.zarr/images/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_lowres_image/0", + "integration/data/harmony.zarr/images/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_lowres_image/0/.zarray", + "integration/data/harmony.zarr/images/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_lowres_image/0/0", + "integration/data/harmony.zarr/images/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_lowres_image/0/0/0", + "integration/data/harmony.zarr/images/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_lowres_image/0/0/0/0", + "integration/data/harmony.zarr/shapes", + "integration/data/harmony.zarr/shapes/.zgroup", + "integration/data/harmony.zarr/shapes/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_square_016um", + "integration/data/harmony.zarr/shapes/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_square_016um/.zattrs", + "integration/data/harmony.zarr/shapes/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_square_016um/.zgroup", + "integration/data/harmony.zarr/shapes/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_square_016um/shapes.parquet", + "integration/data/harmony.zarr/tables", + "integration/data/harmony.zarr/tables/.zgroup", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/.zgroup", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/X", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/X/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/X/.zgroup", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/X/data", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/X/data/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/X/data/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/X/data/1", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/X/data/2", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/X/data/3", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/X/indices", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/X/indices/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/X/indices/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/X/indices/1", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/X/indices/2", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/X/indices/3", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/X/indptr", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/X/indptr/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/X/indptr/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/layers", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/layers/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/layers/.zgroup", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/layers/raw", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/layers/raw/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/layers/raw/.zgroup", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/layers/raw/data", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/layers/raw/data/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/layers/raw/data/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/layers/raw/data/1", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/layers/raw/data/2", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/layers/raw/data/3", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/layers/raw/indices", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/layers/raw/indices/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/layers/raw/indices/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/layers/raw/indices/1", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/layers/raw/indices/2", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/layers/raw/indices/3", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/layers/raw/indptr", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/layers/raw/indptr/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/layers/raw/indptr/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/.zgroup", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/_index", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/_index/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/_index/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/_index/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/array_col", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/array_col/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/array_col/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/array_col/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/array_row", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/array_row/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/array_row/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/array_row/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/clusters", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/clusters/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/clusters/.zgroup", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/clusters/categories", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/clusters/categories/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/clusters/categories/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/clusters/categories/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/clusters/codes", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/clusters/codes/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/clusters/codes/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/clusters/codes/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/clusters_harmony", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/clusters_harmony/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/clusters_harmony/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/clusters_harmony/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/in_tissue", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/in_tissue/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/in_tissue/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/in_tissue/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/location_id", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/location_id/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/location_id/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/location_id/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/n_counts", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/n_counts/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/n_counts/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/n_counts/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/n_genes", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/n_genes/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/n_genes/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/n_genes/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/n_genes_by_counts", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/n_genes_by_counts/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/n_genes_by_counts/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/n_genes_by_counts/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/pct_counts_hb", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/pct_counts_hb/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/pct_counts_hb/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/pct_counts_hb/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/pct_counts_in_top_100_genes", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/pct_counts_in_top_100_genes/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/pct_counts_in_top_100_genes/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/pct_counts_in_top_100_genes/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/pct_counts_in_top_200_genes", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/pct_counts_in_top_200_genes/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/pct_counts_in_top_200_genes/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/pct_counts_in_top_200_genes/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/pct_counts_in_top_500_genes", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/pct_counts_in_top_500_genes/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/pct_counts_in_top_500_genes/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/pct_counts_in_top_500_genes/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/pct_counts_in_top_50_genes", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/pct_counts_in_top_50_genes/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/pct_counts_in_top_50_genes/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/pct_counts_in_top_50_genes/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/pct_counts_mt", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/pct_counts_mt/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/pct_counts_mt/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/pct_counts_mt/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/pct_counts_ribo", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/pct_counts_ribo/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/pct_counts_ribo/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/pct_counts_ribo/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/region", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/region/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/region/.zgroup", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/region/categories", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/region/categories/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/region/categories/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/region/categories/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/region/codes", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/region/codes/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/region/codes/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/region/codes/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/total_counts", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/total_counts/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/total_counts/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/total_counts/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/total_counts_hb", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/total_counts_hb/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/total_counts_hb/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/total_counts_hb/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/total_counts_mt", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/total_counts_mt/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/total_counts_mt/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/total_counts_mt/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/total_counts_normalized", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/total_counts_normalized/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/total_counts_normalized/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/total_counts_normalized/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/total_counts_ribo", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/total_counts_ribo/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/total_counts_ribo/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/total_counts_ribo/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsm", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsm/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsm/.zgroup", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsm/X_harmony", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsm/X_harmony/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsm/X_harmony/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsm/X_harmony/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsm/X_harmony/0/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsm/X_pca", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsm/X_pca/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsm/X_pca/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsm/X_pca/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsm/X_pca/0/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsm/X_umap", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsm/X_umap/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsm/X_umap/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsm/X_umap/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsm/X_umap/0/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsm/X_umap_harmony", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsm/X_umap_harmony/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsm/X_umap_harmony/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsm/X_umap_harmony/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsm/X_umap_harmony/0/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsm/spatial", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsm/spatial/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsm/spatial/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsm/spatial/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsm/spatial/0/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsp", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsp/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsp/.zgroup", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsp/connectivities", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsp/connectivities/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsp/connectivities/.zgroup", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsp/connectivities/data", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsp/connectivities/data/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsp/connectivities/data/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsp/connectivities/indices", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsp/connectivities/indices/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsp/connectivities/indices/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsp/connectivities/indptr", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsp/connectivities/indptr/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsp/connectivities/indptr/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsp/distances", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsp/distances/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsp/distances/.zgroup", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsp/distances/data", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsp/distances/data/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsp/distances/data/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsp/distances/indices", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsp/distances/indices/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsp/distances/indices/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsp/distances/indptr", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsp/distances/indptr/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsp/distances/indptr/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsp/spatial_connectivities", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsp/spatial_connectivities/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsp/spatial_connectivities/.zgroup", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsp/spatial_connectivities/data", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsp/spatial_connectivities/data/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsp/spatial_connectivities/data/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsp/spatial_connectivities/indices", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsp/spatial_connectivities/indices/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsp/spatial_connectivities/indices/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsp/spatial_connectivities/indptr", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsp/spatial_connectivities/indptr/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsp/spatial_connectivities/indptr/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsp/spatial_distances", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsp/spatial_distances/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsp/spatial_distances/.zgroup", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsp/spatial_distances/data", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsp/spatial_distances/data/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsp/spatial_distances/data/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsp/spatial_distances/indices", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsp/spatial_distances/indices/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsp/spatial_distances/indices/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsp/spatial_distances/indptr", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsp/spatial_distances/indptr/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsp/spatial_distances/indptr/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/raw", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/raw/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/raw/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/raw/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/.zgroup", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/X_umap", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/X_umap/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/X_umap/.zgroup", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/X_umap/params", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/X_umap/params/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/X_umap/params/.zgroup", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/X_umap/params/a", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/X_umap/params/a/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/X_umap/params/a/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/X_umap/params/a/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/X_umap/params/b", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/X_umap/params/b/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/X_umap/params/b/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/X_umap/params/b/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/clusters", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/clusters/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/clusters/.zgroup", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/clusters/params", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/clusters/params/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/clusters/params/.zgroup", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/clusters/params/n_iterations", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/clusters/params/n_iterations/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/clusters/params/n_iterations/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/clusters/params/n_iterations/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/clusters/params/random_state", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/clusters/params/random_state/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/clusters/params/random_state/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/clusters/params/random_state/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/clusters/params/resolution", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/clusters/params/resolution/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/clusters/params/resolution/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/clusters/params/resolution/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/clusters_interactions", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/clusters_interactions/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/clusters_interactions/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/clusters_interactions/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/clusters_interactions/0/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/clusters_nhood_enrichment", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/clusters_nhood_enrichment/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/clusters_nhood_enrichment/.zgroup", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/clusters_nhood_enrichment/count", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/clusters_nhood_enrichment/count/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/clusters_nhood_enrichment/count/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/clusters_nhood_enrichment/count/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/clusters_nhood_enrichment/count/0/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/clusters_nhood_enrichment/zscore", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/clusters_nhood_enrichment/zscore/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/clusters_nhood_enrichment/zscore/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/clusters_nhood_enrichment/zscore/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/clusters_nhood_enrichment/zscore/0/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/coordinate_system", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/coordinate_system/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/coordinate_system/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/coordinate_system/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/.zgroup", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/genes_filtered_min_obs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/genes_filtered_min_obs/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/genes_filtered_min_obs/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/genes_filtered_min_obs/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/hb_threshold", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/hb_threshold/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/hb_threshold/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/hb_threshold/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/min_counts_threshold", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/min_counts_threshold/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/min_counts_threshold/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/min_counts_threshold/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/min_genes_threshold", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/min_genes_threshold/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/min_genes_threshold/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/min_genes_threshold/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/min_obs_threshold", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/min_obs_threshold/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/min_obs_threshold/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/min_obs_threshold/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/mito_threshold", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/mito_threshold/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/mito_threshold/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/mito_threshold/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/obs_filtered_hb", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/obs_filtered_hb/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/obs_filtered_hb/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/obs_filtered_hb/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/obs_filtered_min_counts", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/obs_filtered_min_counts/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/obs_filtered_min_counts/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/obs_filtered_min_counts/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/obs_filtered_min_genes", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/obs_filtered_min_genes/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/obs_filtered_min_genes/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/obs_filtered_min_genes/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/obs_filtered_mito", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/obs_filtered_mito/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/obs_filtered_mito/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/obs_filtered_mito/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/obs_filtered_outside_tissue", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/obs_filtered_outside_tissue/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/obs_filtered_outside_tissue/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/obs_filtered_outside_tissue/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/obs_filtered_ribo", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/obs_filtered_ribo/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/obs_filtered_ribo/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/obs_filtered_ribo/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/ribo_threshold", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/ribo_threshold/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/ribo_threshold/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/ribo_threshold/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/sample_id", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/sample_id/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/sample_id/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/sample_id/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/total_genes_after", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/total_genes_after/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/total_genes_after/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/total_genes_after/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/total_genes_before", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/total_genes_before/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/total_genes_before/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/total_genes_before/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/total_genes_filtered", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/total_genes_filtered/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/total_genes_filtered/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/total_genes_filtered/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/total_obs_after", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/total_obs_after/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/total_obs_after/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/total_obs_after/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/total_obs_before", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/total_obs_before/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/total_obs_before/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/total_obs_before/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/total_obs_filtered", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/total_obs_filtered/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/total_obs_filtered/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/total_obs_filtered/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/hvg", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/hvg/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/hvg/.zgroup", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/hvg/flavor", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/hvg/flavor/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/hvg/flavor/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/hvg/flavor/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/hvg/n_hvgs_found", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/hvg/n_hvgs_found/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/hvg/n_hvgs_found/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/hvg/n_hvgs_found/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/hvg/n_hvgs_requested", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/hvg/n_hvgs_requested/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/hvg/n_hvgs_requested/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/hvg/n_hvgs_requested/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/leiden", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/leiden/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/leiden/.zgroup", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/leiden/n_clusters", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/leiden/n_clusters/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/leiden/n_clusters/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/leiden/n_clusters/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/leiden/resolution", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/leiden/resolution/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/leiden/resolution/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/leiden/resolution/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/log1p", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/log1p/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/log1p/.zgroup", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/log1p/base", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/log1p/base/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/log1p/base/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/log1p/base/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/moranI", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/moranI/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/moranI/.zgroup", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/moranI/I", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/moranI/I/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/moranI/I/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/moranI/I/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/moranI/_index", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/moranI/_index/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/moranI/_index/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/moranI/_index/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/moranI/pval_norm", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/moranI/pval_norm/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/moranI/pval_norm/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/moranI/pval_norm/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/moranI/pval_norm_fdr_bh", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/moranI/pval_norm_fdr_bh/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/moranI/pval_norm_fdr_bh/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/moranI/pval_norm_fdr_bh/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/moranI/var_norm", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/moranI/var_norm/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/moranI/var_norm/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/moranI/var_norm/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/neighbors", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/neighbors/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/neighbors/.zgroup", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/neighbors/connectivities_key", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/neighbors/connectivities_key/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/neighbors/connectivities_key/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/neighbors/connectivities_key/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/neighbors/distances_key", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/neighbors/distances_key/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/neighbors/distances_key/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/neighbors/distances_key/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/neighbors/params", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/neighbors/params/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/neighbors/params/.zgroup", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/neighbors/params/method", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/neighbors/params/method/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/neighbors/params/method/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/neighbors/params/method/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/neighbors/params/metric", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/neighbors/params/metric/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/neighbors/params/metric/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/neighbors/params/metric/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/neighbors/params/n_neighbors", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/neighbors/params/n_neighbors/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/neighbors/params/n_neighbors/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/neighbors/params/n_neighbors/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/neighbors/params/n_pcs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/neighbors/params/n_pcs/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/neighbors/params/n_pcs/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/neighbors/params/n_pcs/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/neighbors/params/random_state", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/neighbors/params/random_state/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/neighbors/params/random_state/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/neighbors/params/random_state/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/normalization", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/normalization/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/normalization/.zgroup", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/normalization/log1p", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/normalization/log1p/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/normalization/log1p/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/normalization/log1p/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/normalization/method", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/normalization/method/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/normalization/method/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/normalization/method/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/normalization/target_sum", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/normalization/target_sum/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/normalization/target_sum/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/normalization/target_sum/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/pca", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/pca/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/pca/.zgroup", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/pca/params", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/pca/params/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/pca/params/.zgroup", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/pca/params/mask_var", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/pca/params/mask_var/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/pca/params/mask_var/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/pca/params/mask_var/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/pca/params/use_highly_variable", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/pca/params/use_highly_variable/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/pca/params/use_highly_variable/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/pca/params/use_highly_variable/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/pca/params/zero_center", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/pca/params/zero_center/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/pca/params/zero_center/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/pca/params/zero_center/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/pca/variance", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/pca/variance/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/pca/variance/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/pca/variance/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/pca/variance_ratio", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/pca/variance_ratio/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/pca/variance_ratio/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/pca/variance_ratio/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/.zgroup", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/logfoldchanges", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/logfoldchanges/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/logfoldchanges/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/logfoldchanges/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/logfoldchanges/1", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/names", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/names/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/names/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/names/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/names/1", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/names/10", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/names/11", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/names/12", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/names/13", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/names/14", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/names/15", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/names/2", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/names/3", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/names/4", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/names/5", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/names/6", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/names/7", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/names/8", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/names/9", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/params", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/params/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/params/.zgroup", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/params/corr_method", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/params/corr_method/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/params/corr_method/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/params/corr_method/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/params/groupby", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/params/groupby/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/params/groupby/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/params/groupby/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/params/layer", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/params/layer/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/params/layer/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/params/layer/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/params/method", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/params/method/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/params/method/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/params/method/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/params/reference", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/params/reference/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/params/reference/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/params/reference/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/params/use_raw", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/params/use_raw/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/params/use_raw/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/params/use_raw/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/pvals", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/pvals/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/pvals/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/pvals/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/pvals/1", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/pvals/2", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/pvals/3", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/pvals_adj", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/pvals_adj/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/pvals_adj/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/pvals_adj/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/pvals_adj/1", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/pvals_adj/2", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/pvals_adj/3", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/scores", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/scores/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/scores/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/scores/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/scores/1", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/sample_id", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/sample_id/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/sample_id/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/sample_id/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/.zgroup", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/.zgroup", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/images", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/images/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/images/.zgroup", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/images/hires", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/images/hires/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/images/hires/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/images/hires/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/images/hires/0/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/images/hires/0/0/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/images/hires/0/0/1", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/images/hires/0/1", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/images/hires/0/1/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/images/hires/0/1/1", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/images/hires/1", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/images/hires/1/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/images/hires/1/0/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/images/hires/1/0/1", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/images/hires/1/1", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/images/hires/1/1/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/images/hires/1/1/1", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/images/hires/2", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/images/hires/2/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/images/hires/2/0/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/images/hires/2/0/1", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/images/hires/2/1", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/images/hires/2/1/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/images/hires/2/1/1", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/images/hires/3", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/images/hires/3/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/images/hires/3/0/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/images/hires/3/0/1", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/images/hires/3/1", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/images/hires/3/1/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/images/hires/3/1/1", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/images/lowres", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/images/lowres/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/images/lowres/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/images/lowres/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/images/lowres/0/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/images/lowres/0/0/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/images/lowres/1", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/images/lowres/1/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/images/lowres/1/0/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/scalefactors", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/scalefactors/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/scalefactors/.zgroup", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/scalefactors/spot_diameter_fullres", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/scalefactors/spot_diameter_fullres/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/scalefactors/spot_diameter_fullres/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/scalefactors/spot_diameter_fullres/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/scalefactors/tissue_hires_scalef", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/scalefactors/tissue_hires_scalef/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/scalefactors/tissue_hires_scalef/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/scalefactors/tissue_hires_scalef/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/scalefactors/tissue_lowres_scalef", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/scalefactors/tissue_lowres_scalef/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/scalefactors/tissue_lowres_scalef/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/scalefactors/tissue_lowres_scalef/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial_neighbors", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial_neighbors/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial_neighbors/.zgroup", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial_neighbors/connectivities_key", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial_neighbors/connectivities_key/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial_neighbors/connectivities_key/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial_neighbors/connectivities_key/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial_neighbors/distances_key", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial_neighbors/distances_key/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial_neighbors/distances_key/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial_neighbors/distances_key/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial_neighbors/params", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial_neighbors/params/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial_neighbors/params/.zgroup", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial_neighbors/params/coord_type", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial_neighbors/params/coord_type/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial_neighbors/params/coord_type/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial_neighbors/params/coord_type/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial_neighbors/params/n_neighbors", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial_neighbors/params/n_neighbors/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial_neighbors/params/n_neighbors/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial_neighbors/params/n_neighbors/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial_neighbors/params/radius", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial_neighbors/params/radius/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial_neighbors/params/radius/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial_neighbors/params/radius/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial_neighbors/params/transform", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial_neighbors/params/transform/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial_neighbors/params/transform/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial_neighbors/params/transform/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatialdata_attrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatialdata_attrs/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatialdata_attrs/.zgroup", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatialdata_attrs/instance_key", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatialdata_attrs/instance_key/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatialdata_attrs/instance_key/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatialdata_attrs/instance_key/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatialdata_attrs/region", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatialdata_attrs/region/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatialdata_attrs/region/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatialdata_attrs/region/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatialdata_attrs/region_key", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatialdata_attrs/region_key/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatialdata_attrs/region_key/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatialdata_attrs/region_key/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/table_name", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/table_name/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/table_name/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/table_name/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/.zgroup", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/_index", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/_index/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/_index/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/_index/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/dispersions", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/dispersions/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/dispersions/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/dispersions/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/dispersions_norm", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/dispersions_norm/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/dispersions_norm/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/dispersions_norm/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/feature_types", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/feature_types/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/feature_types/.zgroup", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/feature_types/categories", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/feature_types/categories/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/feature_types/categories/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/feature_types/categories/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/feature_types/codes", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/feature_types/codes/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/feature_types/codes/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/feature_types/codes/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/gene_ids", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/gene_ids/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/gene_ids/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/gene_ids/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/genome", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/genome/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/genome/.zgroup", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/genome/categories", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/genome/categories/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/genome/categories/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/genome/categories/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/genome/codes", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/genome/codes/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/genome/codes/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/genome/codes/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/hb", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/hb/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/hb/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/hb/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/highly_variable", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/highly_variable/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/highly_variable/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/highly_variable/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/mean_counts", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/mean_counts/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/mean_counts/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/mean_counts/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/means", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/means/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/means/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/means/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/mt", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/mt/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/mt/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/mt/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/n_cells", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/n_cells/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/n_cells/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/n_cells/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/n_cells_by_counts", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/n_cells_by_counts/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/n_cells_by_counts/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/n_cells_by_counts/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/pct_dropout_by_counts", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/pct_dropout_by_counts/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/pct_dropout_by_counts/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/pct_dropout_by_counts/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/ribo", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/ribo/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/ribo/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/ribo/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/total_counts", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/total_counts/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/total_counts/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/total_counts/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/varm", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/varm/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/varm/.zgroup", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/varm/PCs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/varm/PCs/.zarray", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/varm/PCs/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/varm/PCs/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/varm/PCs/0/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/varm/PCs/0/1", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/varm/PCs/0/2", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/varm/PCs/0/3", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/varm/PCs/1", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/varm/PCs/1/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/varm/PCs/1/1", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/varm/PCs/1/2", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/varm/PCs/1/3", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/varm/PCs/2", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/varm/PCs/2/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/varm/PCs/2/1", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/varm/PCs/2/2", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/varm/PCs/2/3", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/varm/PCs/3", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/varm/PCs/3/0", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/varm/PCs/3/1", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/varm/PCs/3/2", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/varm/PCs/3/3", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/varp", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/varp/.zattrs", + "integration/data/harmony.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/varp/.zgroup", + "integration/data/harmony.zarr/zmetadata", + "integration/data/merged.zarr/.zattrs", + "integration/data/merged.zarr/.zgroup", + "integration/data/merged.zarr/images", + "integration/data/merged.zarr/images/.zgroup", + "integration/data/merged.zarr/images/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image", + "integration/data/merged.zarr/images/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/.zattrs", + "integration/data/merged.zarr/images/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/.zgroup", + "integration/data/merged.zarr/images/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/0", + "integration/data/merged.zarr/images/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/0/.zarray", + "integration/data/merged.zarr/images/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/0/0", + "integration/data/merged.zarr/images/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/0/0/0", + "integration/data/merged.zarr/images/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/0/0/0/0", + "integration/data/merged.zarr/images/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_lowres_image", + "integration/data/merged.zarr/images/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_lowres_image/.zattrs", + "integration/data/merged.zarr/images/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_lowres_image/.zgroup", + "integration/data/merged.zarr/images/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_lowres_image/0", + "integration/data/merged.zarr/images/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_lowres_image/0/.zarray", + "integration/data/merged.zarr/images/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_lowres_image/0/0", + "integration/data/merged.zarr/images/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_lowres_image/0/0/0", + "integration/data/merged.zarr/images/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_lowres_image/0/0/0/0", + "integration/data/merged.zarr/shapes", + "integration/data/merged.zarr/shapes/.zgroup", + "integration/data/merged.zarr/shapes/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_square_016um", + "integration/data/merged.zarr/shapes/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_square_016um/.zattrs", + "integration/data/merged.zarr/shapes/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_square_016um/.zgroup", + "integration/data/merged.zarr/shapes/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_square_016um/shapes.parquet", + "integration/data/merged.zarr/tables", + "integration/data/merged.zarr/tables/.zgroup", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/.zgroup", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/X", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/X/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/X/.zgroup", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/X/data", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/X/data/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/X/data/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/X/data/1", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/X/data/2", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/X/data/3", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/X/indices", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/X/indices/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/X/indices/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/X/indices/1", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/X/indices/2", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/X/indices/3", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/X/indptr", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/X/indptr/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/X/indptr/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/layers", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/layers/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/layers/.zgroup", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/layers/raw", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/layers/raw/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/layers/raw/.zgroup", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/layers/raw/data", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/layers/raw/data/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/layers/raw/data/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/layers/raw/data/1", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/layers/raw/data/2", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/layers/raw/data/3", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/layers/raw/indices", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/layers/raw/indices/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/layers/raw/indices/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/layers/raw/indices/1", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/layers/raw/indices/2", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/layers/raw/indices/3", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/layers/raw/indptr", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/layers/raw/indptr/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/layers/raw/indptr/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/.zgroup", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/_index", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/_index/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/_index/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/_index/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/array_col", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/array_col/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/array_col/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/array_col/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/array_row", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/array_row/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/array_row/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/array_row/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/clusters", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/clusters/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/clusters/.zgroup", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/clusters/categories", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/clusters/categories/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/clusters/categories/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/clusters/categories/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/clusters/codes", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/clusters/codes/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/clusters/codes/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/clusters/codes/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/in_tissue", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/in_tissue/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/in_tissue/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/in_tissue/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/location_id", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/location_id/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/location_id/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/location_id/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/n_counts", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/n_counts/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/n_counts/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/n_counts/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/n_genes", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/n_genes/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/n_genes/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/n_genes/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/n_genes_by_counts", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/n_genes_by_counts/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/n_genes_by_counts/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/n_genes_by_counts/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/pct_counts_hb", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/pct_counts_hb/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/pct_counts_hb/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/pct_counts_hb/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/pct_counts_in_top_100_genes", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/pct_counts_in_top_100_genes/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/pct_counts_in_top_100_genes/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/pct_counts_in_top_100_genes/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/pct_counts_in_top_200_genes", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/pct_counts_in_top_200_genes/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/pct_counts_in_top_200_genes/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/pct_counts_in_top_200_genes/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/pct_counts_in_top_500_genes", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/pct_counts_in_top_500_genes/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/pct_counts_in_top_500_genes/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/pct_counts_in_top_500_genes/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/pct_counts_in_top_50_genes", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/pct_counts_in_top_50_genes/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/pct_counts_in_top_50_genes/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/pct_counts_in_top_50_genes/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/pct_counts_mt", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/pct_counts_mt/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/pct_counts_mt/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/pct_counts_mt/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/pct_counts_ribo", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/pct_counts_ribo/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/pct_counts_ribo/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/pct_counts_ribo/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/region", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/region/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/region/.zgroup", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/region/categories", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/region/categories/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/region/categories/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/region/categories/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/region/codes", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/region/codes/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/region/codes/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/region/codes/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/total_counts", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/total_counts/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/total_counts/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/total_counts/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/total_counts_hb", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/total_counts_hb/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/total_counts_hb/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/total_counts_hb/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/total_counts_mt", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/total_counts_mt/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/total_counts_mt/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/total_counts_mt/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/total_counts_normalized", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/total_counts_normalized/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/total_counts_normalized/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/total_counts_normalized/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/total_counts_ribo", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/total_counts_ribo/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/total_counts_ribo/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obs/total_counts_ribo/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsm", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsm/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsm/.zgroup", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsm/X_pca", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsm/X_pca/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsm/X_pca/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsm/X_pca/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsm/X_pca/0/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsm/X_umap", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsm/X_umap/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsm/X_umap/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsm/X_umap/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsm/X_umap/0/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsm/spatial", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsm/spatial/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsm/spatial/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsm/spatial/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsm/spatial/0/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsp", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsp/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsp/.zgroup", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsp/connectivities", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsp/connectivities/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsp/connectivities/.zgroup", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsp/connectivities/data", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsp/connectivities/data/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsp/connectivities/data/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsp/connectivities/indices", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsp/connectivities/indices/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsp/connectivities/indices/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsp/connectivities/indptr", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsp/connectivities/indptr/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsp/connectivities/indptr/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsp/distances", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsp/distances/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsp/distances/.zgroup", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsp/distances/data", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsp/distances/data/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsp/distances/data/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsp/distances/indices", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsp/distances/indices/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsp/distances/indices/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsp/distances/indptr", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsp/distances/indptr/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsp/distances/indptr/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsp/spatial_connectivities", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsp/spatial_connectivities/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsp/spatial_connectivities/.zgroup", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsp/spatial_connectivities/data", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsp/spatial_connectivities/data/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsp/spatial_connectivities/data/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsp/spatial_connectivities/indices", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsp/spatial_connectivities/indices/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsp/spatial_connectivities/indices/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsp/spatial_connectivities/indptr", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsp/spatial_connectivities/indptr/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsp/spatial_connectivities/indptr/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsp/spatial_distances", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsp/spatial_distances/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsp/spatial_distances/.zgroup", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsp/spatial_distances/data", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsp/spatial_distances/data/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsp/spatial_distances/data/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsp/spatial_distances/indices", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsp/spatial_distances/indices/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsp/spatial_distances/indices/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsp/spatial_distances/indptr", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsp/spatial_distances/indptr/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/obsp/spatial_distances/indptr/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/raw", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/raw/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/raw/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/raw/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/.zgroup", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/X_umap", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/X_umap/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/X_umap/.zgroup", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/X_umap/params", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/X_umap/params/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/X_umap/params/.zgroup", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/X_umap/params/a", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/X_umap/params/a/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/X_umap/params/a/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/X_umap/params/a/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/X_umap/params/b", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/X_umap/params/b/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/X_umap/params/b/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/X_umap/params/b/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/clusters", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/clusters/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/clusters/.zgroup", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/clusters/params", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/clusters/params/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/clusters/params/.zgroup", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/clusters/params/n_iterations", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/clusters/params/n_iterations/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/clusters/params/n_iterations/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/clusters/params/n_iterations/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/clusters/params/random_state", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/clusters/params/random_state/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/clusters/params/random_state/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/clusters/params/random_state/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/clusters/params/resolution", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/clusters/params/resolution/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/clusters/params/resolution/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/clusters/params/resolution/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/clusters_interactions", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/clusters_interactions/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/clusters_interactions/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/clusters_interactions/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/clusters_interactions/0/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/clusters_nhood_enrichment", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/clusters_nhood_enrichment/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/clusters_nhood_enrichment/.zgroup", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/clusters_nhood_enrichment/count", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/clusters_nhood_enrichment/count/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/clusters_nhood_enrichment/count/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/clusters_nhood_enrichment/count/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/clusters_nhood_enrichment/count/0/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/clusters_nhood_enrichment/zscore", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/clusters_nhood_enrichment/zscore/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/clusters_nhood_enrichment/zscore/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/clusters_nhood_enrichment/zscore/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/clusters_nhood_enrichment/zscore/0/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/coordinate_system", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/coordinate_system/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/coordinate_system/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/coordinate_system/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/.zgroup", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/genes_filtered_min_obs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/genes_filtered_min_obs/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/genes_filtered_min_obs/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/genes_filtered_min_obs/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/hb_threshold", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/hb_threshold/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/hb_threshold/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/hb_threshold/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/min_counts_threshold", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/min_counts_threshold/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/min_counts_threshold/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/min_counts_threshold/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/min_genes_threshold", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/min_genes_threshold/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/min_genes_threshold/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/min_genes_threshold/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/min_obs_threshold", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/min_obs_threshold/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/min_obs_threshold/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/min_obs_threshold/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/mito_threshold", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/mito_threshold/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/mito_threshold/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/mito_threshold/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/obs_filtered_hb", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/obs_filtered_hb/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/obs_filtered_hb/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/obs_filtered_hb/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/obs_filtered_min_counts", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/obs_filtered_min_counts/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/obs_filtered_min_counts/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/obs_filtered_min_counts/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/obs_filtered_min_genes", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/obs_filtered_min_genes/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/obs_filtered_min_genes/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/obs_filtered_min_genes/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/obs_filtered_mito", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/obs_filtered_mito/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/obs_filtered_mito/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/obs_filtered_mito/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/obs_filtered_outside_tissue", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/obs_filtered_outside_tissue/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/obs_filtered_outside_tissue/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/obs_filtered_outside_tissue/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/obs_filtered_ribo", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/obs_filtered_ribo/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/obs_filtered_ribo/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/obs_filtered_ribo/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/ribo_threshold", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/ribo_threshold/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/ribo_threshold/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/ribo_threshold/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/sample_id", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/sample_id/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/sample_id/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/sample_id/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/total_genes_after", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/total_genes_after/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/total_genes_after/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/total_genes_after/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/total_genes_before", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/total_genes_before/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/total_genes_before/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/total_genes_before/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/total_genes_filtered", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/total_genes_filtered/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/total_genes_filtered/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/total_genes_filtered/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/total_obs_after", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/total_obs_after/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/total_obs_after/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/total_obs_after/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/total_obs_before", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/total_obs_before/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/total_obs_before/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/total_obs_before/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/total_obs_filtered", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/total_obs_filtered/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/total_obs_filtered/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/filtering_stats/total_obs_filtered/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/hvg", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/hvg/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/hvg/.zgroup", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/hvg/flavor", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/hvg/flavor/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/hvg/flavor/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/hvg/flavor/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/hvg/n_hvgs_found", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/hvg/n_hvgs_found/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/hvg/n_hvgs_found/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/hvg/n_hvgs_found/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/hvg/n_hvgs_requested", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/hvg/n_hvgs_requested/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/hvg/n_hvgs_requested/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/hvg/n_hvgs_requested/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/leiden", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/leiden/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/leiden/.zgroup", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/leiden/n_clusters", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/leiden/n_clusters/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/leiden/n_clusters/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/leiden/n_clusters/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/leiden/resolution", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/leiden/resolution/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/leiden/resolution/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/leiden/resolution/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/log1p", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/log1p/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/log1p/.zgroup", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/log1p/base", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/log1p/base/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/log1p/base/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/log1p/base/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/moranI", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/moranI/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/moranI/.zgroup", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/moranI/I", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/moranI/I/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/moranI/I/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/moranI/I/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/moranI/_index", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/moranI/_index/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/moranI/_index/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/moranI/_index/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/moranI/pval_norm", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/moranI/pval_norm/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/moranI/pval_norm/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/moranI/pval_norm/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/moranI/pval_norm_fdr_bh", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/moranI/pval_norm_fdr_bh/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/moranI/pval_norm_fdr_bh/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/moranI/pval_norm_fdr_bh/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/moranI/var_norm", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/moranI/var_norm/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/moranI/var_norm/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/moranI/var_norm/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/neighbors", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/neighbors/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/neighbors/.zgroup", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/neighbors/connectivities_key", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/neighbors/connectivities_key/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/neighbors/connectivities_key/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/neighbors/connectivities_key/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/neighbors/distances_key", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/neighbors/distances_key/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/neighbors/distances_key/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/neighbors/distances_key/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/neighbors/params", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/neighbors/params/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/neighbors/params/.zgroup", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/neighbors/params/method", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/neighbors/params/method/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/neighbors/params/method/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/neighbors/params/method/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/neighbors/params/metric", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/neighbors/params/metric/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/neighbors/params/metric/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/neighbors/params/metric/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/neighbors/params/n_neighbors", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/neighbors/params/n_neighbors/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/neighbors/params/n_neighbors/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/neighbors/params/n_neighbors/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/neighbors/params/n_pcs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/neighbors/params/n_pcs/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/neighbors/params/n_pcs/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/neighbors/params/n_pcs/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/neighbors/params/random_state", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/neighbors/params/random_state/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/neighbors/params/random_state/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/neighbors/params/random_state/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/normalization", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/normalization/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/normalization/.zgroup", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/normalization/log1p", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/normalization/log1p/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/normalization/log1p/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/normalization/log1p/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/normalization/method", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/normalization/method/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/normalization/method/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/normalization/method/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/normalization/target_sum", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/normalization/target_sum/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/normalization/target_sum/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/normalization/target_sum/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/pca", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/pca/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/pca/.zgroup", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/pca/params", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/pca/params/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/pca/params/.zgroup", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/pca/params/mask_var", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/pca/params/mask_var/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/pca/params/mask_var/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/pca/params/mask_var/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/pca/params/use_highly_variable", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/pca/params/use_highly_variable/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/pca/params/use_highly_variable/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/pca/params/use_highly_variable/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/pca/params/zero_center", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/pca/params/zero_center/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/pca/params/zero_center/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/pca/params/zero_center/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/pca/variance", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/pca/variance/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/pca/variance/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/pca/variance/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/pca/variance_ratio", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/pca/variance_ratio/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/pca/variance_ratio/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/pca/variance_ratio/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/.zgroup", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/logfoldchanges", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/logfoldchanges/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/logfoldchanges/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/logfoldchanges/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/logfoldchanges/1", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/names", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/names/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/names/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/names/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/names/1", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/names/10", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/names/11", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/names/12", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/names/13", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/names/14", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/names/15", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/names/2", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/names/3", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/names/4", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/names/5", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/names/6", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/names/7", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/names/8", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/names/9", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/params", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/params/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/params/.zgroup", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/params/corr_method", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/params/corr_method/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/params/corr_method/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/params/corr_method/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/params/groupby", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/params/groupby/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/params/groupby/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/params/groupby/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/params/layer", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/params/layer/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/params/layer/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/params/layer/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/params/method", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/params/method/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/params/method/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/params/method/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/params/reference", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/params/reference/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/params/reference/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/params/reference/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/params/use_raw", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/params/use_raw/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/params/use_raw/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/params/use_raw/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/pvals", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/pvals/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/pvals/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/pvals/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/pvals/1", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/pvals/2", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/pvals/3", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/pvals_adj", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/pvals_adj/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/pvals_adj/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/pvals_adj/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/pvals_adj/1", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/pvals_adj/2", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/pvals_adj/3", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/scores", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/scores/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/scores/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/scores/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/rank_genes_groups/scores/1", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/sample_id", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/sample_id/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/sample_id/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/sample_id/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/.zgroup", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/.zgroup", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/images", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/images/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/images/.zgroup", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/images/hires", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/images/hires/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/images/hires/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/images/hires/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/images/hires/0/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/images/hires/0/0/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/images/hires/0/0/1", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/images/hires/0/1", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/images/hires/0/1/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/images/hires/0/1/1", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/images/hires/1", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/images/hires/1/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/images/hires/1/0/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/images/hires/1/0/1", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/images/hires/1/1", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/images/hires/1/1/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/images/hires/1/1/1", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/images/hires/2", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/images/hires/2/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/images/hires/2/0/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/images/hires/2/0/1", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/images/hires/2/1", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/images/hires/2/1/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/images/hires/2/1/1", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/images/hires/3", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/images/hires/3/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/images/hires/3/0/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/images/hires/3/0/1", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/images/hires/3/1", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/images/hires/3/1/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/images/hires/3/1/1", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/images/lowres", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/images/lowres/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/images/lowres/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/images/lowres/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/images/lowres/0/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/images/lowres/0/0/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/images/lowres/1", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/images/lowres/1/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/images/lowres/1/0/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/scalefactors", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/scalefactors/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/scalefactors/.zgroup", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/scalefactors/spot_diameter_fullres", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/scalefactors/spot_diameter_fullres/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/scalefactors/spot_diameter_fullres/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/scalefactors/spot_diameter_fullres/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/scalefactors/tissue_hires_scalef", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/scalefactors/tissue_hires_scalef/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/scalefactors/tissue_hires_scalef/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/scalefactors/tissue_hires_scalef/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/scalefactors/tissue_lowres_scalef", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/scalefactors/tissue_lowres_scalef/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/scalefactors/tissue_lowres_scalef/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_hires_image/scalefactors/tissue_lowres_scalef/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial_neighbors", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial_neighbors/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial_neighbors/.zgroup", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial_neighbors/connectivities_key", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial_neighbors/connectivities_key/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial_neighbors/connectivities_key/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial_neighbors/connectivities_key/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial_neighbors/distances_key", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial_neighbors/distances_key/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial_neighbors/distances_key/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial_neighbors/distances_key/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial_neighbors/params", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial_neighbors/params/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial_neighbors/params/.zgroup", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial_neighbors/params/coord_type", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial_neighbors/params/coord_type/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial_neighbors/params/coord_type/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial_neighbors/params/coord_type/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial_neighbors/params/n_neighbors", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial_neighbors/params/n_neighbors/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial_neighbors/params/n_neighbors/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial_neighbors/params/n_neighbors/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial_neighbors/params/radius", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial_neighbors/params/radius/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial_neighbors/params/radius/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial_neighbors/params/radius/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial_neighbors/params/transform", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial_neighbors/params/transform/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial_neighbors/params/transform/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatial_neighbors/params/transform/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatialdata_attrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatialdata_attrs/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatialdata_attrs/.zgroup", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatialdata_attrs/instance_key", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatialdata_attrs/instance_key/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatialdata_attrs/instance_key/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatialdata_attrs/instance_key/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatialdata_attrs/region", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatialdata_attrs/region/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatialdata_attrs/region/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatialdata_attrs/region/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatialdata_attrs/region_key", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatialdata_attrs/region_key/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatialdata_attrs/region_key/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/spatialdata_attrs/region_key/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/table_name", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/table_name/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/table_name/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/uns/table_name/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/.zgroup", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/_index", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/_index/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/_index/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/_index/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/dispersions", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/dispersions/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/dispersions/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/dispersions/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/dispersions_norm", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/dispersions_norm/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/dispersions_norm/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/dispersions_norm/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/feature_types", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/feature_types/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/feature_types/.zgroup", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/feature_types/categories", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/feature_types/categories/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/feature_types/categories/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/feature_types/categories/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/feature_types/codes", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/feature_types/codes/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/feature_types/codes/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/feature_types/codes/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/gene_ids", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/gene_ids/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/gene_ids/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/gene_ids/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/genome", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/genome/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/genome/.zgroup", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/genome/categories", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/genome/categories/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/genome/categories/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/genome/categories/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/genome/codes", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/genome/codes/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/genome/codes/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/genome/codes/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/hb", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/hb/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/hb/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/hb/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/highly_variable", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/highly_variable/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/highly_variable/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/highly_variable/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/mean_counts", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/mean_counts/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/mean_counts/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/mean_counts/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/means", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/means/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/means/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/means/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/mt", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/mt/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/mt/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/mt/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/n_cells", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/n_cells/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/n_cells/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/n_cells/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/n_cells_by_counts", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/n_cells_by_counts/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/n_cells_by_counts/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/n_cells_by_counts/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/pct_dropout_by_counts", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/pct_dropout_by_counts/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/pct_dropout_by_counts/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/pct_dropout_by_counts/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/ribo", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/ribo/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/ribo/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/ribo/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/total_counts", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/total_counts/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/total_counts/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/var/total_counts/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/varm", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/varm/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/varm/.zgroup", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/varm/PCs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/varm/PCs/.zarray", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/varm/PCs/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/varm/PCs/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/varm/PCs/0/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/varm/PCs/0/1", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/varm/PCs/0/2", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/varm/PCs/0/3", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/varm/PCs/1", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/varm/PCs/1/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/varm/PCs/1/1", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/varm/PCs/1/2", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/varm/PCs/1/3", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/varm/PCs/2", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/varm/PCs/2/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/varm/PCs/2/1", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/varm/PCs/2/2", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/varm/PCs/2/3", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/varm/PCs/3", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/varm/PCs/3/0", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/varm/PCs/3/1", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/varm/PCs/3/2", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/varm/PCs/3/3", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/varp", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/varp/.zattrs", + "integration/data/merged.zarr/tables/Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2_table/varp/.zgroup", + "integration/data/merged.zarr/zmetadata" + ], + [ + "report.qmd:md5,03555321961957d8d645b446350921e0", + "report.yml:md5,88f09c9369b88a4c3ebb22a71d2ad6fa", + "filtered_feature_bc_matrix.h5:md5,57a1c2bc46bec9317074675c73f08939", + "matrix.mtx.gz:md5,556b60f31ceaf14028dd757c0ddd98bc", + "raw_feature_bc_matrix.h5:md5,4a35b8f4c3407c7c39202d1ee78d10c4", + "matrix.mtx.gz:md5,bd44429d765c377ae74ed294af6ebeee", + "raw_probe_bc_matrix.h5:md5,7ec050aec4555fcd144f07e001622b7c", + "aligned_fiducials.jpg:md5,6b38b6b480b0abaf8c74b445acfa9153", + "aligned_tissue_image.jpg:md5,bc12089729d5cdfb06ae0591eefc8417", + "cytassist_image.tiff:md5,1328dd8ea02922375719f38e3de516ca", + "detected_tissue_image.jpg:md5,a29e4dbf4b39d7cda3e381050d81b92e", + "clusters.csv:md5,0e902bfe702711e206cb350d8367f6b6", + "clusters.csv:md5,4ccea0076a5a348d4bc73f19db30dec3", + "clusters.csv:md5,90d0830fc7d64ce678326ec077f73711", + "clusters.csv:md5,4f4be3c4ebb48932d097724bed3a22a4", + "clusters.csv:md5,8a91ee29790b256b9b0c403533622a7a", + "clusters.csv:md5,b76d514fb2c6540e89969c6a23f6a242", + "clusters.csv:md5,99c4b3017a64f3756096d220351f3298", + "clusters.csv:md5,453a1beb740501be8a4b55aa97e20c44", + "clusters.csv:md5,6e0779036385ad49059479d5d6a13333", + "clusters.csv:md5,7cef1f40a34c348cb47bd8725432589d", + "differential_expression.csv:md5,75e2d0a0e08065e0dc2d4200f622f29a", + "differential_expression.csv:md5,f5b1f403206f1fcbae1f92d8763d05a4", + "differential_expression.csv:md5,9fe95e92138dbf514a3f45c6808ac25f", + "differential_expression.csv:md5,4b3042b91f42b500f8c94e83cf08b3c9", + "differential_expression.csv:md5,4e46d3305a7b671c5c867d12bd528c26", + "differential_expression.csv:md5,863e0baca52f5ea201e042a597294910", + "differential_expression.csv:md5,17431d68198adbe199de4a6dce8686cf", + "differential_expression.csv:md5,d3a6a0e4ec23a6aab3aa1e6f612ce94b", + "differential_expression.csv:md5,9186f8d9c512c3f48166d71428135bc9", + "differential_expression.csv:md5,1e112acdf9fa1933e7452adc1deab8ee", + "dispersion.csv:md5,825408c9678100049f0244361138a844", + "features_selected.csv:md5,7fcad5f834af732ca287ad6ce3901b37", + "filtered_feature_bc_matrix.h5:md5,d404600610de0ec57858d6daff6afd08", + "matrix.mtx.gz:md5,a0ae49a1c5dd7220b30e2dfb4b9bc115", + "raw_feature_bc_matrix.h5:md5,028b7eac253454c3752664472f8e44ee", + "matrix.mtx.gz:md5,473d5b08ac3ad472dd8c00d20df375da", + "aligned_fiducials.jpg:md5,6b38b6b480b0abaf8c74b445acfa9153", + "aligned_tissue_image.jpg:md5,bc12089729d5cdfb06ae0591eefc8417", + "cytassist_image.tiff:md5,1328dd8ea02922375719f38e3de516ca", + "detected_tissue_image.jpg:md5,a29e4dbf4b39d7cda3e381050d81b92e", + "clusters.csv:md5,229730fa45db217f2d3883445c23813e", + "clusters.csv:md5,1a5c8cd3cab196ea79409810c7184bf4", + "clusters.csv:md5,cacfbe32cdd8bfa4ff4f43afbbadd2bd", + "clusters.csv:md5,9bb1004f3cd25b7ffc2acdc3dd4a2117", + "clusters.csv:md5,18efd116230c9c0a05081d1fc761e885", + "clusters.csv:md5,f3851924718a61179f8b7dd13c6ea2f6", + "clusters.csv:md5,290b1bb2acb5a854e0910633663ee9c6", + "clusters.csv:md5,8be084aadeeb2f64df201902608204a8", + "clusters.csv:md5,0d3d9a98661da94e09dd611bdf37eef8", + "clusters.csv:md5,a20bf4526a27fd853a3e9072b9d9d900", + "differential_expression.csv:md5,d9d5a28c792bd9b18364fcbbf457ecaf", + "differential_expression.csv:md5,dbb1407c053443b70290af0f229a2bb2", + "differential_expression.csv:md5,1ec1a899a52b55bf76cf2e8642f7f87e", + "differential_expression.csv:md5,c4763b30040e4308b8f3266abec2a4f1", + "differential_expression.csv:md5,6928d5b9e1af44019ba24ce793d0d5fc", + "differential_expression.csv:md5,2c2d4bfd9deb0a3d3972d0437229ac42", + "differential_expression.csv:md5,0c01a2c22096e6b3374c09f12a007678", + "differential_expression.csv:md5,b610706096077be502edeaeb431b8b29", + "differential_expression.csv:md5,a29cb892eb5ab85924a0a5c199766325", + "differential_expression.csv:md5,f05466b09ad830487d4cf94cb2cbf76f", + "dispersion.csv:md5,7a3d38d43bc8d6b328de90cfbe90660c", + "features_selected.csv:md5,708baf61d4532a9aab66d2446475ab7c", + "filtered_feature_bc_matrix.h5:md5,1a6e3ff6e02066ef4d78c05b30a4c7d4", + "matrix.mtx.gz:md5,4665919df2a54ccbac25ddeef5a9064d", + "raw_feature_bc_matrix.h5:md5,36314caa981e847343859859740dc484", + "matrix.mtx.gz:md5,8796c0a2c69e2e113b74217a11b80e8c", + "aligned_fiducials.jpg:md5,6b38b6b480b0abaf8c74b445acfa9153", + "aligned_tissue_image.jpg:md5,bc12089729d5cdfb06ae0591eefc8417", + "cytassist_image.tiff:md5,1328dd8ea02922375719f38e3de516ca", + "detected_tissue_image.jpg:md5,a29e4dbf4b39d7cda3e381050d81b92e", + "metrics_summary.csv:md5,a5ce71e028b018b52c3e3afdb4169432", + "probe_set.csv:md5,a74f1583689de3c9f95164b2fc090194", + "clusters.csv:md5,351415b6c319c98227a2f7cc2fa33a10", + "clusters.csv:md5,75068b8788b4cb0744dd43c26a4845c5", + "clusters.csv:md5,bf21e8194639a2c76757c6cc139f3587", + "clusters.csv:md5,d89708d2e1563ff7e37acdea780b0498", + "clusters.csv:md5,85dd6df9f396ca3139a4e55909f6f92b", + "clusters.csv:md5,94a6e3bd912bdf13803d88aa096a5be8", + "clusters.csv:md5,064b41041c22add1e5552d0c7b4e5832", + "clusters.csv:md5,011066007d095b391457962845d26666", + "clusters.csv:md5,068bcdb6e5a35a3a61c5c3fbfae288e7", + "clusters.csv:md5,c481def5dfe5b29c08820a93518ebfe4", + "differential_expression.csv:md5,e6280f2578fbffc1a6576db38f558776", + "differential_expression.csv:md5,8aa6dcaed55d07ba239185fbc7bd5098", + "differential_expression.csv:md5,939a85957ed56ef49d95bc3b931b2062", + "differential_expression.csv:md5,d75c1303ad2f3bea25603b6782d5525f", + "differential_expression.csv:md5,71f68feebe08683cc1fa9637505e07da", + "differential_expression.csv:md5,6da2ad7ffd11a478bac075b5b7b0f96c", + "differential_expression.csv:md5,604477449344f2b6ac488e9865e6bc06", + "differential_expression.csv:md5,0de6addf051996084bf6aa80d7b862cf", + "differential_expression.csv:md5,01b0890d36261d20b2e5bba9409a0c2c", + "differential_expression.csv:md5,48e9c43e99e02d33c16aa5827eee0421", + "dispersion.csv:md5,9a2ad42591a18a8db3f070f3bcc50540", + "features_selected.csv:md5,38de0a2af6ef6ddd41a68a7b70ed6969", + "filtered_feature_cell_matrix.h5:md5,697da3ee8d1ba0f2946c89264aaf8a8d", + "matrix.mtx.gz:md5,873d6b5764a309662bf95e7a9a719e66", + "matrix.mtx.gz:md5,6752fd826ba11e198151acd01f777c00", + "aligned_fiducials.jpg:md5,6b38b6b480b0abaf8c74b445acfa9153", + "aligned_tissue_image.jpg:md5,bc12089729d5cdfb06ae0591eefc8417", + "cytassist_image.tiff:md5,1328dd8ea02922375719f38e3de516ca", + "detected_tissue_image.jpg:md5,a29e4dbf4b39d7cda3e381050d81b92e", + "aligned_fiducials.jpg:md5,6b38b6b480b0abaf8c74b445acfa9153", + "aligned_tissue_image.jpg:md5,bc12089729d5cdfb06ae0591eefc8417", + "cytassist_image.tiff:md5,1328dd8ea02922375719f38e3de516ca", + "detected_tissue_image.jpg:md5,a29e4dbf4b39d7cda3e381050d81b92e", + "report-integrated.qmd:md5,a669fd7ba5e9658198c220b37bd66818", + "report-integrated.yml:md5,a4d0e2a88b83c3c5035ab9570430991e", + "multiqc_citations.txt:md5,4c806e63a283ec1b7e78cdae3a923d4f" + ], + [ + { + "file": "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2-raw.h5ad", + "contents": { + "n_obs": 105978, + "n_vars": 18085, + "obs": { + "index": "_index", + "columns": [ + "array_col", + "array_row", + "in_tissue", + "location_id", + "region" + ] + }, + "var": { + "index": "_index", + "columns": [ + "feature_types", + "gene_ids", + "genome" + ] + }, + "layers": [ + "raw" + ], + "obsm": [ + "spatial" + ], + "varm": [ + + ], + "obsp": [ + + ], + "varp": [ + + ], + "uns": [ + "coordinate_system", + "sample_id", + "spatial", + "spatialdata_attrs", + "table_name" + ] + } + }, + { + "file": "Visium_HD_Human_Lung_Cancer_HD_Only_Experiment2.h5ad", + "contents": { + "n_obs": 466, + "n_vars": 14756, + "obs": { + "index": "_index", + "columns": [ + "array_col", + "array_row", + "clusters", + "in_tissue", + "location_id", + "n_counts", + "n_genes", + "n_genes_by_counts", + "pct_counts_hb", + "pct_counts_in_top_100_genes", + "pct_counts_in_top_200_genes", + "pct_counts_in_top_500_genes", + "pct_counts_in_top_50_genes", + "pct_counts_mt", + "pct_counts_ribo", + "region", + "total_counts", + "total_counts_hb", + "total_counts_mt", + "total_counts_normalized", + "total_counts_ribo" + ] + }, + "var": { + "index": "_index", + "columns": [ + "dispersions", + "dispersions_norm", + "feature_types", + "gene_ids", + "genome", + "hb", + "highly_variable", + "mean_counts", + "means", + "mt", + "n_cells", + "n_cells_by_counts", + "pct_dropout_by_counts", + "ribo", + "total_counts" + ] + }, + "layers": [ + "raw" + ], + "obsm": [ + "X_pca", + "X_umap", + "spatial" + ], + "varm": [ + "PCs" + ], + "obsp": [ + "connectivities", + "distances", + "spatial_connectivities", + "spatial_distances" + ], + "varp": [ + + ], + "uns": [ + "X_umap", + "clusters", + "clusters_interactions", + "clusters_nhood_enrichment", + "coordinate_system", + "filtering_stats", + "hvg", + "leiden", + "log1p", + "moranI", + "neighbors", + "normalization", + "pca", + "rank_genes_groups", + "sample_id", + "spatial", + "spatial_neighbors", + "spatialdata_attrs", + "table_name" + ] + } + }, + { + "file": "harmony.h5ad", + "contents": { + "n_obs": 466, + "n_vars": 14756, + "obs": { + "index": "_index", + "columns": [ + "array_col", + "array_row", + "clusters", + "clusters_harmony", + "in_tissue", + "library_id", + "location_id", + "n_counts", + "n_genes", + "n_genes_by_counts", + "pct_counts_hb", + "pct_counts_in_top_100_genes", + "pct_counts_in_top_200_genes", + "pct_counts_in_top_500_genes", + "pct_counts_in_top_50_genes", + "pct_counts_mt", + "pct_counts_ribo", + "region", + "total_counts", + "total_counts_hb", + "total_counts_mt", + "total_counts_normalized", + "total_counts_ribo" + ] + }, + "var": { + "index": "_index", + "columns": [ + "dispersions", + "dispersions_norm", + "feature_types", + "gene_ids", + "genome", + "hb", + "highly_variable", + "mean_counts", + "means", + "mt", + "n_cells", + "n_cells_by_counts", + "pct_dropout_by_counts", + "ribo", + "total_counts" + ] + }, + "layers": [ + "raw" + ], + "obsm": [ + "X_harmony", + "X_pca", + "X_umap", + "X_umap_harmony", + "spatial" + ], + "varm": [ + + ], + "obsp": [ + "connectivities", + "distances" + ], + "varp": [ + + ], + "uns": [ + "X_umap_harmony", + "clusters_harmony", + "leiden", + "merge", + "neighbors", + "spatial" + ] + } + } + ] ], + "timestamp": "2026-04-05T20:51:39.660497734", "meta": { - "nf-test": "0.9.3", - "nextflow": "25.10.0" - }, - "timestamp": "2026-02-11T16:51:37.606594652" + "nf-test": "0.9.5", + "nextflow": "25.10.4" + } } } \ No newline at end of file diff --git a/tests/test_spaceranger_ffpe_v1.nf.test b/tests/test_spaceranger_ffpe_v1.nf.test index 6c6dd699..288eacf2 100644 --- a/tests/test_spaceranger_ffpe_v1.nf.test +++ b/tests/test_spaceranger_ffpe_v1.nf.test @@ -14,35 +14,55 @@ nextflow_pipeline { } then { - assertAll( - // Workflow - { assert workflow.success }, - { assert snapshot(removeNextflowVersion("$outputDir/pipeline_info/nf_core_spatialvi_software_mqc_versions.yml")).match() }, + // Names of all output files and directories (unstable contents) + def stable_name = getAllFilesFromDir( + params.outdir, + relative: true, + includeDir: true, + ignore: ['pipeline_info/*.{html,json,txt}', '**/*.zarr/**'] + ) + + // Names of all SpatialData (.zarr) files and directories (unstable contents) + def stable_name_zarr = getAllFilesFromDir( + params.outdir, + relative: true, + includeDir: true, + include: ['**/*.zarr/**'] + ) - // Data - { assert file("$outputDir/Visium_FFPE_Human_Ovarian_Cancer/data/adata_processed.h5ad").exists() }, - { assert file("$outputDir/Visium_FFPE_Human_Ovarian_Cancer/data/sdata_processed.zarr").exists() }, + // Paths of all output files (stable contents) + def stable_path = getAllFilesFromDir( + params.outdir, + ignoreFile: 'tests/.nftignore' + ) - // Reports - { assert file("$outputDir/Visium_FFPE_Human_Ovarian_Cancer/reports/quality_controls.html").text.contains("final results of all the filtering") }, - { assert file("$outputDir/Visium_FFPE_Human_Ovarian_Cancer/reports/clustering.html").text.contains("spatial distribution of clusters") }, - { assert file("$outputDir/Visium_FFPE_Human_Ovarian_Cancer/reports/spatially_variable_genes.html").text.contains("Spatial transcriptomics data can give insight") }, + // JSON-formatted AnnData information (unstable contents) + def adata_files = getAllFilesFromDir( + params.outdir, + include: ['**/*.h5ad'] + ).sort { it.name } + .collect { file -> + [ + file: file.name, + contents: anndata(file.toPath()).yaml + ] + } - // Spatially variable genes - { assert file("$outputDir/Visium_FFPE_Human_Ovarian_Cancer/data/spatially_variable_genes.csv").exists() }, + assertAll( - // Space Ranger - { assert file("$outputDir/Visium_FFPE_Human_Ovarian_Cancer/spaceranger/outs/web_summary.html").exists() }, + { assert workflow.success}, { assert snapshot( - path("$outputDir/Visium_FFPE_Human_Ovarian_Cancer/spaceranger/outs/raw_feature_bc_matrix.h5"), - path("$outputDir/Visium_FFPE_Human_Ovarian_Cancer/spaceranger/outs/filtered_feature_bc_matrix.h5"), - )}, - { assert file("$outputDir/Visium_FFPE_Human_Ovarian_Cancer/spaceranger/outs/raw_feature_bc_matrix.h5").exists() }, - { assert file("$outputDir/Visium_FFPE_Human_Ovarian_Cancer/spaceranger/outs/spatial/tissue_positions.csv").exists() }, - - // MultiQC - { assert file("$outputDir/multiqc/multiqc_report.html").text.contains("Visium_FFPE_Human_Ovarian_Cancer")} + // Number of successful tasks + workflow.trace.succeeded().size(), + // Pipeline versions.yml file for multiqc from which Nextflow version is removed because we tests pipelines on multiple Nextflow versions + removeNextflowVersion("$outputDir/pipeline_info/nf_core_spatialvi_software_mqc_versions.yml"), + stable_name, + stable_name_zarr, + stable_path, + adata_files + ).match() } + ) } } diff --git a/tests/test_spaceranger_ffpe_v1.nf.test.snap b/tests/test_spaceranger_ffpe_v1.nf.test.snap index 7b03fa7d..c098ed6b 100644 --- a/tests/test_spaceranger_ffpe_v1.nf.test.snap +++ b/tests/test_spaceranger_ffpe_v1.nf.test.snap @@ -1,20 +1,104 @@ { "Space Ranger FFPE v1 Standard": { "content": [ + 31, { - "CLUSTERING": { - "papermill": "2.6.0", - "quarto": "1.8.25" + "ADATA_MERGE": { + "anndata": "0.12.4", + "python": "3.12.12" }, "FASTQC": { "fastqc": "0.12.1" }, - "QUALITY_CONTROLS": { + "REPORT": { "papermill": "2.6.0", "quarto": "1.8.25" }, - "READ_DATA": { - "read_data": "0.2.0" + "REPORT_INTEGRATED": { + "papermill": "2.6.0", + "quarto": "1.8.25" + }, + "SCANPY_CALCULATE_QC_METRICS": { + "anndata": "0.12.4", + "python": "3.12.12", + "scanpy": "1.11.5" + }, + "SCANPY_FILTER": { + "anndata": "0.12.4", + "python": "3.12.12", + "scanpy": "1.11.5" + }, + "SCANPY_HARMONY": { + "anndata": "0.12.4", + "harmonypy": "0.0.10", + "python": "3.12.12", + "scanpy": "1.11.5" + }, + "SCANPY_HIGHLY_VARIABLE_GENES": { + "anndata": "0.12.4", + "python": "3.12.12", + "scanpy": "1.11.5" + }, + "SCANPY_LEIDEN": { + "anndata": "0.12.4", + "leidenalg": "0.10.2", + "python": "3.12.12", + "scanpy": "1.11.5" + }, + "SCANPY_LOG1P": { + "anndata": "0.12.4", + "python": "3.12.12", + "scanpy": "1.11.5" + }, + "SCANPY_NEIGHBORS": { + "anndata": "0.12.4", + "python": "3.12.12", + "scanpy": "1.11.5" + }, + "SCANPY_NORMALIZE_TOTAL": { + "anndata": "0.12.4", + "python": "3.12.12", + "scanpy": "1.11.5" + }, + "SCANPY_PCA": { + "anndata": "0.12.4", + "python": "3.12.12", + "scanpy": "1.11.5" + }, + "SCANPY_RANK_GENES_GROUPS": { + "anndata": "0.12.4", + "python": "3.12.12", + "scanpy": "1.11.5" + }, + "SCANPY_UMAP": { + "anndata": "0.12.4", + "python": "3.12.12", + "scanpy": "1.11.5" + }, + "SDATA_MERGE": { + "python": "3.12.12", + "spatialdata": "0.5.0" + }, + "SDATA_READ_VISIUM": { + "python": "3.12.12", + "spatialdata": "0.5.0", + "spatialdata-io": "0.2.0" + }, + "SDATA_TO_LEGACY_ANNDATA": { + "anndata": "0.12.4", + "python": "3.12.12", + "spatialdata": "0.5.0", + "spatialdata-io": "0.2.0" + }, + "SDATA_UPDATE_TABLE": { + "anndata": "0.12.4", + "python": "3.12.12", + "spatialdata": "0.5.0" + }, + "SDATA_UPDATE_TABLE_INTEGRATION": { + "anndata": "0.12.4", + "python": "3.12.12", + "spatialdata": "0.5.0" }, "SPACERANGER_COUNT": { "spaceranger": "4.0.1" @@ -22,9 +106,25 @@ "SPACERANGER_UNTAR_REFERENCE": { "untar": 1.34 }, - "SPATIALLY_VARIABLE_GENES": { - "papermill": "2.6.0", - "quarto": "1.8.25" + "SQUIDPY_INTERACTION_MATRIX": { + "anndata": "0.12.4", + "python": "3.12.12", + "squidpy": "1.6.5" + }, + "SQUIDPY_NHOOD_ENRICHMENT": { + "anndata": "0.12.4", + "python": "3.12.12", + "squidpy": "1.6.5" + }, + "SQUIDPY_SPATIAL_AUTOCORR": { + "anndata": "0.12.4", + "python": "3.12.12", + "squidpy": "1.6.5" + }, + "SQUIDPY_SPATIAL_NEIGHBORS": { + "anndata": "0.12.4", + "python": "3.12.12", + "squidpy": "1.6.5" }, "UNTAR_SPACERANGER_INPUT": { "untar": 1.34 @@ -32,12 +132,2179 @@ "Workflow": { "nf-core/spatialvi": "v1.0dev" } - } + }, + [ + "Visium_FFPE_Human_Ovarian_Cancer", + "Visium_FFPE_Human_Ovarian_Cancer/data", + "Visium_FFPE_Human_Ovarian_Cancer/data/Visium_FFPE_Human_Ovarian_Cancer-raw.h5ad", + "Visium_FFPE_Human_Ovarian_Cancer/data/Visium_FFPE_Human_Ovarian_Cancer.h5ad", + "Visium_FFPE_Human_Ovarian_Cancer/data/Visium_FFPE_Human_Ovarian_Cancer_svg.csv", + "Visium_FFPE_Human_Ovarian_Cancer/fastqc", + "Visium_FFPE_Human_Ovarian_Cancer/fastqc/Visium_FFPE_Human_Ovarian_Cancer_1_fastqc.html", + "Visium_FFPE_Human_Ovarian_Cancer/fastqc/Visium_FFPE_Human_Ovarian_Cancer_1_fastqc.zip", + "Visium_FFPE_Human_Ovarian_Cancer/fastqc/Visium_FFPE_Human_Ovarian_Cancer_2_fastqc.html", + "Visium_FFPE_Human_Ovarian_Cancer/fastqc/Visium_FFPE_Human_Ovarian_Cancer_2_fastqc.zip", + "Visium_FFPE_Human_Ovarian_Cancer/plots", + "Visium_FFPE_Human_Ovarian_Cancer/plots/cluster_sizes.png", + "Visium_FFPE_Human_Ovarian_Cancer/plots/clusters-spatial.png", + "Visium_FFPE_Human_Ovarian_Cancer/plots/deg-dotplot.png", + "Visium_FFPE_Human_Ovarian_Cancer/plots/deg-heatmap.png", + "Visium_FFPE_Human_Ovarian_Cancer/plots/highly-variable-genes.png", + "Visium_FFPE_Human_Ovarian_Cancer/plots/interaction-matrix.png", + "Visium_FFPE_Human_Ovarian_Cancer/plots/neighborhood-enrichment.png", + "Visium_FFPE_Human_Ovarian_Cancer/plots/pca.png", + "Visium_FFPE_Human_Ovarian_Cancer/plots/qc-distribution-n_genes_by_counts.png", + "Visium_FFPE_Human_Ovarian_Cancer/plots/qc-distribution-pct_counts_hb.png", + "Visium_FFPE_Human_Ovarian_Cancer/plots/qc-distribution-pct_counts_mt.png", + "Visium_FFPE_Human_Ovarian_Cancer/plots/qc-distribution-pct_counts_ribo.png", + "Visium_FFPE_Human_Ovarian_Cancer/plots/qc-distribution-total_counts.png", + "Visium_FFPE_Human_Ovarian_Cancer/plots/qc-spatial-n_genes_by_counts.png", + "Visium_FFPE_Human_Ovarian_Cancer/plots/qc-spatial-pct_counts_hb.png", + "Visium_FFPE_Human_Ovarian_Cancer/plots/qc-spatial-pct_counts_mt.png", + "Visium_FFPE_Human_Ovarian_Cancer/plots/qc-spatial-pct_counts_ribo.png", + "Visium_FFPE_Human_Ovarian_Cancer/plots/qc-spatial-total_counts.png", + "Visium_FFPE_Human_Ovarian_Cancer/plots/spatial-ENSG00000088247.png", + "Visium_FFPE_Human_Ovarian_Cancer/plots/spatial-ENSG00000103018.png", + "Visium_FFPE_Human_Ovarian_Cancer/plots/spatial-ENSG00000126749.png", + "Visium_FFPE_Human_Ovarian_Cancer/plots/spatial-ENSG00000180879.png", + "Visium_FFPE_Human_Ovarian_Cancer/plots/spatial-ENSG00000181143.png", + "Visium_FFPE_Human_Ovarian_Cancer/plots/spatial-ENSG00000198668.png", + "Visium_FFPE_Human_Ovarian_Cancer/plots/spatial-ENSG00000204592.png", + "Visium_FFPE_Human_Ovarian_Cancer/plots/spatial-ENSG00000211893.png", + "Visium_FFPE_Human_Ovarian_Cancer/plots/spatial-ENSG00000213614.png", + "Visium_FFPE_Human_Ovarian_Cancer/plots/umap-clusters.png", + "Visium_FFPE_Human_Ovarian_Cancer/plots/umap-n_genes_by_counts.png", + "Visium_FFPE_Human_Ovarian_Cancer/plots/umap-pct_counts_hb.png", + "Visium_FFPE_Human_Ovarian_Cancer/plots/umap-pct_counts_mt.png", + "Visium_FFPE_Human_Ovarian_Cancer/plots/umap-pct_counts_ribo.png", + "Visium_FFPE_Human_Ovarian_Cancer/plots/umap-total_counts.png", + "Visium_FFPE_Human_Ovarian_Cancer/reports", + "Visium_FFPE_Human_Ovarian_Cancer/reports/_extensions", + "Visium_FFPE_Human_Ovarian_Cancer/reports/_extensions/nf-core", + "Visium_FFPE_Human_Ovarian_Cancer/reports/_extensions/nf-core/_extension.yml", + "Visium_FFPE_Human_Ovarian_Cancer/reports/_extensions/nf-core/nf-core-spatialvi_logo_light.png", + "Visium_FFPE_Human_Ovarian_Cancer/reports/_extensions/nf-core/nf-core.scss", + "Visium_FFPE_Human_Ovarian_Cancer/reports/_extensions/nf-core/nf-core.theme", + "Visium_FFPE_Human_Ovarian_Cancer/reports/_extensions/nf-core/toc.html", + "Visium_FFPE_Human_Ovarian_Cancer/reports/report-Visium_FFPE_Human_Ovarian_Cancer.html", + "Visium_FFPE_Human_Ovarian_Cancer/reports/report.qmd", + "Visium_FFPE_Human_Ovarian_Cancer/reports/report.yml", + "Visium_FFPE_Human_Ovarian_Cancer/spaceranger", + "Visium_FFPE_Human_Ovarian_Cancer/spaceranger/outs", + "Visium_FFPE_Human_Ovarian_Cancer/spaceranger/outs/analysis", + "Visium_FFPE_Human_Ovarian_Cancer/spaceranger/outs/analysis/clustering", + "Visium_FFPE_Human_Ovarian_Cancer/spaceranger/outs/analysis/clustering/gene_expression_graphclust", + "Visium_FFPE_Human_Ovarian_Cancer/spaceranger/outs/analysis/clustering/gene_expression_graphclust/clusters.csv", + "Visium_FFPE_Human_Ovarian_Cancer/spaceranger/outs/analysis/clustering/gene_expression_kmeans_10_clusters", + "Visium_FFPE_Human_Ovarian_Cancer/spaceranger/outs/analysis/clustering/gene_expression_kmeans_10_clusters/clusters.csv", + "Visium_FFPE_Human_Ovarian_Cancer/spaceranger/outs/analysis/clustering/gene_expression_kmeans_2_clusters", + "Visium_FFPE_Human_Ovarian_Cancer/spaceranger/outs/analysis/clustering/gene_expression_kmeans_2_clusters/clusters.csv", + "Visium_FFPE_Human_Ovarian_Cancer/spaceranger/outs/analysis/clustering/gene_expression_kmeans_3_clusters", + "Visium_FFPE_Human_Ovarian_Cancer/spaceranger/outs/analysis/clustering/gene_expression_kmeans_3_clusters/clusters.csv", + "Visium_FFPE_Human_Ovarian_Cancer/spaceranger/outs/analysis/clustering/gene_expression_kmeans_4_clusters", + "Visium_FFPE_Human_Ovarian_Cancer/spaceranger/outs/analysis/clustering/gene_expression_kmeans_4_clusters/clusters.csv", + "Visium_FFPE_Human_Ovarian_Cancer/spaceranger/outs/analysis/clustering/gene_expression_kmeans_5_clusters", + "Visium_FFPE_Human_Ovarian_Cancer/spaceranger/outs/analysis/clustering/gene_expression_kmeans_5_clusters/clusters.csv", + "Visium_FFPE_Human_Ovarian_Cancer/spaceranger/outs/analysis/clustering/gene_expression_kmeans_6_clusters", + "Visium_FFPE_Human_Ovarian_Cancer/spaceranger/outs/analysis/clustering/gene_expression_kmeans_6_clusters/clusters.csv", + "Visium_FFPE_Human_Ovarian_Cancer/spaceranger/outs/analysis/clustering/gene_expression_kmeans_7_clusters", + "Visium_FFPE_Human_Ovarian_Cancer/spaceranger/outs/analysis/clustering/gene_expression_kmeans_7_clusters/clusters.csv", + "Visium_FFPE_Human_Ovarian_Cancer/spaceranger/outs/analysis/clustering/gene_expression_kmeans_8_clusters", + "Visium_FFPE_Human_Ovarian_Cancer/spaceranger/outs/analysis/clustering/gene_expression_kmeans_8_clusters/clusters.csv", + "Visium_FFPE_Human_Ovarian_Cancer/spaceranger/outs/analysis/clustering/gene_expression_kmeans_9_clusters", + "Visium_FFPE_Human_Ovarian_Cancer/spaceranger/outs/analysis/clustering/gene_expression_kmeans_9_clusters/clusters.csv", + "Visium_FFPE_Human_Ovarian_Cancer/spaceranger/outs/analysis/diffexp", + "Visium_FFPE_Human_Ovarian_Cancer/spaceranger/outs/analysis/diffexp/gene_expression_graphclust", + "Visium_FFPE_Human_Ovarian_Cancer/spaceranger/outs/analysis/diffexp/gene_expression_graphclust/differential_expression.csv", + "Visium_FFPE_Human_Ovarian_Cancer/spaceranger/outs/analysis/diffexp/gene_expression_kmeans_10_clusters", + "Visium_FFPE_Human_Ovarian_Cancer/spaceranger/outs/analysis/diffexp/gene_expression_kmeans_10_clusters/differential_expression.csv", + "Visium_FFPE_Human_Ovarian_Cancer/spaceranger/outs/analysis/diffexp/gene_expression_kmeans_2_clusters", + "Visium_FFPE_Human_Ovarian_Cancer/spaceranger/outs/analysis/diffexp/gene_expression_kmeans_2_clusters/differential_expression.csv", + "Visium_FFPE_Human_Ovarian_Cancer/spaceranger/outs/analysis/diffexp/gene_expression_kmeans_3_clusters", + "Visium_FFPE_Human_Ovarian_Cancer/spaceranger/outs/analysis/diffexp/gene_expression_kmeans_3_clusters/differential_expression.csv", + "Visium_FFPE_Human_Ovarian_Cancer/spaceranger/outs/analysis/diffexp/gene_expression_kmeans_4_clusters", + "Visium_FFPE_Human_Ovarian_Cancer/spaceranger/outs/analysis/diffexp/gene_expression_kmeans_4_clusters/differential_expression.csv", + "Visium_FFPE_Human_Ovarian_Cancer/spaceranger/outs/analysis/diffexp/gene_expression_kmeans_5_clusters", + "Visium_FFPE_Human_Ovarian_Cancer/spaceranger/outs/analysis/diffexp/gene_expression_kmeans_5_clusters/differential_expression.csv", + "Visium_FFPE_Human_Ovarian_Cancer/spaceranger/outs/analysis/diffexp/gene_expression_kmeans_6_clusters", + "Visium_FFPE_Human_Ovarian_Cancer/spaceranger/outs/analysis/diffexp/gene_expression_kmeans_6_clusters/differential_expression.csv", + "Visium_FFPE_Human_Ovarian_Cancer/spaceranger/outs/analysis/diffexp/gene_expression_kmeans_7_clusters", + "Visium_FFPE_Human_Ovarian_Cancer/spaceranger/outs/analysis/diffexp/gene_expression_kmeans_7_clusters/differential_expression.csv", + "Visium_FFPE_Human_Ovarian_Cancer/spaceranger/outs/analysis/diffexp/gene_expression_kmeans_8_clusters", + "Visium_FFPE_Human_Ovarian_Cancer/spaceranger/outs/analysis/diffexp/gene_expression_kmeans_8_clusters/differential_expression.csv", + "Visium_FFPE_Human_Ovarian_Cancer/spaceranger/outs/analysis/diffexp/gene_expression_kmeans_9_clusters", + "Visium_FFPE_Human_Ovarian_Cancer/spaceranger/outs/analysis/diffexp/gene_expression_kmeans_9_clusters/differential_expression.csv", + "Visium_FFPE_Human_Ovarian_Cancer/spaceranger/outs/analysis/pca", + "Visium_FFPE_Human_Ovarian_Cancer/spaceranger/outs/analysis/pca/gene_expression_8_components", + "Visium_FFPE_Human_Ovarian_Cancer/spaceranger/outs/analysis/pca/gene_expression_8_components/components.csv", + "Visium_FFPE_Human_Ovarian_Cancer/spaceranger/outs/analysis/pca/gene_expression_8_components/dispersion.csv", + "Visium_FFPE_Human_Ovarian_Cancer/spaceranger/outs/analysis/pca/gene_expression_8_components/features_selected.csv", + "Visium_FFPE_Human_Ovarian_Cancer/spaceranger/outs/analysis/pca/gene_expression_8_components/projection.csv", + "Visium_FFPE_Human_Ovarian_Cancer/spaceranger/outs/analysis/pca/gene_expression_8_components/variance.csv", + "Visium_FFPE_Human_Ovarian_Cancer/spaceranger/outs/analysis/tsne", + "Visium_FFPE_Human_Ovarian_Cancer/spaceranger/outs/analysis/tsne/gene_expression_2_components", + "Visium_FFPE_Human_Ovarian_Cancer/spaceranger/outs/analysis/tsne/gene_expression_2_components/projection.csv", + "Visium_FFPE_Human_Ovarian_Cancer/spaceranger/outs/analysis/umap", + "Visium_FFPE_Human_Ovarian_Cancer/spaceranger/outs/analysis/umap/gene_expression_2_components", + "Visium_FFPE_Human_Ovarian_Cancer/spaceranger/outs/analysis/umap/gene_expression_2_components/projection.csv", + "Visium_FFPE_Human_Ovarian_Cancer/spaceranger/outs/cloupe.cloupe", + "Visium_FFPE_Human_Ovarian_Cancer/spaceranger/outs/filtered_feature_bc_matrix", + "Visium_FFPE_Human_Ovarian_Cancer/spaceranger/outs/filtered_feature_bc_matrix.h5", + "Visium_FFPE_Human_Ovarian_Cancer/spaceranger/outs/filtered_feature_bc_matrix/barcodes.tsv.gz", + "Visium_FFPE_Human_Ovarian_Cancer/spaceranger/outs/filtered_feature_bc_matrix/features.tsv.gz", + "Visium_FFPE_Human_Ovarian_Cancer/spaceranger/outs/filtered_feature_bc_matrix/matrix.mtx.gz", + "Visium_FFPE_Human_Ovarian_Cancer/spaceranger/outs/metrics_summary.csv", + "Visium_FFPE_Human_Ovarian_Cancer/spaceranger/outs/molecule_info.h5", + "Visium_FFPE_Human_Ovarian_Cancer/spaceranger/outs/probe_set.csv", + "Visium_FFPE_Human_Ovarian_Cancer/spaceranger/outs/raw_feature_bc_matrix", + "Visium_FFPE_Human_Ovarian_Cancer/spaceranger/outs/raw_feature_bc_matrix.h5", + "Visium_FFPE_Human_Ovarian_Cancer/spaceranger/outs/raw_feature_bc_matrix/barcodes.tsv.gz", + "Visium_FFPE_Human_Ovarian_Cancer/spaceranger/outs/raw_feature_bc_matrix/features.tsv.gz", + "Visium_FFPE_Human_Ovarian_Cancer/spaceranger/outs/raw_feature_bc_matrix/matrix.mtx.gz", + "Visium_FFPE_Human_Ovarian_Cancer/spaceranger/outs/raw_probe_bc_matrix.h5", + "Visium_FFPE_Human_Ovarian_Cancer/spaceranger/outs/spatial", + "Visium_FFPE_Human_Ovarian_Cancer/spaceranger/outs/spatial/aligned_fiducials.jpg", + "Visium_FFPE_Human_Ovarian_Cancer/spaceranger/outs/spatial/detected_tissue_image.jpg", + "Visium_FFPE_Human_Ovarian_Cancer/spaceranger/outs/spatial/scalefactors_json.json", + "Visium_FFPE_Human_Ovarian_Cancer/spaceranger/outs/spatial/spatial_enrichment.csv", + "Visium_FFPE_Human_Ovarian_Cancer/spaceranger/outs/spatial/tissue_hires_image.png", + "Visium_FFPE_Human_Ovarian_Cancer/spaceranger/outs/spatial/tissue_lowres_image.png", + "Visium_FFPE_Human_Ovarian_Cancer/spaceranger/outs/spatial/tissue_positions.csv", + "Visium_FFPE_Human_Ovarian_Cancer/spaceranger/outs/web_summary.html", + "integration", + "integration/data", + "integration/data/harmony.h5ad", + "integration/data/harmony.zarr", + "integration/data/merged.zarr", + "integration/plots", + "integration/plots/spatial-Visium_FFPE_Human_Ovarian_Cancer.png", + "integration/plots/umap-clusters_harmony.png", + "integration/plots/umap-library_id.png", + "integration/plots/umap-n_genes_by_counts.png", + "integration/plots/umap-pct_counts_hb.png", + "integration/plots/umap-pct_counts_mt.png", + "integration/plots/umap-pct_counts_ribo.png", + "integration/plots/umap-total_counts.png", + "integration/reports", + "integration/reports/_extensions", + "integration/reports/_extensions/nf-core", + "integration/reports/_extensions/nf-core/_extension.yml", + "integration/reports/_extensions/nf-core/nf-core-spatialvi_logo_light.png", + "integration/reports/_extensions/nf-core/nf-core.scss", + "integration/reports/_extensions/nf-core/nf-core.theme", + "integration/reports/_extensions/nf-core/toc.html", + "integration/reports/report-integrated.html", + "integration/reports/report-integrated.qmd", + "integration/reports/report-integrated.yml", + "multiqc", + "multiqc/multiqc_data", + "multiqc/multiqc_data/BETA-multiqc.parquet", + "multiqc/multiqc_data/fastqc-status-check-heatmap.txt", + "multiqc/multiqc_data/fastqc_adapter_content_plot.txt", + "multiqc/multiqc_data/fastqc_overrepresented_sequences_plot.txt", + "multiqc/multiqc_data/fastqc_per_base_n_content_plot.txt", + "multiqc/multiqc_data/fastqc_per_base_sequence_quality_plot.txt", + "multiqc/multiqc_data/fastqc_per_sequence_gc_content_plot_Counts.txt", + "multiqc/multiqc_data/fastqc_per_sequence_gc_content_plot_Percentages.txt", + "multiqc/multiqc_data/fastqc_per_sequence_quality_scores_plot.txt", + "multiqc/multiqc_data/fastqc_sequence_counts_plot.txt", + "multiqc/multiqc_data/fastqc_sequence_duplication_levels_plot.txt", + "multiqc/multiqc_data/fastqc_top_overrepresented_sequences_table.txt", + "multiqc/multiqc_data/mqc_spaceranger_count_genesXspot.txt", + "multiqc/multiqc_data/mqc_spaceranger_count_saturation.txt", + "multiqc/multiqc_data/multiqc.log", + "multiqc/multiqc_data/multiqc_citations.txt", + "multiqc/multiqc_data/multiqc_data.json", + "multiqc/multiqc_data/multiqc_fastqc.txt", + "multiqc/multiqc_data/multiqc_general_stats.txt", + "multiqc/multiqc_data/multiqc_software_versions.txt", + "multiqc/multiqc_data/multiqc_sources.txt", + "multiqc/multiqc_data/multiqc_spaceranger_count.txt", + "multiqc/multiqc_data/spaceranger-count-stats.txt", + "multiqc/multiqc_plots", + "multiqc/multiqc_plots/pdf", + "multiqc/multiqc_plots/pdf/fastqc-status-check-heatmap.pdf", + "multiqc/multiqc_plots/pdf/fastqc_adapter_content_plot.pdf", + "multiqc/multiqc_plots/pdf/fastqc_overrepresented_sequences_plot.pdf", + "multiqc/multiqc_plots/pdf/fastqc_per_base_n_content_plot.pdf", + "multiqc/multiqc_plots/pdf/fastqc_per_base_sequence_quality_plot.pdf", + "multiqc/multiqc_plots/pdf/fastqc_per_sequence_gc_content_plot_Counts.pdf", + "multiqc/multiqc_plots/pdf/fastqc_per_sequence_gc_content_plot_Percentages.pdf", + "multiqc/multiqc_plots/pdf/fastqc_per_sequence_quality_scores_plot.pdf", + "multiqc/multiqc_plots/pdf/fastqc_sequence_counts_plot-cnt.pdf", + "multiqc/multiqc_plots/pdf/fastqc_sequence_counts_plot-pct.pdf", + "multiqc/multiqc_plots/pdf/fastqc_sequence_duplication_levels_plot.pdf", + "multiqc/multiqc_plots/pdf/fastqc_top_overrepresented_sequences_table.pdf", + "multiqc/multiqc_plots/pdf/mqc_spaceranger_count_genesXspot.pdf", + "multiqc/multiqc_plots/pdf/mqc_spaceranger_count_saturation.pdf", + "multiqc/multiqc_plots/pdf/spaceranger-count-stats.pdf", + "multiqc/multiqc_plots/png", + "multiqc/multiqc_plots/png/fastqc-status-check-heatmap.png", + "multiqc/multiqc_plots/png/fastqc_adapter_content_plot.png", + "multiqc/multiqc_plots/png/fastqc_overrepresented_sequences_plot.png", + "multiqc/multiqc_plots/png/fastqc_per_base_n_content_plot.png", + "multiqc/multiqc_plots/png/fastqc_per_base_sequence_quality_plot.png", + "multiqc/multiqc_plots/png/fastqc_per_sequence_gc_content_plot_Counts.png", + "multiqc/multiqc_plots/png/fastqc_per_sequence_gc_content_plot_Percentages.png", + "multiqc/multiqc_plots/png/fastqc_per_sequence_quality_scores_plot.png", + "multiqc/multiqc_plots/png/fastqc_sequence_counts_plot-cnt.png", + "multiqc/multiqc_plots/png/fastqc_sequence_counts_plot-pct.png", + "multiqc/multiqc_plots/png/fastqc_sequence_duplication_levels_plot.png", + "multiqc/multiqc_plots/png/fastqc_top_overrepresented_sequences_table.png", + "multiqc/multiqc_plots/png/mqc_spaceranger_count_genesXspot.png", + "multiqc/multiqc_plots/png/mqc_spaceranger_count_saturation.png", + "multiqc/multiqc_plots/png/spaceranger-count-stats.png", + "multiqc/multiqc_plots/svg", + "multiqc/multiqc_plots/svg/fastqc-status-check-heatmap.svg", + "multiqc/multiqc_plots/svg/fastqc_adapter_content_plot.svg", + "multiqc/multiqc_plots/svg/fastqc_overrepresented_sequences_plot.svg", + "multiqc/multiqc_plots/svg/fastqc_per_base_n_content_plot.svg", + "multiqc/multiqc_plots/svg/fastqc_per_base_sequence_quality_plot.svg", + "multiqc/multiqc_plots/svg/fastqc_per_sequence_gc_content_plot_Counts.svg", + "multiqc/multiqc_plots/svg/fastqc_per_sequence_gc_content_plot_Percentages.svg", + "multiqc/multiqc_plots/svg/fastqc_per_sequence_quality_scores_plot.svg", + "multiqc/multiqc_plots/svg/fastqc_sequence_counts_plot-cnt.svg", + "multiqc/multiqc_plots/svg/fastqc_sequence_counts_plot-pct.svg", + "multiqc/multiqc_plots/svg/fastqc_sequence_duplication_levels_plot.svg", + "multiqc/multiqc_plots/svg/fastqc_top_overrepresented_sequences_table.svg", + "multiqc/multiqc_plots/svg/mqc_spaceranger_count_genesXspot.svg", + "multiqc/multiqc_plots/svg/mqc_spaceranger_count_saturation.svg", + "multiqc/multiqc_plots/svg/spaceranger-count-stats.svg", + "multiqc/multiqc_report.html", + "pipeline_info", + "pipeline_info/nf_core_spatialvi_software_mqc_versions.yml" + ], + [ + "integration/data/harmony.zarr/.zattrs", + "integration/data/harmony.zarr/.zgroup", + "integration/data/harmony.zarr/images", + "integration/data/harmony.zarr/images/.zgroup", + "integration/data/harmony.zarr/images/Visium_FFPE_Human_Ovarian_Cancer_hires_image", + "integration/data/harmony.zarr/images/Visium_FFPE_Human_Ovarian_Cancer_hires_image/.zattrs", + "integration/data/harmony.zarr/images/Visium_FFPE_Human_Ovarian_Cancer_hires_image/.zgroup", + "integration/data/harmony.zarr/images/Visium_FFPE_Human_Ovarian_Cancer_hires_image/0", + "integration/data/harmony.zarr/images/Visium_FFPE_Human_Ovarian_Cancer_hires_image/0/.zarray", + "integration/data/harmony.zarr/images/Visium_FFPE_Human_Ovarian_Cancer_hires_image/0/0", + "integration/data/harmony.zarr/images/Visium_FFPE_Human_Ovarian_Cancer_hires_image/0/0/0", + "integration/data/harmony.zarr/images/Visium_FFPE_Human_Ovarian_Cancer_hires_image/0/0/0/0", + "integration/data/harmony.zarr/images/Visium_FFPE_Human_Ovarian_Cancer_lowres_image", + "integration/data/harmony.zarr/images/Visium_FFPE_Human_Ovarian_Cancer_lowres_image/.zattrs", + "integration/data/harmony.zarr/images/Visium_FFPE_Human_Ovarian_Cancer_lowres_image/.zgroup", + "integration/data/harmony.zarr/images/Visium_FFPE_Human_Ovarian_Cancer_lowres_image/0", + "integration/data/harmony.zarr/images/Visium_FFPE_Human_Ovarian_Cancer_lowres_image/0/.zarray", + "integration/data/harmony.zarr/images/Visium_FFPE_Human_Ovarian_Cancer_lowres_image/0/0", + "integration/data/harmony.zarr/images/Visium_FFPE_Human_Ovarian_Cancer_lowres_image/0/0/0", + "integration/data/harmony.zarr/images/Visium_FFPE_Human_Ovarian_Cancer_lowres_image/0/0/0/0", + "integration/data/harmony.zarr/shapes", + "integration/data/harmony.zarr/shapes/.zgroup", + "integration/data/harmony.zarr/shapes/Visium_FFPE_Human_Ovarian_Cancer", + "integration/data/harmony.zarr/shapes/Visium_FFPE_Human_Ovarian_Cancer/.zattrs", + "integration/data/harmony.zarr/shapes/Visium_FFPE_Human_Ovarian_Cancer/.zgroup", + "integration/data/harmony.zarr/shapes/Visium_FFPE_Human_Ovarian_Cancer/shapes.parquet", + "integration/data/harmony.zarr/tables", + "integration/data/harmony.zarr/tables/.zgroup", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/.zgroup", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/X", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/X/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/X/.zgroup", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/X/data", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/X/data/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/X/data/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/X/indices", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/X/indices/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/X/indices/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/X/indptr", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/X/indptr/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/X/indptr/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/layers", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/layers/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/layers/.zgroup", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/layers/raw", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/layers/raw/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/layers/raw/.zgroup", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/layers/raw/data", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/layers/raw/data/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/layers/raw/data/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/layers/raw/indices", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/layers/raw/indices/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/layers/raw/indices/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/layers/raw/indptr", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/layers/raw/indptr/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/layers/raw/indptr/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/.zgroup", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/_index", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/_index/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/_index/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/_index/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/array_col", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/array_col/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/array_col/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/array_col/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/array_row", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/array_row/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/array_row/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/array_row/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/clusters", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/clusters/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/clusters/.zgroup", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/clusters/categories", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/clusters/categories/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/clusters/categories/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/clusters/categories/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/clusters/codes", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/clusters/codes/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/clusters/codes/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/clusters/codes/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/clusters_harmony", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/clusters_harmony/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/clusters_harmony/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/clusters_harmony/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/in_tissue", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/in_tissue/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/in_tissue/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/in_tissue/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/n_counts", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/n_counts/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/n_counts/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/n_counts/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/n_genes", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/n_genes/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/n_genes/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/n_genes/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/n_genes_by_counts", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/n_genes_by_counts/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/n_genes_by_counts/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/n_genes_by_counts/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/pct_counts_hb", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/pct_counts_hb/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/pct_counts_hb/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/pct_counts_hb/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/pct_counts_in_top_100_genes", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/pct_counts_in_top_100_genes/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/pct_counts_in_top_100_genes/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/pct_counts_in_top_100_genes/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/pct_counts_in_top_200_genes", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/pct_counts_in_top_200_genes/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/pct_counts_in_top_200_genes/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/pct_counts_in_top_200_genes/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/pct_counts_in_top_500_genes", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/pct_counts_in_top_500_genes/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/pct_counts_in_top_500_genes/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/pct_counts_in_top_500_genes/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/pct_counts_in_top_50_genes", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/pct_counts_in_top_50_genes/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/pct_counts_in_top_50_genes/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/pct_counts_in_top_50_genes/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/pct_counts_mt", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/pct_counts_mt/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/pct_counts_mt/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/pct_counts_mt/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/pct_counts_ribo", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/pct_counts_ribo/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/pct_counts_ribo/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/pct_counts_ribo/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/region", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/region/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/region/.zgroup", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/region/categories", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/region/categories/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/region/categories/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/region/categories/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/region/codes", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/region/codes/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/region/codes/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/region/codes/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/spot_id", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/spot_id/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/spot_id/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/spot_id/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/total_counts", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/total_counts/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/total_counts/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/total_counts/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/total_counts_hb", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/total_counts_hb/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/total_counts_hb/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/total_counts_hb/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/total_counts_mt", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/total_counts_mt/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/total_counts_mt/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/total_counts_mt/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/total_counts_normalized", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/total_counts_normalized/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/total_counts_normalized/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/total_counts_normalized/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/total_counts_ribo", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/total_counts_ribo/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/total_counts_ribo/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/total_counts_ribo/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsm", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsm/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsm/.zgroup", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsm/X_harmony", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsm/X_harmony/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsm/X_harmony/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsm/X_harmony/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsm/X_harmony/0/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsm/X_pca", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsm/X_pca/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsm/X_pca/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsm/X_pca/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsm/X_pca/0/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsm/X_umap", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsm/X_umap/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsm/X_umap/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsm/X_umap/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsm/X_umap/0/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsm/X_umap_harmony", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsm/X_umap_harmony/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsm/X_umap_harmony/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsm/X_umap_harmony/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsm/X_umap_harmony/0/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsm/spatial", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsm/spatial/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsm/spatial/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsm/spatial/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsm/spatial/0/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsp", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsp/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsp/.zgroup", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsp/connectivities", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsp/connectivities/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsp/connectivities/.zgroup", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsp/connectivities/data", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsp/connectivities/data/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsp/connectivities/data/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsp/connectivities/indices", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsp/connectivities/indices/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsp/connectivities/indices/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsp/connectivities/indptr", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsp/connectivities/indptr/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsp/connectivities/indptr/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsp/distances", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsp/distances/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsp/distances/.zgroup", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsp/distances/data", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsp/distances/data/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsp/distances/data/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsp/distances/indices", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsp/distances/indices/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsp/distances/indices/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsp/distances/indptr", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsp/distances/indptr/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsp/distances/indptr/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsp/spatial_connectivities", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsp/spatial_connectivities/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsp/spatial_connectivities/.zgroup", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsp/spatial_connectivities/data", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsp/spatial_connectivities/data/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsp/spatial_connectivities/data/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsp/spatial_connectivities/indices", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsp/spatial_connectivities/indices/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsp/spatial_connectivities/indices/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsp/spatial_connectivities/indptr", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsp/spatial_connectivities/indptr/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsp/spatial_connectivities/indptr/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsp/spatial_distances", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsp/spatial_distances/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsp/spatial_distances/.zgroup", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsp/spatial_distances/data", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsp/spatial_distances/data/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsp/spatial_distances/data/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsp/spatial_distances/indices", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsp/spatial_distances/indices/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsp/spatial_distances/indices/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsp/spatial_distances/indptr", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsp/spatial_distances/indptr/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsp/spatial_distances/indptr/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/raw", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/raw/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/raw/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/raw/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/.zgroup", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/X_umap", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/X_umap/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/X_umap/.zgroup", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/X_umap/params", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/X_umap/params/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/X_umap/params/.zgroup", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/X_umap/params/a", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/X_umap/params/a/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/X_umap/params/a/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/X_umap/params/a/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/X_umap/params/b", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/X_umap/params/b/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/X_umap/params/b/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/X_umap/params/b/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/clusters", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/clusters/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/clusters/.zgroup", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/clusters/params", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/clusters/params/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/clusters/params/.zgroup", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/clusters/params/n_iterations", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/clusters/params/n_iterations/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/clusters/params/n_iterations/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/clusters/params/n_iterations/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/clusters/params/random_state", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/clusters/params/random_state/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/clusters/params/random_state/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/clusters/params/random_state/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/clusters/params/resolution", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/clusters/params/resolution/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/clusters/params/resolution/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/clusters/params/resolution/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/clusters_interactions", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/clusters_interactions/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/clusters_interactions/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/clusters_interactions/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/clusters_interactions/0/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/clusters_nhood_enrichment", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/clusters_nhood_enrichment/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/clusters_nhood_enrichment/.zgroup", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/clusters_nhood_enrichment/count", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/clusters_nhood_enrichment/count/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/clusters_nhood_enrichment/count/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/clusters_nhood_enrichment/count/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/clusters_nhood_enrichment/count/0/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/clusters_nhood_enrichment/zscore", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/clusters_nhood_enrichment/zscore/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/clusters_nhood_enrichment/zscore/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/clusters_nhood_enrichment/zscore/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/clusters_nhood_enrichment/zscore/0/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/coordinate_system", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/coordinate_system/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/coordinate_system/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/coordinate_system/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/.zgroup", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/genes_filtered_min_obs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/genes_filtered_min_obs/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/genes_filtered_min_obs/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/genes_filtered_min_obs/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/hb_threshold", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/hb_threshold/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/hb_threshold/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/hb_threshold/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/min_counts_threshold", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/min_counts_threshold/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/min_counts_threshold/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/min_counts_threshold/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/min_genes_threshold", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/min_genes_threshold/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/min_genes_threshold/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/min_genes_threshold/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/min_obs_threshold", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/min_obs_threshold/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/min_obs_threshold/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/min_obs_threshold/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/mito_threshold", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/mito_threshold/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/mito_threshold/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/mito_threshold/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/obs_filtered_hb", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/obs_filtered_hb/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/obs_filtered_hb/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/obs_filtered_hb/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/obs_filtered_min_counts", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/obs_filtered_min_counts/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/obs_filtered_min_counts/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/obs_filtered_min_counts/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/obs_filtered_min_genes", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/obs_filtered_min_genes/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/obs_filtered_min_genes/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/obs_filtered_min_genes/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/obs_filtered_mito", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/obs_filtered_mito/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/obs_filtered_mito/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/obs_filtered_mito/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/obs_filtered_outside_tissue", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/obs_filtered_outside_tissue/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/obs_filtered_outside_tissue/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/obs_filtered_outside_tissue/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/obs_filtered_ribo", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/obs_filtered_ribo/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/obs_filtered_ribo/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/obs_filtered_ribo/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/ribo_threshold", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/ribo_threshold/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/ribo_threshold/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/ribo_threshold/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/sample_id", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/sample_id/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/sample_id/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/sample_id/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/total_genes_after", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/total_genes_after/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/total_genes_after/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/total_genes_after/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/total_genes_before", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/total_genes_before/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/total_genes_before/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/total_genes_before/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/total_genes_filtered", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/total_genes_filtered/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/total_genes_filtered/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/total_genes_filtered/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/total_obs_after", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/total_obs_after/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/total_obs_after/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/total_obs_after/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/total_obs_before", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/total_obs_before/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/total_obs_before/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/total_obs_before/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/total_obs_filtered", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/total_obs_filtered/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/total_obs_filtered/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/total_obs_filtered/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/hvg", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/hvg/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/hvg/.zgroup", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/hvg/flavor", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/hvg/flavor/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/hvg/flavor/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/hvg/flavor/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/hvg/n_hvgs_found", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/hvg/n_hvgs_found/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/hvg/n_hvgs_found/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/hvg/n_hvgs_found/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/hvg/n_hvgs_requested", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/hvg/n_hvgs_requested/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/hvg/n_hvgs_requested/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/hvg/n_hvgs_requested/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/leiden", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/leiden/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/leiden/.zgroup", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/leiden/n_clusters", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/leiden/n_clusters/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/leiden/n_clusters/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/leiden/n_clusters/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/leiden/resolution", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/leiden/resolution/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/leiden/resolution/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/leiden/resolution/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/log1p", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/log1p/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/log1p/.zgroup", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/log1p/base", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/log1p/base/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/log1p/base/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/log1p/base/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/moranI", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/moranI/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/moranI/.zgroup", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/moranI/I", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/moranI/I/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/moranI/I/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/moranI/I/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/moranI/_index", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/moranI/_index/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/moranI/_index/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/moranI/_index/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/moranI/pval_norm", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/moranI/pval_norm/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/moranI/pval_norm/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/moranI/pval_norm/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/moranI/pval_norm_fdr_bh", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/moranI/pval_norm_fdr_bh/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/moranI/pval_norm_fdr_bh/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/moranI/pval_norm_fdr_bh/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/moranI/var_norm", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/moranI/var_norm/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/moranI/var_norm/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/moranI/var_norm/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/neighbors", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/neighbors/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/neighbors/.zgroup", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/neighbors/connectivities_key", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/neighbors/connectivities_key/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/neighbors/connectivities_key/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/neighbors/connectivities_key/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/neighbors/distances_key", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/neighbors/distances_key/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/neighbors/distances_key/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/neighbors/distances_key/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/neighbors/params", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/neighbors/params/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/neighbors/params/.zgroup", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/neighbors/params/method", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/neighbors/params/method/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/neighbors/params/method/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/neighbors/params/method/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/neighbors/params/metric", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/neighbors/params/metric/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/neighbors/params/metric/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/neighbors/params/metric/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/neighbors/params/n_neighbors", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/neighbors/params/n_neighbors/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/neighbors/params/n_neighbors/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/neighbors/params/n_neighbors/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/neighbors/params/n_pcs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/neighbors/params/n_pcs/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/neighbors/params/n_pcs/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/neighbors/params/n_pcs/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/neighbors/params/random_state", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/neighbors/params/random_state/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/neighbors/params/random_state/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/neighbors/params/random_state/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/normalization", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/normalization/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/normalization/.zgroup", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/normalization/log1p", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/normalization/log1p/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/normalization/log1p/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/normalization/log1p/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/normalization/method", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/normalization/method/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/normalization/method/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/normalization/method/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/normalization/target_sum", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/normalization/target_sum/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/normalization/target_sum/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/normalization/target_sum/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/pca", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/pca/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/pca/.zgroup", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/pca/params", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/pca/params/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/pca/params/.zgroup", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/pca/params/mask_var", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/pca/params/mask_var/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/pca/params/mask_var/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/pca/params/mask_var/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/pca/params/use_highly_variable", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/pca/params/use_highly_variable/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/pca/params/use_highly_variable/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/pca/params/use_highly_variable/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/pca/params/zero_center", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/pca/params/zero_center/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/pca/params/zero_center/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/pca/params/zero_center/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/pca/variance", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/pca/variance/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/pca/variance/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/pca/variance/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/pca/variance_ratio", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/pca/variance_ratio/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/pca/variance_ratio/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/pca/variance_ratio/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/rank_genes_groups", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/rank_genes_groups/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/rank_genes_groups/.zgroup", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/rank_genes_groups/logfoldchanges", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/rank_genes_groups/logfoldchanges/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/rank_genes_groups/logfoldchanges/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/rank_genes_groups/logfoldchanges/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/rank_genes_groups/names", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/rank_genes_groups/names/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/rank_genes_groups/names/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/rank_genes_groups/names/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/rank_genes_groups/names/1", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/rank_genes_groups/names/2", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/rank_genes_groups/names/3", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/rank_genes_groups/names/4", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/rank_genes_groups/names/5", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/rank_genes_groups/names/6", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/rank_genes_groups/names/7", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/rank_genes_groups/params", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/rank_genes_groups/params/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/rank_genes_groups/params/.zgroup", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/rank_genes_groups/params/corr_method", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/rank_genes_groups/params/corr_method/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/rank_genes_groups/params/corr_method/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/rank_genes_groups/params/corr_method/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/rank_genes_groups/params/groupby", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/rank_genes_groups/params/groupby/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/rank_genes_groups/params/groupby/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/rank_genes_groups/params/groupby/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/rank_genes_groups/params/layer", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/rank_genes_groups/params/layer/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/rank_genes_groups/params/layer/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/rank_genes_groups/params/layer/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/rank_genes_groups/params/method", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/rank_genes_groups/params/method/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/rank_genes_groups/params/method/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/rank_genes_groups/params/method/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/rank_genes_groups/params/reference", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/rank_genes_groups/params/reference/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/rank_genes_groups/params/reference/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/rank_genes_groups/params/reference/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/rank_genes_groups/params/use_raw", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/rank_genes_groups/params/use_raw/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/rank_genes_groups/params/use_raw/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/rank_genes_groups/params/use_raw/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/rank_genes_groups/pvals", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/rank_genes_groups/pvals/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/rank_genes_groups/pvals/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/rank_genes_groups/pvals/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/rank_genes_groups/pvals_adj", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/rank_genes_groups/pvals_adj/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/rank_genes_groups/pvals_adj/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/rank_genes_groups/pvals_adj/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/rank_genes_groups/scores", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/rank_genes_groups/scores/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/rank_genes_groups/scores/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/rank_genes_groups/scores/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/sample_id", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/sample_id/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/sample_id/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/sample_id/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/.zgroup", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer/.zgroup", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer/metadata", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer/metadata/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer/metadata/.zgroup", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer/metadata/chemistry_description", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer/metadata/chemistry_description/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer/metadata/chemistry_description/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer/metadata/chemistry_description/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer/metadata/software_version", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer/metadata/software_version/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer/metadata/software_version/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer/metadata/software_version/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/.zgroup", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/.zgroup", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/hires", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/hires/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/hires/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/hires/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/hires/0/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/hires/0/0/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/hires/0/0/1", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/hires/0/1", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/hires/0/1/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/hires/0/1/1", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/hires/0/2", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/hires/0/2/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/hires/0/2/1", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/hires/0/3", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/hires/0/3/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/hires/0/3/1", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/hires/1", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/hires/1/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/hires/1/0/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/hires/1/0/1", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/hires/1/1", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/hires/1/1/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/hires/1/1/1", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/hires/1/2", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/hires/1/2/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/hires/1/2/1", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/hires/1/3", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/hires/1/3/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/hires/1/3/1", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/hires/2", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/hires/2/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/hires/2/0/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/hires/2/0/1", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/hires/2/1", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/hires/2/1/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/hires/2/1/1", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/hires/2/2", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/hires/2/2/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/hires/2/2/1", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/hires/2/3", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/hires/2/3/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/hires/2/3/1", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/hires/3", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/hires/3/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/hires/3/0/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/hires/3/0/1", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/hires/3/1", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/hires/3/1/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/hires/3/1/1", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/hires/3/2", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/hires/3/2/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/hires/3/2/1", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/hires/3/3", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/hires/3/3/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/hires/3/3/1", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/lowres", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/lowres/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/lowres/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/lowres/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/lowres/0/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/lowres/0/0/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/lowres/0/1", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/lowres/0/1/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/lowres/1", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/lowres/1/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/lowres/1/0/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/lowres/1/1", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/lowres/1/1/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/scalefactors", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/scalefactors/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/scalefactors/.zgroup", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/scalefactors/spot_diameter_fullres", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/scalefactors/spot_diameter_fullres/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/scalefactors/spot_diameter_fullres/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/scalefactors/spot_diameter_fullres/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/scalefactors/tissue_hires_scalef", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/scalefactors/tissue_hires_scalef/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/scalefactors/tissue_hires_scalef/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/scalefactors/tissue_hires_scalef/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/scalefactors/tissue_lowres_scalef", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/scalefactors/tissue_lowres_scalef/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/scalefactors/tissue_lowres_scalef/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/scalefactors/tissue_lowres_scalef/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial_neighbors", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial_neighbors/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial_neighbors/.zgroup", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial_neighbors/connectivities_key", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial_neighbors/connectivities_key/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial_neighbors/connectivities_key/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial_neighbors/connectivities_key/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial_neighbors/distances_key", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial_neighbors/distances_key/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial_neighbors/distances_key/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial_neighbors/distances_key/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial_neighbors/params", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial_neighbors/params/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial_neighbors/params/.zgroup", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial_neighbors/params/coord_type", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial_neighbors/params/coord_type/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial_neighbors/params/coord_type/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial_neighbors/params/coord_type/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial_neighbors/params/n_neighbors", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial_neighbors/params/n_neighbors/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial_neighbors/params/n_neighbors/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial_neighbors/params/n_neighbors/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial_neighbors/params/radius", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial_neighbors/params/radius/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial_neighbors/params/radius/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial_neighbors/params/radius/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial_neighbors/params/transform", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial_neighbors/params/transform/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial_neighbors/params/transform/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial_neighbors/params/transform/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatialdata_attrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatialdata_attrs/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatialdata_attrs/.zgroup", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatialdata_attrs/instance_key", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatialdata_attrs/instance_key/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatialdata_attrs/instance_key/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatialdata_attrs/instance_key/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatialdata_attrs/region", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatialdata_attrs/region/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatialdata_attrs/region/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatialdata_attrs/region/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatialdata_attrs/region_key", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatialdata_attrs/region_key/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatialdata_attrs/region_key/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatialdata_attrs/region_key/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/table_name", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/table_name/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/table_name/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/table_name/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/.zgroup", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/_index", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/_index/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/_index/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/_index/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/dispersions", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/dispersions/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/dispersions/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/dispersions/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/dispersions_norm", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/dispersions_norm/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/dispersions_norm/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/dispersions_norm/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/feature_types", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/feature_types/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/feature_types/.zgroup", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/feature_types/categories", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/feature_types/categories/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/feature_types/categories/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/feature_types/categories/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/feature_types/codes", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/feature_types/codes/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/feature_types/codes/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/feature_types/codes/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/gene_ids", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/gene_ids/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/gene_ids/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/gene_ids/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/genome", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/genome/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/genome/.zgroup", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/genome/categories", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/genome/categories/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/genome/categories/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/genome/categories/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/genome/codes", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/genome/codes/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/genome/codes/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/genome/codes/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/hb", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/hb/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/hb/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/hb/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/highly_variable", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/highly_variable/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/highly_variable/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/highly_variable/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/mean_counts", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/mean_counts/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/mean_counts/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/mean_counts/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/means", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/means/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/means/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/means/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/mt", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/mt/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/mt/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/mt/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/n_cells", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/n_cells/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/n_cells/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/n_cells/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/n_cells_by_counts", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/n_cells_by_counts/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/n_cells_by_counts/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/n_cells_by_counts/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/pct_dropout_by_counts", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/pct_dropout_by_counts/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/pct_dropout_by_counts/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/pct_dropout_by_counts/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/ribo", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/ribo/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/ribo/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/ribo/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/total_counts", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/total_counts/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/total_counts/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/total_counts/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/varm", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/varm/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/varm/.zgroup", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/varm/PCs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/varm/PCs/.zarray", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/varm/PCs/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/varm/PCs/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/varm/PCs/0/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/varm/PCs/0/1", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/varm/PCs/1", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/varm/PCs/1/0", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/varm/PCs/1/1", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/varp", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/varp/.zattrs", + "integration/data/harmony.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/varp/.zgroup", + "integration/data/harmony.zarr/zmetadata", + "integration/data/merged.zarr/.zattrs", + "integration/data/merged.zarr/.zgroup", + "integration/data/merged.zarr/images", + "integration/data/merged.zarr/images/.zgroup", + "integration/data/merged.zarr/images/Visium_FFPE_Human_Ovarian_Cancer_hires_image", + "integration/data/merged.zarr/images/Visium_FFPE_Human_Ovarian_Cancer_hires_image/.zattrs", + "integration/data/merged.zarr/images/Visium_FFPE_Human_Ovarian_Cancer_hires_image/.zgroup", + "integration/data/merged.zarr/images/Visium_FFPE_Human_Ovarian_Cancer_hires_image/0", + "integration/data/merged.zarr/images/Visium_FFPE_Human_Ovarian_Cancer_hires_image/0/.zarray", + "integration/data/merged.zarr/images/Visium_FFPE_Human_Ovarian_Cancer_hires_image/0/0", + "integration/data/merged.zarr/images/Visium_FFPE_Human_Ovarian_Cancer_hires_image/0/0/0", + "integration/data/merged.zarr/images/Visium_FFPE_Human_Ovarian_Cancer_hires_image/0/0/0/0", + "integration/data/merged.zarr/images/Visium_FFPE_Human_Ovarian_Cancer_lowres_image", + "integration/data/merged.zarr/images/Visium_FFPE_Human_Ovarian_Cancer_lowres_image/.zattrs", + "integration/data/merged.zarr/images/Visium_FFPE_Human_Ovarian_Cancer_lowres_image/.zgroup", + "integration/data/merged.zarr/images/Visium_FFPE_Human_Ovarian_Cancer_lowres_image/0", + "integration/data/merged.zarr/images/Visium_FFPE_Human_Ovarian_Cancer_lowres_image/0/.zarray", + "integration/data/merged.zarr/images/Visium_FFPE_Human_Ovarian_Cancer_lowres_image/0/0", + "integration/data/merged.zarr/images/Visium_FFPE_Human_Ovarian_Cancer_lowres_image/0/0/0", + "integration/data/merged.zarr/images/Visium_FFPE_Human_Ovarian_Cancer_lowres_image/0/0/0/0", + "integration/data/merged.zarr/shapes", + "integration/data/merged.zarr/shapes/.zgroup", + "integration/data/merged.zarr/shapes/Visium_FFPE_Human_Ovarian_Cancer", + "integration/data/merged.zarr/shapes/Visium_FFPE_Human_Ovarian_Cancer/.zattrs", + "integration/data/merged.zarr/shapes/Visium_FFPE_Human_Ovarian_Cancer/.zgroup", + "integration/data/merged.zarr/shapes/Visium_FFPE_Human_Ovarian_Cancer/shapes.parquet", + "integration/data/merged.zarr/tables", + "integration/data/merged.zarr/tables/.zgroup", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/.zgroup", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/X", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/X/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/X/.zgroup", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/X/data", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/X/data/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/X/data/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/X/indices", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/X/indices/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/X/indices/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/X/indptr", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/X/indptr/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/X/indptr/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/layers", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/layers/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/layers/.zgroup", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/layers/raw", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/layers/raw/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/layers/raw/.zgroup", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/layers/raw/data", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/layers/raw/data/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/layers/raw/data/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/layers/raw/indices", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/layers/raw/indices/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/layers/raw/indices/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/layers/raw/indptr", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/layers/raw/indptr/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/layers/raw/indptr/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/.zgroup", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/_index", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/_index/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/_index/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/_index/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/array_col", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/array_col/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/array_col/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/array_col/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/array_row", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/array_row/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/array_row/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/array_row/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/clusters", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/clusters/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/clusters/.zgroup", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/clusters/categories", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/clusters/categories/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/clusters/categories/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/clusters/categories/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/clusters/codes", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/clusters/codes/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/clusters/codes/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/clusters/codes/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/in_tissue", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/in_tissue/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/in_tissue/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/in_tissue/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/n_counts", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/n_counts/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/n_counts/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/n_counts/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/n_genes", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/n_genes/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/n_genes/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/n_genes/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/n_genes_by_counts", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/n_genes_by_counts/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/n_genes_by_counts/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/n_genes_by_counts/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/pct_counts_hb", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/pct_counts_hb/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/pct_counts_hb/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/pct_counts_hb/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/pct_counts_in_top_100_genes", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/pct_counts_in_top_100_genes/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/pct_counts_in_top_100_genes/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/pct_counts_in_top_100_genes/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/pct_counts_in_top_200_genes", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/pct_counts_in_top_200_genes/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/pct_counts_in_top_200_genes/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/pct_counts_in_top_200_genes/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/pct_counts_in_top_500_genes", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/pct_counts_in_top_500_genes/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/pct_counts_in_top_500_genes/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/pct_counts_in_top_500_genes/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/pct_counts_in_top_50_genes", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/pct_counts_in_top_50_genes/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/pct_counts_in_top_50_genes/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/pct_counts_in_top_50_genes/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/pct_counts_mt", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/pct_counts_mt/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/pct_counts_mt/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/pct_counts_mt/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/pct_counts_ribo", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/pct_counts_ribo/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/pct_counts_ribo/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/pct_counts_ribo/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/region", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/region/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/region/.zgroup", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/region/categories", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/region/categories/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/region/categories/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/region/categories/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/region/codes", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/region/codes/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/region/codes/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/region/codes/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/spot_id", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/spot_id/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/spot_id/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/spot_id/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/total_counts", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/total_counts/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/total_counts/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/total_counts/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/total_counts_hb", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/total_counts_hb/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/total_counts_hb/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/total_counts_hb/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/total_counts_mt", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/total_counts_mt/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/total_counts_mt/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/total_counts_mt/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/total_counts_normalized", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/total_counts_normalized/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/total_counts_normalized/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/total_counts_normalized/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/total_counts_ribo", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/total_counts_ribo/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/total_counts_ribo/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obs/total_counts_ribo/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsm", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsm/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsm/.zgroup", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsm/X_pca", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsm/X_pca/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsm/X_pca/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsm/X_pca/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsm/X_pca/0/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsm/X_umap", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsm/X_umap/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsm/X_umap/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsm/X_umap/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsm/X_umap/0/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsm/spatial", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsm/spatial/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsm/spatial/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsm/spatial/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsm/spatial/0/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsp", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsp/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsp/.zgroup", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsp/connectivities", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsp/connectivities/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsp/connectivities/.zgroup", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsp/connectivities/data", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsp/connectivities/data/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsp/connectivities/data/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsp/connectivities/indices", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsp/connectivities/indices/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsp/connectivities/indices/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsp/connectivities/indptr", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsp/connectivities/indptr/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsp/connectivities/indptr/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsp/distances", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsp/distances/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsp/distances/.zgroup", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsp/distances/data", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsp/distances/data/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsp/distances/data/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsp/distances/indices", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsp/distances/indices/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsp/distances/indices/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsp/distances/indptr", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsp/distances/indptr/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsp/distances/indptr/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsp/spatial_connectivities", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsp/spatial_connectivities/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsp/spatial_connectivities/.zgroup", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsp/spatial_connectivities/data", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsp/spatial_connectivities/data/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsp/spatial_connectivities/data/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsp/spatial_connectivities/indices", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsp/spatial_connectivities/indices/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsp/spatial_connectivities/indices/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsp/spatial_connectivities/indptr", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsp/spatial_connectivities/indptr/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsp/spatial_connectivities/indptr/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsp/spatial_distances", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsp/spatial_distances/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsp/spatial_distances/.zgroup", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsp/spatial_distances/data", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsp/spatial_distances/data/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsp/spatial_distances/data/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsp/spatial_distances/indices", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsp/spatial_distances/indices/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsp/spatial_distances/indices/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsp/spatial_distances/indptr", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsp/spatial_distances/indptr/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/obsp/spatial_distances/indptr/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/raw", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/raw/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/raw/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/raw/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/.zgroup", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/X_umap", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/X_umap/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/X_umap/.zgroup", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/X_umap/params", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/X_umap/params/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/X_umap/params/.zgroup", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/X_umap/params/a", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/X_umap/params/a/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/X_umap/params/a/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/X_umap/params/a/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/X_umap/params/b", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/X_umap/params/b/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/X_umap/params/b/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/X_umap/params/b/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/clusters", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/clusters/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/clusters/.zgroup", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/clusters/params", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/clusters/params/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/clusters/params/.zgroup", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/clusters/params/n_iterations", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/clusters/params/n_iterations/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/clusters/params/n_iterations/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/clusters/params/n_iterations/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/clusters/params/random_state", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/clusters/params/random_state/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/clusters/params/random_state/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/clusters/params/random_state/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/clusters/params/resolution", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/clusters/params/resolution/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/clusters/params/resolution/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/clusters/params/resolution/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/clusters_interactions", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/clusters_interactions/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/clusters_interactions/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/clusters_interactions/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/clusters_interactions/0/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/clusters_nhood_enrichment", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/clusters_nhood_enrichment/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/clusters_nhood_enrichment/.zgroup", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/clusters_nhood_enrichment/count", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/clusters_nhood_enrichment/count/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/clusters_nhood_enrichment/count/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/clusters_nhood_enrichment/count/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/clusters_nhood_enrichment/count/0/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/clusters_nhood_enrichment/zscore", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/clusters_nhood_enrichment/zscore/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/clusters_nhood_enrichment/zscore/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/clusters_nhood_enrichment/zscore/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/clusters_nhood_enrichment/zscore/0/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/coordinate_system", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/coordinate_system/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/coordinate_system/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/coordinate_system/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/.zgroup", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/genes_filtered_min_obs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/genes_filtered_min_obs/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/genes_filtered_min_obs/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/genes_filtered_min_obs/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/hb_threshold", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/hb_threshold/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/hb_threshold/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/hb_threshold/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/min_counts_threshold", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/min_counts_threshold/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/min_counts_threshold/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/min_counts_threshold/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/min_genes_threshold", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/min_genes_threshold/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/min_genes_threshold/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/min_genes_threshold/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/min_obs_threshold", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/min_obs_threshold/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/min_obs_threshold/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/min_obs_threshold/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/mito_threshold", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/mito_threshold/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/mito_threshold/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/mito_threshold/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/obs_filtered_hb", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/obs_filtered_hb/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/obs_filtered_hb/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/obs_filtered_hb/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/obs_filtered_min_counts", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/obs_filtered_min_counts/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/obs_filtered_min_counts/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/obs_filtered_min_counts/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/obs_filtered_min_genes", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/obs_filtered_min_genes/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/obs_filtered_min_genes/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/obs_filtered_min_genes/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/obs_filtered_mito", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/obs_filtered_mito/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/obs_filtered_mito/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/obs_filtered_mito/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/obs_filtered_outside_tissue", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/obs_filtered_outside_tissue/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/obs_filtered_outside_tissue/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/obs_filtered_outside_tissue/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/obs_filtered_ribo", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/obs_filtered_ribo/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/obs_filtered_ribo/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/obs_filtered_ribo/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/ribo_threshold", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/ribo_threshold/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/ribo_threshold/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/ribo_threshold/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/sample_id", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/sample_id/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/sample_id/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/sample_id/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/total_genes_after", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/total_genes_after/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/total_genes_after/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/total_genes_after/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/total_genes_before", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/total_genes_before/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/total_genes_before/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/total_genes_before/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/total_genes_filtered", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/total_genes_filtered/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/total_genes_filtered/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/total_genes_filtered/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/total_obs_after", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/total_obs_after/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/total_obs_after/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/total_obs_after/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/total_obs_before", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/total_obs_before/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/total_obs_before/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/total_obs_before/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/total_obs_filtered", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/total_obs_filtered/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/total_obs_filtered/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/filtering_stats/total_obs_filtered/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/hvg", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/hvg/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/hvg/.zgroup", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/hvg/flavor", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/hvg/flavor/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/hvg/flavor/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/hvg/flavor/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/hvg/n_hvgs_found", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/hvg/n_hvgs_found/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/hvg/n_hvgs_found/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/hvg/n_hvgs_found/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/hvg/n_hvgs_requested", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/hvg/n_hvgs_requested/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/hvg/n_hvgs_requested/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/hvg/n_hvgs_requested/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/leiden", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/leiden/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/leiden/.zgroup", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/leiden/n_clusters", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/leiden/n_clusters/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/leiden/n_clusters/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/leiden/n_clusters/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/leiden/resolution", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/leiden/resolution/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/leiden/resolution/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/leiden/resolution/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/log1p", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/log1p/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/log1p/.zgroup", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/log1p/base", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/log1p/base/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/log1p/base/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/log1p/base/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/moranI", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/moranI/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/moranI/.zgroup", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/moranI/I", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/moranI/I/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/moranI/I/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/moranI/I/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/moranI/_index", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/moranI/_index/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/moranI/_index/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/moranI/_index/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/moranI/pval_norm", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/moranI/pval_norm/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/moranI/pval_norm/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/moranI/pval_norm/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/moranI/pval_norm_fdr_bh", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/moranI/pval_norm_fdr_bh/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/moranI/pval_norm_fdr_bh/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/moranI/pval_norm_fdr_bh/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/moranI/var_norm", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/moranI/var_norm/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/moranI/var_norm/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/moranI/var_norm/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/neighbors", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/neighbors/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/neighbors/.zgroup", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/neighbors/connectivities_key", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/neighbors/connectivities_key/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/neighbors/connectivities_key/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/neighbors/connectivities_key/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/neighbors/distances_key", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/neighbors/distances_key/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/neighbors/distances_key/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/neighbors/distances_key/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/neighbors/params", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/neighbors/params/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/neighbors/params/.zgroup", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/neighbors/params/method", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/neighbors/params/method/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/neighbors/params/method/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/neighbors/params/method/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/neighbors/params/metric", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/neighbors/params/metric/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/neighbors/params/metric/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/neighbors/params/metric/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/neighbors/params/n_neighbors", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/neighbors/params/n_neighbors/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/neighbors/params/n_neighbors/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/neighbors/params/n_neighbors/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/neighbors/params/n_pcs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/neighbors/params/n_pcs/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/neighbors/params/n_pcs/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/neighbors/params/n_pcs/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/neighbors/params/random_state", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/neighbors/params/random_state/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/neighbors/params/random_state/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/neighbors/params/random_state/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/normalization", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/normalization/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/normalization/.zgroup", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/normalization/log1p", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/normalization/log1p/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/normalization/log1p/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/normalization/log1p/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/normalization/method", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/normalization/method/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/normalization/method/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/normalization/method/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/normalization/target_sum", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/normalization/target_sum/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/normalization/target_sum/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/normalization/target_sum/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/pca", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/pca/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/pca/.zgroup", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/pca/params", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/pca/params/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/pca/params/.zgroup", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/pca/params/mask_var", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/pca/params/mask_var/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/pca/params/mask_var/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/pca/params/mask_var/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/pca/params/use_highly_variable", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/pca/params/use_highly_variable/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/pca/params/use_highly_variable/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/pca/params/use_highly_variable/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/pca/params/zero_center", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/pca/params/zero_center/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/pca/params/zero_center/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/pca/params/zero_center/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/pca/variance", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/pca/variance/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/pca/variance/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/pca/variance/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/pca/variance_ratio", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/pca/variance_ratio/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/pca/variance_ratio/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/pca/variance_ratio/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/rank_genes_groups", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/rank_genes_groups/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/rank_genes_groups/.zgroup", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/rank_genes_groups/logfoldchanges", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/rank_genes_groups/logfoldchanges/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/rank_genes_groups/logfoldchanges/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/rank_genes_groups/logfoldchanges/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/rank_genes_groups/names", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/rank_genes_groups/names/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/rank_genes_groups/names/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/rank_genes_groups/names/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/rank_genes_groups/names/1", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/rank_genes_groups/names/2", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/rank_genes_groups/names/3", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/rank_genes_groups/names/4", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/rank_genes_groups/names/5", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/rank_genes_groups/names/6", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/rank_genes_groups/names/7", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/rank_genes_groups/params", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/rank_genes_groups/params/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/rank_genes_groups/params/.zgroup", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/rank_genes_groups/params/corr_method", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/rank_genes_groups/params/corr_method/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/rank_genes_groups/params/corr_method/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/rank_genes_groups/params/corr_method/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/rank_genes_groups/params/groupby", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/rank_genes_groups/params/groupby/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/rank_genes_groups/params/groupby/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/rank_genes_groups/params/groupby/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/rank_genes_groups/params/layer", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/rank_genes_groups/params/layer/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/rank_genes_groups/params/layer/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/rank_genes_groups/params/layer/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/rank_genes_groups/params/method", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/rank_genes_groups/params/method/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/rank_genes_groups/params/method/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/rank_genes_groups/params/method/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/rank_genes_groups/params/reference", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/rank_genes_groups/params/reference/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/rank_genes_groups/params/reference/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/rank_genes_groups/params/reference/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/rank_genes_groups/params/use_raw", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/rank_genes_groups/params/use_raw/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/rank_genes_groups/params/use_raw/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/rank_genes_groups/params/use_raw/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/rank_genes_groups/pvals", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/rank_genes_groups/pvals/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/rank_genes_groups/pvals/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/rank_genes_groups/pvals/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/rank_genes_groups/pvals_adj", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/rank_genes_groups/pvals_adj/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/rank_genes_groups/pvals_adj/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/rank_genes_groups/pvals_adj/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/rank_genes_groups/scores", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/rank_genes_groups/scores/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/rank_genes_groups/scores/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/rank_genes_groups/scores/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/sample_id", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/sample_id/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/sample_id/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/sample_id/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/.zgroup", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer/.zgroup", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer/metadata", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer/metadata/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer/metadata/.zgroup", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer/metadata/chemistry_description", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer/metadata/chemistry_description/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer/metadata/chemistry_description/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer/metadata/chemistry_description/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer/metadata/software_version", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer/metadata/software_version/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer/metadata/software_version/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer/metadata/software_version/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/.zgroup", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/.zgroup", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/hires", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/hires/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/hires/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/hires/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/hires/0/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/hires/0/0/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/hires/0/0/1", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/hires/0/1", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/hires/0/1/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/hires/0/1/1", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/hires/0/2", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/hires/0/2/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/hires/0/2/1", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/hires/0/3", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/hires/0/3/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/hires/0/3/1", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/hires/1", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/hires/1/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/hires/1/0/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/hires/1/0/1", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/hires/1/1", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/hires/1/1/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/hires/1/1/1", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/hires/1/2", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/hires/1/2/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/hires/1/2/1", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/hires/1/3", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/hires/1/3/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/hires/1/3/1", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/hires/2", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/hires/2/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/hires/2/0/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/hires/2/0/1", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/hires/2/1", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/hires/2/1/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/hires/2/1/1", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/hires/2/2", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/hires/2/2/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/hires/2/2/1", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/hires/2/3", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/hires/2/3/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/hires/2/3/1", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/hires/3", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/hires/3/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/hires/3/0/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/hires/3/0/1", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/hires/3/1", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/hires/3/1/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/hires/3/1/1", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/hires/3/2", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/hires/3/2/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/hires/3/2/1", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/hires/3/3", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/hires/3/3/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/hires/3/3/1", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/lowres", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/lowres/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/lowres/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/lowres/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/lowres/0/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/lowres/0/0/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/lowres/0/1", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/lowres/0/1/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/lowres/1", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/lowres/1/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/lowres/1/0/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/lowres/1/1", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/images/lowres/1/1/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/scalefactors", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/scalefactors/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/scalefactors/.zgroup", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/scalefactors/spot_diameter_fullres", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/scalefactors/spot_diameter_fullres/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/scalefactors/spot_diameter_fullres/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/scalefactors/spot_diameter_fullres/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/scalefactors/tissue_hires_scalef", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/scalefactors/tissue_hires_scalef/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/scalefactors/tissue_hires_scalef/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/scalefactors/tissue_hires_scalef/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/scalefactors/tissue_lowres_scalef", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/scalefactors/tissue_lowres_scalef/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/scalefactors/tissue_lowres_scalef/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial/Visium_FFPE_Human_Ovarian_Cancer_hires_image/scalefactors/tissue_lowres_scalef/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial_neighbors", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial_neighbors/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial_neighbors/.zgroup", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial_neighbors/connectivities_key", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial_neighbors/connectivities_key/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial_neighbors/connectivities_key/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial_neighbors/connectivities_key/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial_neighbors/distances_key", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial_neighbors/distances_key/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial_neighbors/distances_key/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial_neighbors/distances_key/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial_neighbors/params", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial_neighbors/params/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial_neighbors/params/.zgroup", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial_neighbors/params/coord_type", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial_neighbors/params/coord_type/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial_neighbors/params/coord_type/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial_neighbors/params/coord_type/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial_neighbors/params/n_neighbors", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial_neighbors/params/n_neighbors/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial_neighbors/params/n_neighbors/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial_neighbors/params/n_neighbors/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial_neighbors/params/radius", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial_neighbors/params/radius/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial_neighbors/params/radius/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial_neighbors/params/radius/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial_neighbors/params/transform", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial_neighbors/params/transform/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial_neighbors/params/transform/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatial_neighbors/params/transform/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatialdata_attrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatialdata_attrs/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatialdata_attrs/.zgroup", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatialdata_attrs/instance_key", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatialdata_attrs/instance_key/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatialdata_attrs/instance_key/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatialdata_attrs/instance_key/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatialdata_attrs/region", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatialdata_attrs/region/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatialdata_attrs/region/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatialdata_attrs/region/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatialdata_attrs/region_key", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatialdata_attrs/region_key/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatialdata_attrs/region_key/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/spatialdata_attrs/region_key/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/table_name", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/table_name/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/table_name/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/uns/table_name/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/.zgroup", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/_index", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/_index/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/_index/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/_index/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/dispersions", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/dispersions/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/dispersions/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/dispersions/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/dispersions_norm", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/dispersions_norm/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/dispersions_norm/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/dispersions_norm/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/feature_types", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/feature_types/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/feature_types/.zgroup", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/feature_types/categories", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/feature_types/categories/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/feature_types/categories/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/feature_types/categories/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/feature_types/codes", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/feature_types/codes/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/feature_types/codes/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/feature_types/codes/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/gene_ids", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/gene_ids/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/gene_ids/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/gene_ids/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/genome", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/genome/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/genome/.zgroup", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/genome/categories", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/genome/categories/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/genome/categories/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/genome/categories/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/genome/codes", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/genome/codes/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/genome/codes/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/genome/codes/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/hb", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/hb/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/hb/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/hb/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/highly_variable", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/highly_variable/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/highly_variable/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/highly_variable/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/mean_counts", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/mean_counts/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/mean_counts/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/mean_counts/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/means", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/means/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/means/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/means/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/mt", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/mt/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/mt/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/mt/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/n_cells", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/n_cells/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/n_cells/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/n_cells/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/n_cells_by_counts", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/n_cells_by_counts/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/n_cells_by_counts/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/n_cells_by_counts/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/pct_dropout_by_counts", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/pct_dropout_by_counts/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/pct_dropout_by_counts/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/pct_dropout_by_counts/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/ribo", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/ribo/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/ribo/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/ribo/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/total_counts", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/total_counts/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/total_counts/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/var/total_counts/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/varm", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/varm/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/varm/.zgroup", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/varm/PCs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/varm/PCs/.zarray", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/varm/PCs/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/varm/PCs/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/varm/PCs/0/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/varm/PCs/0/1", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/varm/PCs/1", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/varm/PCs/1/0", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/varm/PCs/1/1", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/varp", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/varp/.zattrs", + "integration/data/merged.zarr/tables/Visium_FFPE_Human_Ovarian_Cancer_table/varp/.zgroup", + "integration/data/merged.zarr/zmetadata" + ], + [ + "report.qmd:md5,03555321961957d8d645b446350921e0", + "report.yml:md5,0c2aef622f8d7010cb9df9da605e37e1", + "clusters.csv:md5,670c096a5bb6e2ee785305756bfb6134", + "clusters.csv:md5,48a27dd2731f0a9456036d2e06fc529e", + "clusters.csv:md5,3e61308a892fa5ad93ced13aeda3bbdb", + "clusters.csv:md5,fd8e35de5a9bb87d856d3fef1caf1083", + "clusters.csv:md5,26ef7eb6d92e68f75a87d2744bdc291a", + "clusters.csv:md5,fbd64182958824bb4f2f6fe4addb1565", + "clusters.csv:md5,680b7e5785649c8da9fa3f6838907979", + "clusters.csv:md5,fc6cee13a8643052a468a16d4e1eb605", + "clusters.csv:md5,de03e58c041e54c8ef30f344bb8f2445", + "clusters.csv:md5,11535c8590c3a9fb856abc2aeb4ba42f", + "differential_expression.csv:md5,b5fa1c5435abe61188fa0d630fa34b73", + "differential_expression.csv:md5,485f8e2bcefa2b76014c4a8cca8bc81a", + "differential_expression.csv:md5,3dfa1099308bee22f4fe6772472a8479", + "differential_expression.csv:md5,d4c4fe2e108af639e3fcf04ff7f9cc9e", + "differential_expression.csv:md5,7885fd9ae26927d3d883d3ccb957c9f8", + "differential_expression.csv:md5,084b7229ef9ae807d3b67f30731660a7", + "differential_expression.csv:md5,cf87449f678248169f1faf927825bea6", + "differential_expression.csv:md5,f7f364c6b9e8c7b443d0e8d4c649fac4", + "differential_expression.csv:md5,f5b42064b58eabd02d5dcc547cf39a2b", + "differential_expression.csv:md5,ffc0e3616dd6cf772d342a79b445f512", + "dispersion.csv:md5,164f00cab471f55201665c7341c4cb08", + "features_selected.csv:md5,6175aed8e25c8119778b2dd7e4261567", + "filtered_feature_bc_matrix.h5:md5,7ef893761da3d119765b1e6b0b29004a", + "matrix.mtx.gz:md5,eb7adb52a98815b9429d60daf05709fe", + "metrics_summary.csv:md5,332c99e9fd6b1cd1848411026a4c40ee", + "probe_set.csv:md5,050f640c4b8114a256b5660471d998cc", + "raw_feature_bc_matrix.h5:md5,6fa81b2b42ad8e5815b4de41b42188a1", + "matrix.mtx.gz:md5,f17c099a736af2f769b588aebbaf5b23", + "raw_probe_bc_matrix.h5:md5,bfed4d131c057b5650bc4288faab2a74", + "aligned_fiducials.jpg:md5,16a25cda04a514744622b7e51cff80fc", + "detected_tissue_image.jpg:md5,d19b24c747fae41c2469e5017eb29538", + "spatial_enrichment.csv:md5,922a11441b86bfc0b7916711d9321073", + "tissue_positions.csv:md5,7f9cb407b3dd69726a12967b979a5624", + "report-integrated.qmd:md5,a669fd7ba5e9658198c220b37bd66818", + "report-integrated.yml:md5,a4d0e2a88b83c3c5035ab9570430991e", + "mqc_spaceranger_count_genesXspot.txt:md5,511900b9452cfc45755dd757a31eeb6f", + "mqc_spaceranger_count_saturation.txt:md5,4c74a27577d11bf807471058de89ca32", + "multiqc_citations.txt:md5,4c806e63a283ec1b7e78cdae3a923d4f", + "multiqc_spaceranger_count.txt:md5,d903b3543a8453a77db9ab1fe2bd385c", + "spaceranger-count-stats.txt:md5,1e8c2b88b2d4aabb5fb22013dbd8bad0" + ], + [ + { + "file": "Visium_FFPE_Human_Ovarian_Cancer-raw.h5ad", + "contents": { + "n_obs": 4992, + "n_vars": 19494, + "obs": { + "index": "_index", + "columns": [ + "array_col", + "array_row", + "in_tissue", + "region", + "spot_id" + ] + }, + "var": { + "index": "_index", + "columns": [ + "feature_types", + "gene_ids", + "genome" + ] + }, + "layers": [ + "raw" + ], + "obsm": [ + "spatial" + ], + "varm": [ + + ], + "obsp": [ + + ], + "varp": [ + + ], + "uns": [ + "coordinate_system", + "sample_id", + "spatial", + "spatialdata_attrs", + "table_name" + ] + } + }, + { + "file": "Visium_FFPE_Human_Ovarian_Cancer.h5ad", + "contents": { + "n_obs": 563, + "n_vars": 2097, + "obs": { + "index": "_index", + "columns": [ + "array_col", + "array_row", + "clusters", + "in_tissue", + "n_counts", + "n_genes", + "n_genes_by_counts", + "pct_counts_hb", + "pct_counts_in_top_100_genes", + "pct_counts_in_top_200_genes", + "pct_counts_in_top_500_genes", + "pct_counts_in_top_50_genes", + "pct_counts_mt", + "pct_counts_ribo", + "region", + "spot_id", + "total_counts", + "total_counts_hb", + "total_counts_mt", + "total_counts_normalized", + "total_counts_ribo" + ] + }, + "var": { + "index": "_index", + "columns": [ + "dispersions", + "dispersions_norm", + "feature_types", + "gene_ids", + "genome", + "hb", + "highly_variable", + "mean_counts", + "means", + "mt", + "n_cells", + "n_cells_by_counts", + "pct_dropout_by_counts", + "ribo", + "total_counts" + ] + }, + "layers": [ + "raw" + ], + "obsm": [ + "X_pca", + "X_umap", + "spatial" + ], + "varm": [ + "PCs" + ], + "obsp": [ + "connectivities", + "distances", + "spatial_connectivities", + "spatial_distances" + ], + "varp": [ + + ], + "uns": [ + "X_umap", + "clusters", + "clusters_interactions", + "clusters_nhood_enrichment", + "coordinate_system", + "filtering_stats", + "hvg", + "leiden", + "log1p", + "moranI", + "neighbors", + "normalization", + "pca", + "rank_genes_groups", + "sample_id", + "spatial", + "spatial_neighbors", + "spatialdata_attrs", + "table_name" + ] + } + }, + { + "file": "harmony.h5ad", + "contents": { + "n_obs": 563, + "n_vars": 2097, + "obs": { + "index": "_index", + "columns": [ + "array_col", + "array_row", + "clusters", + "clusters_harmony", + "in_tissue", + "library_id", + "n_counts", + "n_genes", + "n_genes_by_counts", + "pct_counts_hb", + "pct_counts_in_top_100_genes", + "pct_counts_in_top_200_genes", + "pct_counts_in_top_500_genes", + "pct_counts_in_top_50_genes", + "pct_counts_mt", + "pct_counts_ribo", + "region", + "spot_id", + "total_counts", + "total_counts_hb", + "total_counts_mt", + "total_counts_normalized", + "total_counts_ribo" + ] + }, + "var": { + "index": "_index", + "columns": [ + "dispersions", + "dispersions_norm", + "feature_types", + "gene_ids", + "genome", + "hb", + "highly_variable", + "mean_counts", + "means", + "mt", + "n_cells", + "n_cells_by_counts", + "pct_dropout_by_counts", + "ribo", + "total_counts" + ] + }, + "layers": [ + "raw" + ], + "obsm": [ + "X_harmony", + "X_pca", + "X_umap", + "X_umap_harmony", + "spatial" + ], + "varm": [ + + ], + "obsp": [ + "connectivities", + "distances" + ], + "varp": [ + + ], + "uns": [ + "X_umap_harmony", + "clusters_harmony", + "leiden", + "merge", + "neighbors", + "spatial" + ] + } + } + ] ], + "timestamp": "2026-04-05T16:24:40.870234563", "meta": { - "nf-test": "0.9.2", - "nextflow": "25.04.7" - }, - "timestamp": "2026-02-06T14:23:35.652398627" + "nf-test": "0.9.5", + "nextflow": "25.10.4" + } } } \ No newline at end of file diff --git a/workflows/spatialvi.nf b/workflows/spatialvi.nf index 97aee239..1a1c2c33 100644 --- a/workflows/spatialvi.nf +++ b/workflows/spatialvi.nf @@ -4,17 +4,25 @@ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */ -include { READ_DATA } from '../modules/local/read_data' -include { FASTQC } from '../modules/nf-core/fastqc/main' -include { MULTIQC } from '../modules/nf-core/multiqc/main' -include { INPUT_CHECK } from '../subworkflows/local/input_check' -include { SPACERANGER } from '../subworkflows/local/spaceranger' -include { DOWNSTREAM } from '../subworkflows/local/downstream' -include { AGGREGATION } from '../subworkflows/local/aggregation' -include { paramsSummaryMultiqc } from '../subworkflows/nf-core/utils_nfcore_pipeline' -include { paramsSummaryMap } from 'plugin/nf-schema' -include { softwareVersionsToYAML } from '../subworkflows/nf-core/utils_nfcore_pipeline' -include { methodsDescriptionText } from '../subworkflows/local/utils_nfcore_spatialvi_pipeline' +include { SDATA_READ_VISIUM } from '../modules/local/sdata/read_visium/main' +include { FASTQC } from '../modules/nf-core/fastqc/main' +include { SCANPY_RANK_GENES_GROUPS } from '../modules/local/scanpy/rank_genes_groups/main' +include { SDATA_MERGE } from "../modules/local/sdata/merge" +include { SDATA_TO_LEGACY_ANNDATA } from '../modules/local/sdata/to_legacy_anndata/main' +include { MULTIQC } from '../modules/nf-core/multiqc/main' +include { QUARTONOTEBOOK as REPORT } from '../modules/nf-core/quartonotebook/main' +include { SDATA_UPDATE_TABLE } from '../modules/local/sdata/update_table/main' + +include { INPUT_CHECK } from '../subworkflows/local/input_check' +include { SPACERANGER } from '../subworkflows/local/spaceranger' +include { PREPROCESSING } from '../subworkflows/local/preprocessing' +include { CLUSTERING } from '../subworkflows/local/clustering' +include { SPATIAL } from '../subworkflows/local/spatial' +include { INTEGRATION } from '../subworkflows/local/integration' +include { paramsSummaryMultiqc } from '../subworkflows/nf-core/utils_nfcore_pipeline' +include { paramsSummaryMap } from 'plugin/nf-schema' +include { softwareVersionsToYAML } from '../subworkflows/nf-core/utils_nfcore_pipeline' +include { methodsDescriptionText } from '../subworkflows/local/utils_nfcore_spatialvi_pipeline' /* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ @@ -25,33 +33,48 @@ include { methodsDescriptionText } from '../subworkflows/local/utils_nfcore_spat workflow SPATIALVI { take: - samplesheet // file : /path/to/samplesheet - spaceranger_reference // dir : /path/to/reference - spaceranger_probeset // file : /path/to/csv + samplesheet // file: /path/to/samplesheet + spaceranger_reference // dir: /path/to/reference + spaceranger_probeset // file: /path/to/csv hd_bin_size // integer: Bin size for Visium HD + skip_downstream // boolean: Whether to skip downstream steps or not qc_min_counts // integer: Minimum UMIs per spot qc_min_genes // integer: Minimum genes per spot qc_min_spots // integer: Minimum spots per gene - qc_mito_threshold // float : Maximum mito. content per spot - qc_ribo_threshold // float : Minimum ribo. content per spot - qc_hb_threshold // float : Maximum haem. content per spot - cluster_n_hvgs // integer: Number of HVGs to use - cluster_resolution // float : Spot clustering resolution - svg_autocorr_method // string : Autocorrelation method + qc_mito_threshold // float: Maximum mito. content per spot + qc_ribo_threshold // float: Minimum ribo. content per spot + qc_hb_threshold // float: Maximum haem. content per spot + normalize_target_sum // string: Target sum of total count normalization + n_highly_variable_genes // integer: Number of HVGs to use + hvg_flavor // string: Flavor for HVG calculations + n_principal_components // integer: Number of principal components to compute + pca_use_highly_variable // boolean: Whether to only use highly variable genes for PCA + n_neighbors // integer: Number of nearest neighbors to compute + neighbors_n_pcs // integer: Number of PCs to use for nearest neighbors + umap_min_dist // float: Minimum distance between embedded points + umap_spread // float: Scale of embedded points + cluster_resolution // float: Spot clustering resolution + rank_genes_method // string: Method to use for differential expression testing + spatial_coord_type // string: Type of spatial coordinate system + spatial_n_neighbors // integer: Number of spatial neighborhoods + svg_autocorr_method // string: Autocorrelation method n_top_svgs // integer: Number of variable genes to plot - merge_sdata // boolean: Whether to merge sdata or not - integrate_sdata // boolean: Whether to integrate sdata or not - integration_cluster_resolution // float : Integration cluster resolution - integration_n_hvgs // integer: Number of HVGs to integrate with - multiqc_config // file : /path/to/multiqc/config - multiqc_logo // file : /path/to/multiqc/logo - multiqc_methods_description // file : /path/to/multiqc/description - outdir // dir : /path/to/output/directory + integrate_data // boolean: Whether to integrate sdata or not + integration_method // string: Integration method to use + integration_cluster_resolution // float: Integration cluster resolution + multiqc_config // file: /path/to/multiqc/config + multiqc_logo // file: /path/to/multiqc/logo + multiqc_methods_description // file: /path/to/multiqc/description + outdir // dir: /path/to/output/directory main: ch_multiqc_files = channel.empty() + // ========================================================================= + // VALIDATION AND SPACE RANGER PROCESSING + // ========================================================================= + // // SUBWORKFLOW: Read and validate samplesheet // @@ -64,9 +87,11 @@ workflow SPATIALVI { // MODULE: FastQC // FASTQC( - INPUT_CHECK.out.ch_spaceranger_input.map{ it -> [it[0] /* meta */, it[1] /* reads */]} + INPUT_CHECK.out.ch_spaceranger_input + .map { it -> [it[0], it[1]] } // [ meta, reads ] ) - ch_multiqc_files = ch_multiqc_files.mix(FASTQC.out.zip.collect{ it -> it[1] }) + ch_multiqc_files = ch_multiqc_files + .mix(FASTQC.out.zip.collect { it -> it[1] }) // // SUBWORKFLOW: Space Ranger raw data processing @@ -76,48 +101,192 @@ workflow SPATIALVI { spaceranger_reference, spaceranger_probeset, ) - ch_multiqc_files = ch_multiqc_files.mix(SPACERANGER.out.sr_dir.collect{ it -> it[1] }) - ch_downstream_input = INPUT_CHECK.out.ch_downstream_input - .mix(SPACERANGER.out.sr_dir) + ch_multiqc_files = ch_multiqc_files + .mix(SPACERANGER.out.sr_dir.collect { it -> it[1] }) // - // MODULE: Read ST data and save as `SpatialData` + // MODULE: Read ST data and save as SpatialData // - READ_DATA ( - ch_downstream_input, + ch_spaceranger_dir = INPUT_CHECK.out.ch_downstream_input + .mix(SPACERANGER.out.sr_dir) + SDATA_READ_VISIUM ( + ch_spaceranger_dir, hd_bin_size ) + ch_sdata_raw = SDATA_READ_VISIUM.out.sdata + + // ========================================================================= + // PER-SAMPLE ANALYSES + // ========================================================================= + + ch_adata = channel.empty() + ch_svg_csv = channel.empty() + ch_sdata_output = channel.empty() + ch_report_html = channel.empty() + ch_report_notebook = channel.empty() + ch_report_params_yaml = channel.empty() + ch_report_artifacts = channel.empty() + + if (!skip_downstream) { + + // + // MODULE: Extract legacy AnnData for scanpy processing + // + SDATA_TO_LEGACY_ANNDATA ( + ch_sdata_raw + ) + + // + // SUBWORKFLOW: Pre-processing + // + PREPROCESSING ( + SDATA_TO_LEGACY_ANNDATA.out.adata, + qc_min_counts, + qc_min_genes, + qc_min_spots, + qc_mito_threshold, + qc_ribo_threshold, + qc_hb_threshold, + normalize_target_sum, + n_highly_variable_genes, + hvg_flavor, + n_principal_components, + pca_use_highly_variable + ) + + // + // SUBWORKFLOW: Clustering + // + use_rep = '' + umap_key_added = 'X_umap' + leiden_key_added = 'clusters' + CLUSTERING ( + PREPROCESSING.out.adata, + n_neighbors, + neighbors_n_pcs, + use_rep, + umap_min_dist, + umap_spread, + umap_key_added, + cluster_resolution, + leiden_key_added + ) + + // + // MODULE: Differential expression analysis + // + rank_genes_group_by = 'clusters' + SCANPY_RANK_GENES_GROUPS ( + CLUSTERING.out.adata, + rank_genes_group_by, + rank_genes_method + ) + + // + // SUBWORKFLOW: Spatial analyses + // + SPATIAL ( + SCANPY_RANK_GENES_GROUPS.out.adata, + spatial_coord_type, + spatial_n_neighbors, + svg_autocorr_method + ) + ch_adata = SPATIAL.out.adata + ch_svg_csv = SPATIAL.out.svg_csv + + // + // MODULE: Update SpatialData with AnnData results + // + SDATA_UPDATE_TABLE ( + ch_sdata_raw.join(ch_adata), + '' + ) + ch_sdata_output = SDATA_UPDATE_TABLE.out.sdata + + // + // MODULE: Per-sample Quarto reports + // + report_notebook = file("${projectDir}/bin/report.qmd", checkIfExists: true) + extensions = channel.fromPath("${projectDir}/assets/_extensions").collect() + ch_report_input_data = ch_sdata_output + .map { it -> it[1] } + ch_report_notebook = ch_sdata_output + .map { it -> it[0] } + .combine(channel.value(report_notebook)) + .map { meta, notebook -> tuple(meta, notebook) } + ch_report_params = ch_sdata_output + .map { _meta, sdata -> + [ + input_sdata : sdata.name, + n_top_svgs : n_top_svgs, + artifact_dir : "artifacts" + ] + } + REPORT ( + ch_report_notebook, + ch_report_params, + ch_report_input_data, + extensions + ) + ch_report_html = REPORT.out.html + ch_report_notebook = REPORT.out.notebook + ch_report_params_yaml = REPORT.out.params_yaml + ch_report_artifacts = REPORT.out.artifacts + + } else { + ch_sdata_output = ch_sdata_raw + } + + // ========================================================================= + // MERGING AND INTEGRATION + // ========================================================================= // - // SUBWORKFLOW: Downstream analyses of ST data - // - DOWNSTREAM ( - READ_DATA.out.sdata_raw, - qc_min_counts, - qc_min_genes, - qc_min_spots, - qc_mito_threshold, - qc_ribo_threshold, - qc_hb_threshold, - cluster_n_hvgs, - cluster_resolution, - svg_autocorr_method, - n_top_svgs, + // MODULE: Merge per-sample SpatialData objects into one + // + ch_sdata_output_sorted = ch_sdata_output + .toSortedList { a, b -> a[0].id <=> b[0].id } + .flatMap() + .map { _meta, zarr -> zarr } + .collect() + SDATA_MERGE ( + ch_sdata_output_sorted ) + ch_sdata_merged = SDATA_MERGE.out.sdata + + ch_integration_html = channel.empty() + ch_integration_notebook = channel.empty() + ch_integration_params_yaml = channel.empty() + ch_integration_artifacts = channel.empty() + ch_sdata_integrated = channel.empty() + ch_adata_integrated = channel.empty() // // SUBWORKFLOW: Sample aggregation (optional) // - if (merge_sdata || integrate_sdata) { - AGGREGATION ( - DOWNSTREAM.out.svg_sdata, - merge_sdata, - integrate_sdata, - integration_cluster_resolution, - integration_n_hvgs, + if (!skip_downstream && integrate_data) { + INTEGRATION ( + ch_sdata_merged, + ch_adata, + integration_method, + n_neighbors, + neighbors_n_pcs, + umap_min_dist, + umap_spread, + integration_cluster_resolution ) + ch_integration_html = INTEGRATION.out.html + ch_integration_notebook = INTEGRATION.out.notebook + ch_integration_params_yaml = INTEGRATION.out.params_yaml + ch_integration_artifacts = INTEGRATION.out.artifacts + ch_sdata_integrated = INTEGRATION.out.sdata + ch_adata_integrated = INTEGRATION.out.adata } + // ========================================================================= + // FINALISATION AND MULTIQC + // ========================================================================= + // // Collate and save software versions // @@ -142,10 +311,11 @@ workflow SPATIALVI { .mix(topic_versions_string) .collectFile( storeDir: "${outdir}/pipeline_info", - name: 'nf_core_' + 'spatialvi_software_' + 'mqc_' + 'versions.yml', + name: 'nf_core_spatialvi_software_mqc_versions.yml', sort: true, newLine: true - ).set { ch_collated_versions } + ) + .set { ch_collated_versions } // // MODULE: MultiQC @@ -162,19 +332,16 @@ workflow SPATIALVI { summary_params = paramsSummaryMap( workflow, parameters_schema: "nextflow_schema.json") ch_workflow_summary = channel.value(paramsSummaryMultiqc(summary_params)) - ch_multiqc_files = ch_multiqc_files.mix( + ch_multiqc_files = ch_multiqc_files.mix( ch_workflow_summary.collectFile(name: 'workflow_summary_mqc.yaml')) + ch_multiqc_custom_methods_description = multiqc_methods_description ? file(multiqc_methods_description, checkIfExists: true) : - file("$projectDir/assets/methods_description_template.yml", checkIfExists: true) - ch_methods_description = channel.value( + file("$projectDir/assets/methods_description_template.yml", + checkIfExists: true) + ch_methods_description = channel.value( methodsDescriptionText(ch_multiqc_custom_methods_description)) - ch_multiqc_files = ch_multiqc_files.mix( - DOWNSTREAM.out.qc_mqc.map{ it -> it[1] }.collect() - ) - ch_multiqc_files = ch_multiqc_files.mix( - ch_workflow_summary.collectFile(name: 'workflow_summary_mqc.yaml')) ch_multiqc_files = ch_multiqc_files.mix(ch_collated_versions) ch_multiqc_files = ch_multiqc_files.mix( ch_methods_description.collectFile( @@ -193,8 +360,33 @@ workflow SPATIALVI { ) emit: - multiqc_report = MULTIQC.out.report.toList() // channel: [ multiqc_report.html ] + // SpatialData outputs + sdata_raw = ch_sdata_raw // channel: [ meta, zarr ] + sdata = ch_sdata_output // channel: [ meta, zarr ] + sdata_merged = ch_sdata_merged // channel: [ zarr ] + sdata_integrated = ch_sdata_integrated // channel: [ zarr ] + + // AnnData outputs + adata = ch_adata // channel: [ meta, h5ad ] + adata_integrated = ch_adata_integrated // channel: [ h5ad ] + + // Per-sample report outputs + report_html = ch_report_html // channel: [ meta, html ] + report_notebook = ch_report_notebook // channel: [ meta, qmd ] + report_params_yaml = ch_report_params_yaml // channel: [ meta, yml ] + report_artifacts = ch_report_artifacts // channel: [ meta, dir ] + + // SVG results + svg_csv = ch_svg_csv // channel: [ meta, csv ] + + // Integration report outputs + integration_html = ch_integration_html // channel: [ meta, html ] + integration_notebook = ch_integration_notebook // channel: [ meta, qmd ] + integration_params_yaml = ch_integration_params_yaml // channel: [ meta, yml ] + integration_artifacts = ch_integration_artifacts // channel: [ meta, dir ] + // MultiQC + multiqc_report = MULTIQC.out.report.toList() // channel: [ html ] } /*