使用Sounio进行基因组学与生物信息学
Sounio提供了序列变换的核心算法。
序列操作
// 对单个碱基进行补码(与0b11进行异或运算)
fn complement_base(b: u8) -> u8 {
return b ^ 3
}
// 对整个序列进行补码
fn complement(seq: &[u8]) -> [u8] {
return seq.map(|b| b ^ 3)
}
// 反向补码
fn reverse_complement(seq: &[u8]) -> [u8] {
let rev = seq.reverse()
return rev.map(|b| b ^ 3)
}