BSgenome (version 1.40.1)

export-methods: Export a BSgenome object as a FASTA or twoBit file

Description

export methods for BSgenome objects.

NOTE: The export generic function and most of its methods are defined and documented in the rtracklayer package. This man page only documents the 2 export methods define in the BSgenome package.

Usage

"export"(object, con, format, compress=FALSE, compression_level=NA, verbose=TRUE) "export"(object, con, format, ...)

Arguments

object
The BSgenome object to export.
con
A FastaFile or TwoBitFile object.

Alternatively con can be a single string containing the path to a FASTA or twoBit file, in which case either the file extension or the format argument needs to be "fasta", "twoBit", or "2bit". Also note that in this case, the export method that is called is either the method with signature c("ANY", "character", "missing") or the method with signature c("ANY", "character", "character"), both defined in the rtracklayer package. If object is a BSgenome object and the file extension or the format argument is "fasta", "twoBit", or "2bit", then the flow eventually reaches one of 2 methods documented here.

format
If not missing, should be "fasta", "twoBit", or "2bit" (case insensitive for "twoBit" and "2bit").
compress, compression_level
Forwarded to writeXStringSet. See ?writeXStringSet for the details.
verbose
Whether or not the function should display progress. TRUE by default.
...
Extra arguments. The method for TwoBitFile objects forwards them to bsapply.

See Also

Examples

Run this code
library(BSgenome.Celegans.UCSC.ce2)
genome <- BSgenome.Celegans.UCSC.ce2

## Export as FASTA file.
out1_file <- file.path(tempdir(), "Celegans.fasta")
export(genome, out1_file)

## Export as twoBit file.
out2_file <- file.path(tempdir(), "Celegans.2bit")
export(genome, out2_file)

## Sanity checks:
dna0 <- DNAStringSet(as.list(genome))

system.time(dna1 <- import(out1_file))
stopifnot(identical(names(dna0), names(dna1)) && all(dna0 == dna1))

system.time(dna2 <- import(out2_file))  # importing twoBit is 10-20x
                                        # faster than importing non
                                        # compressed FASTA 
stopifnot(identical(names(dna0), names(dna2)) && all(dna0 == dna2))

Run the code above in your browser using DataCamp Workspace