nsbuitrago / parasail-rs

SIMD pairwise sequence alignment
https://crates.io/crates/parasail-rs
BSD 3-Clause "New" or "Revised" License
1 stars 0 forks source link

Can this repo replace the needle in EMBOSS? #6

Closed firemax19 closed 2 months ago

firemax19 commented 3 months ago

i'm a noob in both bioinfo and rust, I am looking for a rust crate that can replace the needle function in EMBOSS

nsbuitrago commented 3 months ago

Hi. Short answer is yes. Needle should be comparable to global alignment with parasail-rs. There may be some differences depending on how certain cases (such as multiple optimal alignments) are handled, but generally they should yield results that are fairly consistent if using the same parameters. By default, aligners use the global option or you can also set it explicitly (Aligner::new().global().build()).

There are also other crates that provide global alignment such as rust-bio which you might be interested in checking out as well if you are newer to bioinformatics.

firemax19 commented 3 months ago

Hi. Short answer is yes. Needle should be comparable to global alignment with parasail-rs. There may be some differences depending on how certain cases (such as multiple optimal alignments) are handled, but generally they should yield results that are fairly consistent if using the same parameters. By default, aligners use the global option or you can also set it explicitly (Aligner::new().global().build()).

There are also other crates that provide global alignment such as rust-bio which you might be interested in checking out as well if you are newer to bioinformatics.

thx for your reply,but Rust bio cannot customize the matrix, which results in comparison results that cannot be consistent with the EMBOSS needle function. Moreover, when I compared a pair of R1R2, Rust bio took twice as long as Parasail