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

Add CellRanger to nf-core/scrnaseq #31

Closed
ojziff opened this issue Mar 6, 2020 · 11 comments · Fixed by #90
Closed

Add CellRanger to nf-core/scrnaseq #31

ojziff opened this issue Mar 6, 2020 · 11 comments · Fixed by #90
Labels
enhancement New feature or request good first issue Good for newcomers

Comments

@ojziff
Copy link

ojziff commented Mar 6, 2020

You're probably already working on this, but would it be possible to add CellRanger to nf-core/scrnaseq to perform alignment and preprocessing? If there is interest I would be happy to create a PR to dev with cellranger count output filtered_feature_bc_matrix that is processed by seurat.

@apeltzer apeltzer added enhancement New feature or request good first issue Good for newcomers labels Mar 6, 2020
@apeltzer
Copy link
Member

apeltzer commented Mar 6, 2020

Hi @ojziff ! If I understood the kallisto + bustools authors and STARsolo, then these (sub-) workflows should already provide you with the possibility to get from raw 10x data to count matrices and at least STAR claims to have the same output IIRC.

There is certainly interest, only also some concerns that we should clarify beforehand:

Cellranger licence: Is it possible to get cellranger to bioconda / have a proper container for it? We had quite some trouble doing that with other 10x pipelines / tools, e.g. for nf-core/neutronstar @remiolsen has some more experience with this

Also maybe check whether its worth all your effort to make that work if there is licencing issues that could break things, even if its technically possible. Maybe the output from kallisto+bustools, salmon+alevin or STARsolo is already good for almost any analysis? The main readme has a link to a biorxiv preprint that even says its superior IIRC...

Some pipelines even dropped software/tools because of licencing (e.g. epitopeprediction didn't in the end implement support for netMHCpan, as the licence forbids containerization of the tool) - it just makes things much more complicated than it should be 😓

I'm not too familiar with what you in the end would want to add - if its some filtering and we can get that to work + processing seurat (there is an issue for #19 too), I guess everyone would be happy if you contribute that :-)

@anoronh4
Copy link

anoronh4 commented May 8, 2020

apparently starsolo does not do quite the same, at least with respect to cellranger 3 software. They identify the same number of drops but their cell-calling algorithm differs quite a bit. cellranger 3 uses 'a modified version of emptyDrops' (paraphrasing) so you can use the unfiltered drops from starsolo and then run emptyDrops, as per the recommendation of starsolo -- but because of 10X modifications the final cell calls are not the same, and in my experience dramatically different in some cases.

@TomKellyGenetics
Copy link
Member

TomKellyGenetics commented Jul 8, 2020

Cellranger is Licensed subject to the 10X Genomics End User License Agreement if you download the tar.gz files from their website. This can only be used for 10X Genomics data.

However, there is an open-source implementation on GitHub here subject to MIT License. I've built an open-source version 3.0.2 on docker: https://hub.docker.com/r/tomkellygenetics/cellranger_clean

Note due to Licensing and some of the code being closed-source, Loupe files are not available for this version.

I believe this has already been included in some @nf-core workflows. This one to be specific: nf-core/demultiplex#7

@TomKellyGenetics
Copy link
Member

TomKellyGenetics commented Feb 3, 2021

As discussed here we've recently released an open source tool that can run Cell Ranger on other techniques. This uses Cell Ranger 3.0.2 on an MIT License.

https://github.com/minoda-lab/universc
https://hub.docker.com/r/tomkellygenetics/universc
https://www.biorxiv.org/content/10.1101/2021.01.19.427209v1

@apeltzer
Copy link
Member

apeltzer commented Feb 3, 2021

Pinging @ggabernet and @olgabot to let them know :-)

@GHAStVHenry
Copy link

about a year and a half ago I spoke to a PM for cellranger and she said word of mouth that they didn't care about containerizing cellrangers they wanted a note associated with the container saying that it wasn't supported by 10x...

so for my scRNAseq pipelines I have all the versions containerized...

as I said this approval was word of mouth... I'm still in touch with the product manages for cellranger at 10x... would it be useful to re-confirm with them? (the PM I spoke to previously actually moved to a different group in 10x)

@apeltzer
Copy link
Member

@olgabot was so kind to already reach out to someone at 10X and we got confirmation that we can do this in a similar way that you mentioned here - so just a matter of implementation to make it happen :-)

@GHAStVHenry
Copy link

I haven't looked at the contents, but PR (#43) by @ggabernet looks like that's already taken?

@TomKellyGenetics
Copy link
Member

TomKellyGenetics commented Mar 23, 2021

Just to clarify, UniverSC depends on an open-source release of Cell Ranger 3.0.2. This is not subject to the 10x Genomics End User License Agreement and can be applied to other samples, not just 10x Genomics Data. It produces compatible output for Seurat and other tools for any technology that uses cell barcodes and UMIs.

Newer versions are not available for this purpose but I think the benefits of supporting a wider range of techniques are considerable for users. Unless the new features are needed for specifically supporting new 10x Genomics kits, I don't think using the tar.gz (a link that regularly expires) from the 10x Genomics website is the best approach. Cell Ranger can be installed in a Dockerfile from source as demonstrated here: https://github.com/TomKellyGenetics/cellranger_clean/blob/master/Dockerfile

I've submitted a PR to nf-core showing how to migrate from Cell Ranger to using UniverSC (which is already available on DockerHub).
nf-core/demultiplex#15

@grst
Copy link
Member

grst commented Dec 30, 2021

I believe this is implemented (in principle) in the DSL2 version of the pipeline (now on dev). However the cellranger subworkflow is not exposed yet via the --aligner options, so there is no way to use it yet.

@apeltzer
Copy link
Member

apeltzer commented Jun 8, 2022

Fixed in dev.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request good first issue Good for newcomers
Projects
None yet
Development

Successfully merging a pull request may close this issue.

6 participants