constantAmateur / SoupX

R package to quantify and remove cell free mRNAs from droplet based scRNA-seq data
255 stars 34 forks source link

Removing ambient oligo-tagged hashtag antibody #74

Closed soahlee closed 3 years ago

soahlee commented 3 years ago

Thank you for developing a great tool!

Thanks to your SoupX tool, I was able to remove ambient RNA and my data looks cleaner now. I'm using 10X 3' Gene Expression with Feature Barcoding Technology to obtain cell surface protein expression using oligo-tagged hashtag antibody. I was wondering whether I can apply this tool to remove ambient oligo-tagged hashtag antibody. As you may know, the cell surface protein expression profile is saved in the features.tsv.gz under feature_bc_matrix with a tag "Antibody Capture".

filtered_feature_bc_matrix ├── barcodes.tsv.gz ├── features.tsv.gz └── matrix.mtx.gz

$ gzip -cd filtered_feature_bc_matrix/features.tsv.gz ENSG00000141510 TP53 Gene Expression ENSG00000012048 BRCA1 Gene Expression ENSG00000139687 RB1 Gene Expression CD3_GCCTGACTAGATCCA CD3 Antibody Capture CD19_CGTGCAACACTCGTA CD19 Antibody Capture

Could you suggest if there is a way to adjust the code to calculate for ambient antibody expression level to ultimately clean up cell surface expression profile as well?

Thanks for your help in advance.

Best, Soah

JesseRop commented 3 years ago

Hi @soahlee Did you find a way to use SoupX to denoise the antibody oligos? Thanks

soahlee commented 3 years ago

Unfortunately no. Waiting for the response. Best, Soah

Sent from my iPhone

On Apr 9, 2021, at 8:38 AM, JesseRop @.***> wrote:



Hi @soahleehttps://github.com/soahlee Did you find a way to use SoupX to denoise the antibody oligos? Thanks

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHubhttps://github.com/constantAmateur/SoupX/issues/74#issuecomment-816770188, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AJSTABAFVG73MHBNFLRE6JDTH4NQDANCNFSM42DHIJFQ.

constantAmateur commented 3 years ago

The short answer is you could try, but I wouldn't recommend it. But here's the long version.

The algorithm expects three things:

It then assumes that the contamination in the cells looks the same as the expression in the empty droplets, where "looks the same" means the proportion contributed by each feature is similar. It also assumes that the patterns of expression of marker genes can be used to estimate how much contamination is present.

So you could just provide a table of droplets/counts that has your antibody counts on the end of it just like any other gene. SoupX would then give you an answer. But would it be correct? Only if you believe that the above assumptions hold true for antibodies (I have no idea if they do) and that the level of mRNA contamination matches the level of antibody contamination. Again I have no idea if this is true, although I would guess it's probably not.

Given this, my best guess is you'd be more likely to do harm than good by trying to use SoupX in this way. But as long as you understand the risks, you could try and see if the results make sense.