# What Package would you suggest to represent sequence alteration events?

**URL:** <https://discourse.julialang.org/t/what-package-would-you-suggest-to-represent-sequence-alteration-events/62423>\
**Category:** Biology, Health, and Medicine\
**Created:** [June 5, 2021, 10:56am UTC](https://discourse.julialang.org/t/what-package-would-you-suggest-to-represent-sequence-alteration-events/62423 "2021-06-05T10:56:02Z")\
**Posts on this page:** 8\
**Page:** 1

<div class="post-metadata">

**Author:** ![Marco\_Antoniotti](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/marco_antoniotti/32/18697_2.png) [@Marco\_Antoniotti](https://discourse.julialang.org/u/Marco_Antoniotti)\
**Post date:** [June 5, 2021, 10:56am UTC](https://discourse.julialang.org/t/what-package-would-you-suggest-to-represent-sequence-alteration-events/62423/1 "2021-06-05T10:56:02Z")

</div>

Hi

I am looking for a package that would allow me to represent changes to a sequence. Is there something like that around? I looked at `GenomeGraph` and `PopGen` (and `PopGenSim`) but their documentation is quite sparse to understand what is actually going on.

Any suggestions?

Thank you

Marco

---

<div class="post-metadata">

**Author:** ![EvoArt](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/evoart/32/25357_2.png) [@EvoArt](https://discourse.julialang.org/u/EvoArt)\
**Post date:** [June 5, 2021, 3:26pm UTC](https://discourse.julialang.org/t/what-package-would-you-suggest-to-represent-sequence-alteration-events/62423/2 "2021-06-05T15:26:04Z")

</div>

Maybe this is what your looking for?  
[https://biojulia.net/Bio.jl/latest/man/seq/sequences/bioseq/](https://biojulia.net/Bio.jl/latest/man/seq/sequences/bioseq/)

I haven’t done any bioinformatics in Julia yet. but I likely will in the near future, so I’d be glad to hear what packages you use in the end.

---

<div class="post-metadata">

**Author:** ![jonathanBieler](https://avatars.discourse-cdn.com/v4/letter/j/82dd89/32.png) [@jonathanBieler](https://discourse.julialang.org/u/jonathanBieler)\
**Post date:** [June 5, 2021, 5:48pm UTC](https://discourse.julialang.org/t/what-package-would-you-suggest-to-represent-sequence-alteration-events/62423/3 "2021-06-05T17:48:17Z")

</div>

It depends which types of alteration you’re speaking about, but usually mutations are represented by a genomic position, the reference sequence at that position, and the alternative sequence, plus some other metadata. The standard format for that is VCF, but if you don’t need to read/write vcf files you could use a named tuple or even a dataframe.

> **[GitHub - rasmushenningsson/VariantCallFormat.jl: Read and write VCF and BCF...](https://github.com/rasmushenningsson/VariantCallFormat.jl)**
>
> Read and write VCF and BCF files. Contribute to rasmushenningsson/VariantCallFormat.jl development by creating an account on GitHub.

---

<div class="post-metadata">

**Author:** ![kevbonham](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/kevbonham/32/216165_2.png) [@kevbonham](https://discourse.julialang.org/u/kevbonham)\
**Post date:** [June 6, 2021, 1:37am UTC](https://discourse.julialang.org/t/what-package-would-you-suggest-to-represent-sequence-alteration-events/62423/4 "2021-06-06T01:37:38Z")

</div>

> [@EvoArt](#):
>
> Maybe this is what your looking for?  
> [https://biojulia.net/Bio.jl/latest/man/seq/sequences/bioseq/](https://biojulia.net/Bio.jl/latest/man/seq/sequences/bioseq/)

Definitely not - the Bio.jl monorepo is deprecated. That module is now BioSequences.jl, but you may also want BioAlignments.jl?

---

<div class="post-metadata">

**Author:** ![EvoArt](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/evoart/32/25357_2.png) [@EvoArt](https://discourse.julialang.org/u/EvoArt)\
**Post date:** [June 6, 2021, 6:13am UTC](https://discourse.julialang.org/t/what-package-would-you-suggest-to-represent-sequence-alteration-events/62423/5 "2021-06-06T06:13:34Z")

</div>

Thanks!!

Googling Julia can be a bit of a minefield. Took me a while to figure out that I was often reading the docs of older versions of packages etc.

---

<div class="post-metadata">

**Author:** ![kevbonham](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/kevbonham/32/216165_2.png) [@kevbonham](https://discourse.julialang.org/u/kevbonham)\
**Post date:** [June 6, 2021, 4:06pm UTC](https://discourse.julialang.org/t/what-package-would-you-suggest-to-represent-sequence-alteration-events/62423/6 "2021-06-06T16:06:19Z")

</div>

Yeah, that’s a common experience 😣. There have been efforts/intentions to throw warnings on older docs versions, though I don’t know how far along they are.

---

<div class="post-metadata">

**Author:** ![Marco\_Antoniotti](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/marco_antoniotti/32/18697_2.png) [@Marco\_Antoniotti](https://discourse.julialang.org/u/Marco_Antoniotti)\
**Post date:** [June 7, 2021, 10:02am UTC](https://discourse.julialang.org/t/what-package-would-you-suggest-to-represent-sequence-alteration-events/62423/7 "2021-06-07T10:02:17Z")

</div>

Thank you. Yep. Roundtripping VCFs and BCFs will be useful, but that is not quite what I am after. I want to create a simulator for evolutionary processes.

I decided to cook up something as a learning experience.

I will kee you posted.

---

<div class="post-metadata">

**Author:** ![Marco\_Antoniotti](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/marco_antoniotti/32/18697_2.png) [@Marco\_Antoniotti](https://discourse.julialang.org/u/Marco_Antoniotti)\
**Post date:** [June 7, 2021, 10:02am UTC](https://discourse.julialang.org/t/what-package-would-you-suggest-to-represent-sequence-alteration-events/62423/8 "2021-06-07T10:02:58Z")

</div>

I did get that feeling. 😑
