Best way to match SOMAScan sequence IDs to gene IDs?

Hi everyone!

I have come to another unexpected finding with the SomaScan CSF data (under project 151), and I cannot find any information online for the SomaScan version used with PPMI (for PPMI we have 4,785 aptamers, whereas online I can see information mostly for versions with 7k and 11k aptamers). So, I’m bringing my problem here to see whether anyone else had the same issue and could share some thoughts :slight_smile:

Basically, some of the gene IDs/symbols I get from SomaScan’s sequence ID are different depending on whether I do the mapping based on the CSV files provided in PPMI or based on newer versions of SomaScan (for example this link is the one I’m using but I also get the same from this repository). Just to give 3 examples (there are many more!):

  1. Sequence ID 2728-62 has 3 gene IDs from PPMI’s CSVs (LAMA1; LAMB1; LAMC1), whereas online I get only 1 gene ID (TNC)
  2. Sequence ID 11089-7 has 6 gene IDs from PPMI’s CSVs (IGHA1; IGHA2; IGK; IGL; JCHAIN; PIGR), whereas online I get only 2 gene IDs (IGHA2; IGHA1)
  3. Sequence ID 2783-18 is mapped to gene CCL3L3 from PPMI’s CSVs, whereas online it’s mapped to CCL3L1

(Notice that I’m giving the gene symbol to make it easier to explain but it’s the same with the gene (Entrez) IDs)

Do you have any idea on why this might be the case, and which cases I should “choose” for example for enrichment analysis, because as you can see I can get very different results depending on where I look.

I will really appreciate any comments!

Hi Tiago! I have the same experience as you, and unfortunately SomaLogic is not as forthcoming about what these aptamers attach to as we may ideally want!

My understanding of the situation matches yours: PPMI used the older SomaScan v4.0 which covers ~5000 aptamers, and SomaLogic only provides info about the more recent versions 7K and 11K. Therefore, when using the SomaLogic tools such as SomaScan menu, we see discrepancies with the PPMI-provided CSV.

I believe (although I cannot find this 100% confirmed anywhere) that the Soma Sequence IDs are stable. That is, the Soma reagent with Sequence ID 11089-7 refers to the same reagent across all versions of SomaScan.

When a Sequence ID is associated with multiple genes, one of two things can be happening:

  • The reagent binds to a single protein complex. There are multiple genes which combine to form this protein complex, therefore all genes are listed. (This is the case with IGHA2 and IGHA1, which form immunoglobin A)
  • The reagent is non-specific, and binds to 2 (or more) different proteins. These proteins are mapped back to their respective genes, giving 2 or more genes.
  • These two things could happen in combination. (This could be the case with V4.0 mapping IGHA1; IGHA2; IGK (immunoglobin K); and PIGR (an immunoglobin receptor), as immunoglobins A and K and a receptor could all be similar enough that one reagent binds them all).

When transitioning from v4.0 to 7k, I believe (again, unconfirmed) SomaLogic gained better information about the specificity of each reagent. The increased number of probes may have clarified that a sequence which COULD have bound to the immunoglobin receptor was actually more specific than previously thought, and bound only immunoglobin A itself. As a result, the 7k version lists only the genes for immunoglobin A.

Similarly for Sequence ID 2783-18, the reagent was possibly designed to bind CCL3L3, but further testing and refinements showed that actually maps better with CCL3L1.

(This hypothesis doesn’t explain the lamanin to tenascin C change very obviously! I haven’t parsed the actual sequences to see how similar these proteins are, but it’s certainly possible that they have a region of similarity and the reagent preferentially binds TNC, when it was originally developed for lamanin.)

What to do about it in your own work is a more tricky question! If my thoughts are correct, it might be more accurate to re-map all the sequence IDs to their new mappings, and consider abundance of these new labels. But personally, I stuck with the original PPMI gene labels for each aptamer, as I couldn’t find any confirmation from SomaLogic that the sequence IDs truly are stable, and the updated mappings truly come from better understanding of binding of the original reagents.

I would love to know for sure one way or the other, if anyone else has a perspective on this!

Hi Vic, thank you so much for your help! I have to say that all this really looks like the hypothesis you are saying - that given further testing, they changed their understanding of what these aptamers bind to. I registered in SomaLogic’s portal and noticed they have some files available with updates, and the one I downloaded show changes from this year, again indicating that their knowledge changed. For now I’m keeping to the original information available in PPMI, but I’ve already contacted SomaLogic so in case I have any updates I’ll let everyone know :slight_smile:

In the meantime, just to comment that I believe the Somascan version used in PPMI was not v4.0. In their repository it is said that the 5K assay has 5,284 aptamers, whereas the file we have access to through PPMI consists of 4,785 aptamers (6 of which are Mouse). One thing I’ve also noticed in PPMI Methods file about project 151 is that an annotation file named “annotationv3.csv” is apparently provided; this file was likely renamed inside PPMI’s dashboard because the annotation file we can access has a more “formal” name, but I couldn’t stop noticing “v3” which might indicate the SomaScan assay version used. And the annotation file we have through PPMI consists of 5,193 rows, which again doesn’t match the 5,284 figure I saw in the SomaLogic’s repository.

Hopefully more people will be able to share more thoughts on this :slight_smile:

Ah, thanks for this further understanding, and good detective work!!! It could very well be v3 that PPMI used, especially since the number of v4.0 aptamers doesn’t quite match the number of PPMI probes.

If you do hear more from SomaLogic, please keep us informed. I would really like to know the answer, one way or another!

This is really great discussion. I’m interested as well and am sure there are many others working on this data. @tiago.azevedo, if you end up re-mapping the Somascan data, it would be great if you can share the sequence ID remapping and QC codes at Michael J. Fox Foundation Research Community · GitHub , may be under GitHub - MJFF-ResearchCommunity/Useful-PPMI-Clinical-Codes: Repository that stores useful PPMI Python codes · GitHub.
Thanks!

Thanks for the suggestion! What do you mean by “QC codes”? :slight_smile:

Hi @tiago.azevedo , I meant quality control - the standard quality control you would apply before analyzing data such as removing mouse probes etc. No need to worry about this part though if you are not comfortable sharing. The label-update is the main contribution here.

I’m happy to share what I get, but I believe there are no QC metrics related to Somascan data though? That’s why I was trying to understand what QC codes you were referring to in this context.

Thanks for the follow-up, and apologies for the confusion! By “QC,” I actually meant the general data preprocessing steps used to create the final analysis dataset. It’s probably more accurate to call it “data prep” rather than QC in this context.

For example, I can think of things like:

  • Removing mouse probes.
  • Checking missing data rates per probe or individual, and filtering them out based on a modifiable threshold.
  • Checking data distributions to see if they require conversion (e.g., applying log or inverse-normal transformations).
  • Removing outliers based on a modifiable threshold (e.g., mean +/- 4 SD).

But again, this is all secondary—the main contribution here is your work on updating the label. If you’re open to it, I’d love to see your prep workflow!