R: Read ABIF formatted files

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 `file.info`
`pied.de.pilote` | Safety factor: the argument `n` to `readBin` is set as `pied.de.pilote*max.bytes.in.file`.
`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 http://www.appliedbiosystems.com/support/software_community/ABIF_File_Format.pdf. 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")

[Package seqinr version 3.4-5 Index]