10x vignette

Issue #47 resolved
ssnn created an issue

Create vignette/example for 10x pipeline. Add toy example data. Update current text, improve it to make it clearer for new users.

Comments (15)

  1. Kenneth Hoehn

    @Roy Jiang @Julian Zhou @Edel Aron I’ve put together a first pass for this in the 10X-Vignette branch: https://bitbucket.org/kleinstein/immcantation/src/10x-vignette/. It’s mostly build around the 10X Change-O page, but fills in some of the gaps for people not familiar with Immcantation.

    Any feedback would be greatly appreciated. You can build the site locally using sphinx-build (let me know if you need help). Alternatively you can just view the file on bitbucket, though the formatting isn’t as nice: https://bitbucket.org/kleinstein/immcantation/src/10x-vignette/docs/docker/10X_walkthrough.rst. Not ethat currently the example data is hosted on my google drive, mostly for not knowing where better to host it. Thanks!

  2. Roy Jiang

    Ken, looks fine for the most part but this also looks like you’re mostly just copying the changeo tutorial but simplifying the language. I would recommend running the changeo-10x wrapper instead for the immcantation tutorial. Then you can move onto the alakazam stuff.

    MOUNT_POINT=/location_of_10x_data
    
    docker run -v $MOUNT_POINT \ kleinstein/immcantation:devel \
    changeo-10x \
    -o /data \
    -s /data/filtered_contig.fasta \
    -a /data/filtered_contig_annotations.csv \
    -g human -t ig -x auto"
    

  3. Roy Jiang

    Something like this… (code above is not right, copy/paste)

    Getting started

    Converting 10x data to AIRR format, identifying clones

    MOUNT_POINT=/location_of_10x_data
    
    docker run -v $MOUNT_POINT:/data \ 
    kleinstein/immcantation:devel \
    changeo-10x \
    -o /data \
    -s /data/filtered_contig.fasta \
    -a /data/filtered_contig_annotations.csv \
    -g human -t ig -x auto
    

    Build lineage trees from 10x data

  4. Jason Vander Heiden

    I think we need better organization of the tutorials. I’d make a top level item, right under Getting Started, that contains Tutorials. You can maybe link to specific Tutorials from Getting Started. Not quite sure how to improve the layout, but it needs work.

    Is there a data set we can use that doesn’t fail with -x auto? Also, why does it fail? Do we need to fix the pipeline? I like the idea of having a bare bones tutorial here that links to the longer Change-O tutorial for more detailed steps.

    Shouldn’t the lineage tree example use IgPhyML? Aren’t we moving away from PHYLIP?

  5. Kenneth Hoehn

    I agree with the organization - a tutorial section at the top level would probably better organize things. We could probably find a dataset we can share right now that doesn’t fail. The current one, which is based on the data from the 10X ChangeO page, doesn’t generate a bimodal dist-to-nearest plot so it doesn’t find a threshold (attached). This is probably because there’s just one clone with more than one unique sequence. We could certainly use IgPhyML. I erred on the side of more standard approaches for the first pass on this.

  6. Jason Vander Heiden

    Ah, gotcha. Some ideas then:

    1. We could swap the example data to the newer kit, which has slightly more clonality (below) https://support.10xgenomics.com/single-cell-vdj/datasets/3.1.0/vdj_nextgem_hs_pbmc3_150x150
    2. We could check one of the example mouse data sets instead.
    3. We can add an argument to the pipeline to toggle the threshold detection algorithm and see if the “gmm” gives a result when “density” doesn’t.
    4. We can just use a “standard” threshold of 0.15 or 0.2 and add a Note section pointing to the Change-O/Shazam docs about threshold detection. I kinda learn towards this option, because it’s fairly minimal and we can add guidance to the same Note to use 0 for the threshold for TCR data.

  7. Kenneth Hoehn

    True - I could try it on the new dataset. Another option would be to change the pipeline to use SCOPer, which might perform better in this case?

    The current version basically does #4, but with a threshold of 0.1, and then details manual clustering afterwards. We could just link to the manual clustering docs pages, but I thought it would be better to use the example at hand to walk through the process.

  8. Jason Vander Heiden

    If the plan is to transition clonal clustering from DefineClones to scoper, then, yeah, we should swap the vignette to scoper. I don’t think that’ll solve the problem though, because it’s the threshold detection step that’s failing.

  9. Jason Vander Heiden

    Ah, I think we should stick with the hierarchical method for now as the default approach.

  10. Log in to comment