Skip to content

Problem about findshmTrees #1938

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

Open
PpGrApee opened this issue Apr 24, 2025 · 11 comments
Open

Problem about findshmTrees #1938

PpGrApee opened this issue Apr 24, 2025 · 11 comments

Comments

@PpGrApee
Copy link

Hello! I used the functions findAlleles, findshmTrees, and exportshmTreeswithNodes to calculate SHM for my B-cell data, but I noticed that the final readcount from exportshmTreeswithNodes is significantly smaller than before processing. Most of the read counts are missing, with only about 10% retained. Are all the clonotypes and read counts from the initial analysis used in findshmTrees, or only a subset? Thank you in advance for your help.

@mizraelson
Copy link
Member

Hi, in the output of findshmTrees you will only see the clones that were included in the trees. If a clone was not attached to any tree it will not be there.

@PpGrApee
Copy link
Author

Hi, in the output of findshmTrees you will only see the clones that were included in the trees. If a clone was not attached to any tree it will not be there.

But these missing clones also hit the corresponding segments in the results of findAlleles. Is it because their corresponding germline couldn't be determined? Around 50% of the clonotypes are missing from the trees—is this normal, or is the filtering too stringent?

@mizraelson
Copy link
Member

The clones may have the same V gene but different J genes or for example have very distant CDR3s?

@PpGrApee
Copy link
Author

The clones may have the same V gene but different J genes or for example have very distant CDR3s?

I'm sorry, but I still don't understand why some clones are missing from the final tree. These clones were successfully matched to their corresponding VDJ segments in the reassigned.clns file.

@mizraelson
Copy link
Member

Well lets say you have a unique CDR3 sequence clone that does not look similar to anything else, then its not gonna be assigned to any tree.

@PpGrApee
Copy link
Author

Thank you for your explanation, it's clear to me now. I have another question: I used BCR data from Hardy Fraction ABCDE cells (isolated from bone marrow) for findAlleles and findSHMTrees analysis, but there are still many trees with relatively high distanceFromGermline. Why could this be the case? I think my data is correct.

@mizraelson
Copy link
Member

Hi, Its hard to say without further investigation but as a brainstorm:

  1. Contamination during sorting?
  2. Recirculating Memory B Cells? The bone marrow isn't just a site of B cell development; it's also a niche for long-lived plasma cells and memory B cells. These memory B cells have previously undergone affinity maturation in germinal centers in the periphery, accumulated significant SHM, and then recirculated, with some homing back to the bone marrow.
  3. High levels of PCR/Seqeuncing errors?

@PpGrApee
Copy link
Author

Have you tested this findAlleles and findSHMTrees analysis using BCR data from naive B cells? Were the results showing very low or no distanceFromGermline?

@mizraelson
Copy link
Member

mizraelson commented Apr 29, 2025

Yes, we actually found no trees with naive B cell dataset. We used a very high sequencing quality dataset and the protocol included UMIs which is a must for precise SHM identification from our experience.

@PpGrApee
Copy link
Author

May I ask whether your naive B cells are derived from human or mouse? If they are from mouse, Is it possible to share your sorting method?

@mizraelson
Copy link
Member

We did not perform the sorting ourselves, so I don’t know the details of the method, but I believe it was human data.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants