Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Include more options for niche definitions #789

Open
timtreis opened this issue Jan 8, 2024 · 3 comments
Open

Include more options for niche definitions #789

timtreis opened this issue Jan 8, 2024 · 3 comments
Assignees
Labels
squidpy2.0 Everything releated to a Squidpy 2.0 release workstream Major workstreams for the Squidpy 2.0 release

Comments

@timtreis
Copy link
Member

timtreis commented Jan 8, 2024

Currently, squidpy focusses mostly on local spatial neighborhoods for niche analysis purposes. However, there are other definitions which one could use. Including other options could increase tool usage and enable other usecases, f.e. nische-detection-robustness testing?

Pinging @melonora @LLehner @MohammedZidane

@timtreis timtreis added squidpy2.0 Everything releated to a Squidpy 2.0 release workstream Major workstreams for the Squidpy 2.0 release labels Jan 8, 2024
@timtreis
Copy link
Member Author

Hey @LLehner, let's discuss the feature in this issue. Here there's the monkeybread package that we mentioned during the meeting: https://monkeybread.readthedocs.io/en/latest/

@LLehner
Copy link
Member

LLehner commented May 13, 2024

Neighborhood based:

  • monkeybread (clustering of neighborhood profiles)
  • CellCharter (performs dimreduction, neighborhood calculation, aggregation and clustering)
  • UTAG

VI and Bayesian methods:

  • DestVI ("Unlike other methods, DestVI learns both discrete cell-type-specific profiles and continuous sub-cell-type latent variations using a conditional deep generative model")
  • BayesSpace

OT-based:

  • SPOT (Cluster cells based on their niche similarity, not their expression similarity)

MRF-based:

GRN based:

  • NicheHotSpotter ("NicheHotSpotter calculates the probability that a signalling node participates in niche–stem cell signalling from the stationary distribution of a finite discrete time-homogenous Markov chain model")

Cell-Cell-Communiation based:
One could reason about niches by analyzing cellular interactions:

pre-trained (foundational) models:
Perhaps one could utlize pre-trained (foundational) models to predict niches.

@timtreis
Copy link
Member Author

Amazing, thank you! Could you also briefly look into the respective requirements? Ideally I'd hope that there is a small subset that we can add without adding to our dependencies (core) and the other methods will complain about their specific solvers or whatever not being installed when they're called (addon).

Then we could start with the core methods and also merge them without adding to the dependency load of the base package before things are evaluated and stable and later on cast the addon ones into the template we talked about

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
squidpy2.0 Everything releated to a Squidpy 2.0 release workstream Major workstreams for the Squidpy 2.0 release
Projects
None yet
Development

No branches or pull requests

2 participants