scverse / scanpy

Single-cell analysis in Python. Scales to >1M cells.
https://scanpy.readthedocs.io
BSD 3-Clause "New" or "Revised" License
1.9k stars 597 forks source link

New features #45

Closed sophietr closed 1 year ago

sophietr commented 6 years ago

hi Alex here my list :) thanks a lot! and I might expand it....

'needed'

'nice to have'

falexwolf commented 6 years ago
falexwolf commented 6 years ago
falexwolf commented 6 years ago
flying-sheep commented 6 years ago

hi, i converted the list of requests to a checkmark list.

now we can check off finished items

dpcook commented 6 years ago

Hi all!

I just wanted to jump in with @sophietr and say that implementing a cell cycle classification function like Seurat's CellCycleScoring function would be a nice addition to the preprocessing options. Would be valuable to keep an eye on in downstream exploration and could then be easily regressed out if needed.

Also, do you guys have any opinions about the inclusion of imputation/smoothing strategies? I've been messing around with including it in analysis pipelines, but still haven't really settled on when to include them. If there's interest, MAGIC seems like a great option and is currently implemented in Python.

dawe commented 6 years ago

@falexwolf where would you expect a new scoring function? Under tools (sc.tl) or preprocessing (sc.pp)? I may contribute to this cell cycle thing if you haven't already

flying-sheep commented 6 years ago

MAGIC is outperformed by both scImpute and countae, so i guess we’ll stick with one of those if we implement imputation.

falexwolf commented 6 years ago

@dawe a cell cycle scoring function would be great! everything that's a bit more extensive and non-standard should go into sc.tl, everything that's really just simple preprocessing and stats with a few lines can go to sc.pp. usually, there should be a plotting function in sc.pl that presents a canonical visualization of the annotation added in with the tool... writing a test for your function would also be great ;)

falexwolf commented 6 years ago

@dpcook @flying-sheep regarding imputation: my personal view is that nothing is settled there - I can't judge what's a good method and what not and whether one should use it at all. so for now, we wil not include any imputation method in scanpy. but it's easy to just apply any package you like to the data matrix in an AnnData object adata.X...

dawe commented 6 years ago

@falexwolf I have the functions in my scanpy branch, right now. It seems to be properly working (take a look, if you want to). I'll add the tests as soon as possibile (now getting back to "ordinary work")

hammer commented 6 years ago

@flying-sheep can you cite a reference for scImpute and countae outperforming MAGIC? I'd be curious to learn which hyperparameter optimization methods and performance measures were used in the benchmark.

flying-sheep commented 6 years ago

well, @gokceneraslan told me. Gökcen, is the preprint for countae online? It should contain what @hammer asked for, right?

gokceneraslan commented 6 years ago

Yes, it'll be out soon. It's very difficult to compare imputation/denoising methods, but we have some in the paper.

hammer commented 6 years ago

@flying-sheep @gokceneraslan great! I agree it's hard to compare these algorithms as the performance of an imputation strategy often depends on the downstream use case. I'm looking forward to checking out the countae preprint. I find the scVI benchmark of imputation methods to be useful for now.

Zethson commented 1 year ago

I'm closing this because it's a bit of a very old catch all issue. If somebody in this thread is still lacking functionality in the broader scverse ecosystem or scanpy directly, I'd encourage people to post new issues to discuss specifics.