Package 'illuminaio'

Title: Parsing Illumina Microarray Output Files
Description: Tools for parsing Illumina's microarray output files, including IDAT.
Authors: Keith Baggerly [aut], Henrik Bengtsson [aut], Kasper Daniel Hansen [aut, cre], Matt Ritchie [aut], Mike L. Smith [aut], Tim Triche Jr. [ctb]
Maintainer: Kasper Daniel Hansen <[email protected]>
License: GPL-2
Version: 0.43.0
Built: 2024-10-07 04:48:46 UTC
Source: https://github.com/HenrikBengtsson/illuminaio

Help Index


Low-level function to read BGX files

Description

Reads BGX files (array design information) from Illumina expression arrays.

Usage

readBGX(file)

Arguments

file

character string specifying BGX file to be read in

Details

Illumina provide probe annotation for expression arrays as either tab separated text files or as files with the extension ‘.bgx’. BGX files are in fact just gzipped versions of the text files. This function reads such files and returns a list with two entries, the first containing the target-probe information and the second containing details of the control probes.

Value

A list.

Author(s)

Mike Smith. Based loosely on code developed by Mark Dunning available in beadarray~1.16.0.


Low-level function to read IDAT files

Description

Reads intensity information for each bead type from a single IDAT file for Infinium II, Infinium HD and expression platforms.

Usage

readIDAT(file, what = c("all", "IlluminaID", "nSNPsRead"))

Arguments

file

character string specifying IDAT file to be read in.

what

This allows the return of parts of the IDAT file, see Value. This argument is only supported for non-encrypted IDAT files; setting it to be different from default on an encrypted file throws an error.

Details

This function returns a list containing summarized intensities and other information extracted from a single IDAT file.

Thanks to Keith Baggerly for providing the first version of this code.

There are two commonly encountered versions of IDAT. One version uses encryption to store data and is the format usually produced by Illumina expression arrays. The other version is unencrypted files and is found in data from SNP arrays and DNA methylation arrays.

This function is able to handle data in either format, scanning the file header and calling the appropriate reading routine internally.

The function supports reading gzipped, unencrypted IDAT files.

The use of the what argument is for package writers.

Value

The exact data returned will vary depending upon whether the input file was encrypted or not. In either case, everything that can be extract from the file will be returned in the form of a list.

For both file types the most important entry in the returned list is the item Quants. When reading unencrypted files this contains average intensity (Mean), number of beads (NBeads) and a measure of variability (SD) for each bead type on the array. For expression arrays in addition to these some additional information is available, including median and trimmed-mean estimates of average intensity, averaged local background intensities and the number of beads present before outliers where excluded.

For both file types details of scanning and decoding dates are included in the RunInfo slot.

A further list entry, Extra, may also be present. Occasionally an field in the IDAT file will have a number of data points inconsistent with the remainder of the file and as such is not returned in the Quants entry. Such fields will be placed here. So far only the HumanHap550 v1 BeadChip has exhibited this property.

In case what is set to nSNPsRead the function returns an integer equal to this field. In case what is set to IlluminaID the function returns a character vector containing the IDs.

Author(s)

Unencrypted: Keith Baggerly, with modifications by Matt Ritchie, Henrik Bengtsson and Kasper Daniel Hansen. Encrypted: Mike Smith

References

Ritchie ME, Carvalho BS, Hetrick KN, Tavar\'e S, Irizarry RA. R/Bioconductor software for Illumina's Infinium whole-genome genotyping BeadChips. Bioinformatics. 2009 Oct 1;25(19):2621-3.

Examples

if(require(IlluminaDataTestFiles)) {
  idatFile <- system.file("extdata", "idat", "4019585376_B_Red.idat",
                          package = "IlluminaDataTestFiles")
  idat <- readIDAT(idatFile)
  names(idat)
  idat$Quants[1:5,]
}