read.abif {seqinr} | R Documentation |
Read ABIF formatted files
Description
ABIF stands for Applied Biosystem Inc. Format, a binary fromat modeled after TIFF format.
Corresponding files usually have an *.ab1
or *.fsa
extension.
Usage
read.abif(filename, max.bytes.in.file = file.info(filename)$size,
pied.de.pilote = 1.2, verbose = FALSE)
Arguments
filename |
The name of the file. |
max.bytes.in.file |
The size in bytes of the file, defaulting to what is returned by |
pied.de.pilote |
Safety factor: the argument |
verbose |
logical [FALSE]. If TRUE verbose mode is on. |
Details
All data are imported into memory, there is no attempt to read items on the fly.
Value
A list with three components: Header
which is a list that contains various low-level information,
among which numelements
is the number of elements in the directory and dataoffset
the offset to find the location of the directory. Directory
is a data.frame for the directory
of the file with the number of row being the number of elements in the directory and the 7
columns describing various low-level information about the elements. Data
is a list
with the number of components equal to the number of elements in the directory.
Author(s)
J.R. Lobry
References
citation("seqinR")
Anonymous (2006) Applied Biosystem Genetic Analysis Data File Format. Available at https://www.thermofisher.com/de/de/home/brands/applied-biosystems.html. Last visited on 03-NOV-2008.
The figure in the example section is an attempt to reproduce figure 1A from:
Krawczyk, J., Goesmann, A., Nolte, R., Werber, M., Weisshaar, B. (2009) Trace2PS and FSA2PS: two software toolkits for converting trace and fsa files to PostScript format. Source Code for Biology and Medicine, 4:4.
See Also
readBin
which is used here to import the binary file and file.info
to
get the size of the file. See JLO
for the files used in quality check.
Examples
#
# Quality check:
#
data(JLO)
JLO.check <- read.abif(system.file("abif/2_FAC321_0000205983_B02_004.fsa",
package = "seqinr"))
stopifnot(identical(JLO, JLO.check))
#
# Try to reproduce figure 1A from Krawczyk et al. 2009:
#
Krawczyk <- read.abif(system.file("abif/samplefsa2ps.fsa",
package = "seqinr"))$Data
x <- 1:length(Krawczyk[["DATA.1"]])
par(mar = c(2,4,2,0)+0.1, cex = 0.5)
plot(x, Krawczyk[["DATA.1"]], type = "l", col = "blue",
ylab = "", xlab = "",
ylim = c(-2000, 10000), cex = 0.5,
main = "Figure 1A from Krawczyk et al. 2009",
xaxs = "i", yaxs = "i",
xaxt = "n", yaxt = "n")
axis(1, at = seq(2000, 24000, by = 2000))
axis(2, at = seq(-1000, 10000, by = 1000), las = 1)
lines(x, Krawczyk[["DATA.2"]], col = "green")
lines(x, Krawczyk[["DATA.3"]], col = "black")
lines(x, Krawczyk[["DATA.4"]], col = "red")