qiime2 / q2-diversity

BSD 3-Clause "New" or "Revised" License
4 stars 45 forks source link

Support Canonical Correspondence Analyses #186

Open thermokarst opened 6 years ago

thermokarst commented 6 years ago

References This type of analysis would be an alternative to emperor-based PCoA plots, as I understand it.

thermokarst commented 6 years ago

For reference, here was a related thread from the QIIME 1 era: https://github.com/biocore/qiime/issues/1183

nbokulich commented 6 years ago

CCA provides a lot more info than PCoA, including association with explanatory variables (see here), so would be a really cool method to support. AFAIK it's commonly used in soil/ecology research, though I don't know if there are issues with compositionality.

thermokarst commented 6 years ago

This recently came up on the forum.

ElDeveloper commented 6 years ago

This would be a good thing to support! The technical aspects in emperor need some work but it wouldn't bee too hard to make it happen if we coordinate some concerted effort.

cuttlefishh commented 6 years ago

It would be great to see CCA as well as other methods from vegan. I had discussions with vegan creator Jari Oksanen about adapting vegan functions for Python last week in Oulu. Presumably this would be part of q2-diversity rather than a future q2-vegan plugin. Also see issue #123.

ElDeveloper commented 6 years ago

Slightly unrelated: I pushed a PR to Emperor with the necessary functionality to display biplots https://github.com/biocore/emperor/pull/646

cuttlefishh commented 6 years ago

Jari suggested the main dependencies of the vegan ordination methods are (with their Python implementations):

So I think the main dependencies are in place. I'm cc'ing @mortonjt so he is in the loop.

thermokarst commented 6 years ago

Thanks @cuttlefishh! Porting these functions to Python would be great, but it is worth pointing out that it isn't a strict requirement for getting them exposed in QIIME 2 as methods. We have the ability to wrap non-python functionality (for examples, check out q2-dada2, q2-phylogeny, and q2-alignment, to name a few). The only real requirement for official QIIME 2 plugins is that the dependencies are available via conda - but that is only for our official plugins - unofficial plugins are welcome to do whatever they want for dependencies.

drish91 commented 4 years ago

Just curious if this was added as a plugin to qiime diversity ?

thermokarst commented 4 years ago

No, not yet - are you interested in contributing?