Learn R Programming

rbamtools (version 2.4.0)

bamReader-class: Class "bamReader"

Description

A bamReader object encapulates functionality for reading of bamAligns from a BAM-file. It optionally contains a pointer to a bam-index structure which allows fast access to aligns that overlap a specified region (random access). The index is loaded via the load.index function.

Arguments

Objects from the Class

Objects can be created by calls of the form reader<-bamReader(filename).

References

The SAM Format Specification (v1.4-r985). The SAM Format Specification Working Group. September 7, 2011. http://www.samtools.sourceforge.net/SAM1.pdf

Examples

Run this code
library(rbamtools)
bam<- system.file("extdata", "accepted_hits.bam", package="rbamtools")
idx<- system.file("extdata", "accepted_hits.bam.bai", package="rbamtools")
# Open BAM-file for reading
reader<-bamReader(bam)
getNextAlign(reader)
rewind(reader)
getNextAlign(reader)
isOpen(reader)
# Create and load new index
idx<-"index.bam.bai"
create.index(reader,idx)
load.index(reader,idx)
index.initialized(reader)
# Load package provided index
load.index(reader,idx)
index.initialized(reader)
# Read align
align<-getNextAlign(reader)
coords<-as.integer(c(0,0,249250621))
range<-bamRange(reader,coords)
align<-getNextAlign(range)
# Copy all aligns
writer<-bamWriter(getHeader(reader),"newFile1.bam")
bamSave(reader,writer)
bamClose(writer)
# reader2<-bamReader("newFile1.bam")
# bamSort(reader,"newFile1s")
# Copy align for Reference-ID '0'
writer<-bamWriter(getHeader(reader),"newFile2.bam")
bamCopy(reader,writer,0)
bamClose(writer)
# Closing reader
bamClose(reader)

Run the code above in your browser using DataLab