我有一个bam文件并使用bioperl(Bio :: DB :: Sam)来处理它。 现在我想询问是否有可能在此文件中为标记添加标签?
我用
my $iterator = $bam->features(-iterator => 1,
-flags => {M_UNMAPPED=>0});
while (my $align = $iterator->next_seq) {
...
}
循环对齐的读取。现在我正在寻找像
这样的人 $align->addTag(key=>value)
再见
答案 0 :(得分:1)
BedTools有一种注释名为TagBam的BAM文件的方法
http://biostar.stackexchange.com/questions/9552/basic-bam-file-annotation
答案 1 :(得分:0)
简短回答,不。
有可能对原始SAM执行此操作,然后将其转换回BAM。我最近一直在为BAM写一个C ++ api,并且自己也遇到过这个问题。问题是表示此信息的底层c结构都是紧密字节打包并占用特定数量的内存。有时他们可能会比他们需要的多一点,但有时候他们的数量恰到好处。在大多数情况下,添加到这些结构会超过它们的可用内存。
所以,如果我是你,我会写出一个新的SAM文件,其中包含你的附加标签,并使用samtools将其转换为BAM