使用.bam文件映射CpG坐标

时间:2015-11-11 10:17:56

标签: r bash bioconductor genetics genome

我找到了一种方法来绘制鸡基因组上的CpG位置,如下所示:

library(BSgenome.Ggallus.UCSC.galGal4)
library(Biostrings)

#Create the chromossome set

chr_all=paste("chr", c(1:28, 32, "Z", "W"), sep="")

#CpG Mapping on Genome
        CpGpos<-lapply(chr_all,function(x) { 
          RES<-matchPattern("CG",Ggallus[[x]])
          RES<-cbind(rep(x,length(RES)),RES@ranges@start)
            return(RES) 
        })

        CpGpos<-do.call("rbind",CpGpos)
        CpGstartend<-cbind(CpGpos,as.numeric(CpGpos[,2])+1)
        CpGstartend<-as.data.frame(CpGstartend,stringsAsFactors=F) 
write.table(CpGstartend, "CPGstartendWGChicken.txt", sep="\t", col.names=F, row.names=T, quote=F)

结果:

[fibio@milou2 Stacks]$ cat CPGstartendWGChicken.txt |head

    1       chr1    38      39
    2       chr1    84      85
    3       chr1    146     147

...

现在我想对我的MEDIPseq结果做同样的事情。 我已经使用了.bam格式的对齐序列(BSgenome.Ggallus.UCSC.galGal4)。

超级有趣的是每个CpG具有覆盖值的列

预期结果:

               Chr   Start    End  Depth
               chr1    38      39    10
               chr1    84      85    12
               chr1    146     147   20

我知道名为MEDiPS的Bioconductor R软件包可以做到这一点,但它使用的是Windows大小。但是,我需要每个CpG的信息。 定义2bp窗口大小时,脚本将被终止。

0 个答案:

没有答案