我有一个bam文件,有人知道如何将bam文件转换为csv文件吗?我正在尝试使用R软件打开bam文件,但是到目前为止,我不确定如何使用bam文件获取变量。
rm(list=ls())
#install bam packages
source("http://bioconductor.org/biocLite.R")
biocLite("Rsamtools",suppressUpdates=TRUE)
biocLite("RNAseqData.HNRNPC.bam.chr14",suppressUpdates=TRUE)
biocLite("GenomicAlignments",suppressUpdates=TRUE)
#load library
library(Rsamtools)
library(RNAseqData.HNRNPC.bam.chr14)
library(GenomicAlignments)
bamfile <- file.path("C:","Users","azzop","Desktop","I16-1144-01-esd_m1_CGCTCATT-AGGCGAAG_tophat2","accepted_hits.bam")
gal<-readGAlignments(bamfile)
gal
length(gal)
names(gal)
当我插入名字(gal)时,它给我NULL
不确定是正确的。
我想将bam转换为csv,以便于读取数据
答案 0 :(得分:2)
我建议将BAM转换为BED,然后将BED文件读入R。
您可以使用bedtools将BAM转换为BED。
此抽象代码应该起作用:
bamfile <- "C:/Users/azzop/Desktop/I16-1144-01-esd_m1_CGCTCATT-AGGCGAAG_tophat2/accepted_hits.bam"
# This code line sends command to convert BAM to BED (might take some time)
system(paste("bedtools bamtobed -i", bamfile, "> myBed.bed"))
library(data.table)
myData <- fread("myBed.bed")
在这里,我使用fread
包中的函数data.table
来快速读取数据。