A Class to Extract Genotypes from a PLINK .bed File
BEDMatrix is a class that maps a
PLINK .bed file
into memory and behaves similarly to a regular matrix by
implementing key methods such as [, dim, and dimnames.
Subsets are extracted directly and on-demand from the .bed file without
loading the entire file into memory.
Internally, this class is an S4 class with the following slots that should
not be relied upon in actual code: xptr, dims, dnames,
and path. The .bed file is mapped into memory using mmap on
Unix and MapViewOfFile on Windows.
xptr:An external pointer to the underlying C code.
dims:An integer vector specifying the number of samples and variants as
determined by the the accompanying
.fam and
.bim files
or by the n and p parameters of the BEDMatrix
constructor function.
dnames:A list describing the row names and column names of the object as
determined by the accompanying
.fam and
.bim files,
or NULL if the n and p parameters of the
BEDMatrix constructor function were provided.
path:A character string containing the path to the .bed file.
[:Extract parts of an object
dim:Retrieve the dimension of an object
dimnames:Retrieve the dimnames of an object
dimnames<-:Set the dimnames of an object
as.matrix:Turn the object into a matrix
is.matrix:Test if the object is a matrix
length:Get the length of an object
str:Display the internal structure of an object
show:Display the object
BEDMatrix to create a BEDMatrix object from a .bed
file, BEDMatrix-package to learn more about the
BEDMatrix package,
LinkedMatrix to link
several BEDMatrix objects together.
# Get the path to the example .bed file
path <- system.file("extdata", "example.bed",
                    package = "BEDMatrix")
# Create a BEDMatrix object the example .bed file
m <- BEDMatrix(path)
# Get the dimensions of the BEDMatrix object
dim(m)
# Get the row names of the BEDMatrix object
rownames(m)
# Get the column names of the BEDMatrix object
colnames(m)
# Extract genotypes for the specified sample(s)
m[1, ]
m[1:3, ]
m["per0_per0", ]
m[c("per0_per0", "per1_per1", "per2_per2"), ]
# Extract genotypes for a particular variant
m[, 1]
m[, c("snp0_A", "snp1_C", "snp2_G")]
# Extract genotypes for the specified samples and variants
m[
    c("per0_per0", "per1_per1", "per2_per2"),
    c("snp0_A", "snp1_C", "snp2_G")
]Please choose more modern alternatives, such as Google Chrome or Mozilla Firefox.