2
$\begingroup$

I'm currently pondering on the best approach to handle and standardize variant IDs within our department to mitigate the challenges associated with rsids and the potential ambiguity of just using chromosomal positions.

The GWAS glue (https://mrcieu.github.io/gwasglue2/articles/Strategy.html) packagae, state oa method where a variant ID is crafted by integrating the chromosomal position (chr), effect allele (ea), and non-effect allele (nea). It assumes the format: chr:pos_ea_nea. For alleles that exceed 10 characters, like certain indels, they apply the murmur32 hashing algorithm from the R digest package.

Given our objectives:

We likely prefer not to have excessively lengthy IDs. Yet, using hashed IDs for certain long variants might be perplexing for some who aren't informed about the approach. Hashing every ID could yield consistency, but perhaps might not be as intuitive for regular use. I'm keen on collecting insights:

Thoughts on the described method from Bristol? What might be the maximum length for an indel we could encounter? Is there a broader effort underway to address this concern? Would adopting the Bristol approach set a potential standard, or should we explore or develop alternative methods? For example should the genome build be built into the id? or species? I appreciate the community's feedback as we strive for clarity and efficiency in our variant naming conventions.

For clarity: I want to store data on variants. For example GWAS summary statistics. I want to be able to match variants from differnt studies so I want to have an identifier for the variants. I could use rs numbers I could use chr:pos I could use chr:pos:ref:alt I could use chr:pos:effect:noneffect I could use chr:pos:population:effect:noneffect or studyid:chr:pos:populatoin:effect:noneffect or etc

There are pros and cons for each of these but I would like to here what people on here think these are. I am also intrested in is there work out there to do this already. e.g. to update the idea of rsids to consider multiple alleles and effects in populations?

$\endgroup$
6
  • $\begingroup$ Please clarify your specific problem or provide additional details to highlight exactly what you need. As it's currently written, it's hard to tell exactly what you're asking. $\endgroup$
    – Community Bot
    Commented Oct 4, 2023 at 11:37
  • 1
    $\begingroup$ I have tried to clarify $\endgroup$
    – user27815
    Commented Oct 4, 2023 at 12:45
  • $\begingroup$ I would not hash. Variant IDs should be static across builds, similarly to how rsIDs are handled between b37 and b38. I do not think hashing is worth it because there's not that much downside for a long ID $\endgroup$
    – BigMistake
    Commented Oct 29, 2023 at 16:23
  • $\begingroup$ You need this to work on multiple species, right? And across different reference genome builds? Are you only interested 8n species with a sequenced genome or do you also need to handle variants defined with respect to a specific transcript or protein only, in the absence of a reference genome? $\endgroup$
    – terdon
    Commented Oct 29, 2023 at 17:08
  • $\begingroup$ Also, are you open to paid tools? The company I work for has an API that will, among other things, provide unique ids for arbitrary (human) variants. If you are open to non-free tools check out landing.varsome.com/varsome-api. $\endgroup$
    – terdon
    Commented Oct 29, 2023 at 18:18

1 Answer 1

1
$\begingroup$

Thoughts on the described method from Bristol?

I don't immediately see the benefit to this over rsIDs.

What might be the maximum length for an indel we could encounter?

Potentially very long. However, why does it matter? This will be rare.

Is there a broader effort underway to address this concern?

dbSNP comes to mind.

Would adopting the Bristol approach set a potential standard, or should we explore or develop alternative methods? For example should the genome build be built into the id? or species?

It depends on the type of analysis you're planning on doing. Are you doing cross-species analyses? And if so, what types? Do you expect to be comparing genomes with different genome builds?

For example GWAS summary statistics. I want to be able to match variants from different studies so I want to have an identifier for the variants.

Both chr:pos as well as rsID work for this, but just make sure that the genome build matches if you go with chr:pos.

I could use rs numbers I could use chr:pos I could use chr:pos:ref:alt I could use chr:pos:effect:noneffect I could use chr:pos:population:effect:noneffect or studyid:chr:pos:populatoin:effect:noneffect or etc

If you're sure your input data has rs numbers and always will, that might be easiest. However, you may find that sometimes it doesn't have rs numbers (e.g. some Affymetrix data), and it's surpassingly annoying to add them. I'd choose chr:pos, personally, and then consider the effect/non-effect/ref/alt/ on a per-analysis basis, because I would want to still identify the same position if there was a different ref/alt for example.

Edit: Based on the comment (OP wants to match effect direction), I would suggest chr:pos:effect_allele, but of course this means there is an effect allele (i.e. the position has been studied).

$\endgroup$
7
  • 1
    $\begingroup$ The vast majority of variants (remember that variants are effectively infinite since you can have any length of indel at any position) won't have rsIDs. Novel variants won't, by definition. So if the OP needs to work with arbitrary variants, rsIDs won't help. If not, rsIDs are indeed the best approach. $\endgroup$
    – terdon
    Commented Oct 29, 2023 at 17:05
  • $\begingroup$ @terdon Yes. I think chr:pos would be ideal/most simple, and OP would just have to be careful regarding builds $\endgroup$
    – BigMistake
    Commented Oct 29, 2023 at 17:12
  • $\begingroup$ Thanks for the response and your thoughts. I guess the thing is in the context of merging GWAS results for coloc and mr etc, chr:pos does not seem sufficeint. I can make sure everything in on the same build, but how do I know if an effect of a snp on say bmi in a japanese study can be matched to a study which finds an effect at the same position in a european study. I need to take into account ref/alt to effect non effect , direction.. $\endgroup$
    – user27815
    Commented Oct 30, 2023 at 9:46
  • $\begingroup$ @user27815 I see. I would try chr:pos:effect_allele in that case. Would that work? $\endgroup$
    – BigMistake
    Commented Oct 30, 2023 at 14:27
  • $\begingroup$ gnomAD uses chr-pos-ref-alt, not as an official ID but as a unique way to access web pages detailing each variant. That might be worth looking into. Example: gnomad.broadinstitute.org/variant/… $\endgroup$
    – Ram RS
    Commented Oct 30, 2023 at 14:47

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.